WordPress Passwort vergessen

Ich habe mich bei WordPress ausgesperrt!

Für den Fall, daß man sich aus WordPress ausgesperrt hat,
gibt es die Option, sich das Passwort per eMail zuschicken zu lassen.
Hat man aber keinen Zugriff auf die eMails,
dann bleibt nur der Weg, das Passwort in der Datenbank zurückzusetzen.

In aller Kürze:
Trage als Wert dein gewünschtes Passwort in user_pass ein,
und stelle die Funktion auf MD5 ein.
MD5 ist der aktuelle Hash-Standard bei WordPress.

Alternative:
Gehe in der SQL Datenbank auf die „wp_user“ Tabelle,
und setze unter user_pass den Wert auf
„9e73d0be3126399d3de8a134c82fd3ae“
Und schon kommst du mit dem Passwort „Testpasswort“ in dein WordPress.


Die vollständige Erklärung:
Ich erläutere das an dem Beispiel von phpMyAdmin.
Diese Open-Source Software ist das gängige Tool bei den meisten Providern.
Und kann intern von dem Administrationsbereich aufgerufen werden.

Gehe zunächst innerhalb von phpMyAdmin auf die Tabelle „wp_users“.
Beachte!
Das Präfix „wp_“ wird bei der Installation beliebig festgelegt,
um mehrere WordPress-Installationen auf einer Datenbank zu ermöglichen.
Es kann also passieren, daß man auf die Tabelle „cafe_claire_users“ stößt.

Suche anschließend den Nutzer……den User auf…… bei dem du das Passwort zurücksetzen willst.
Klicke dazu auf „Bearbeiten“.
Du erhälst nun eine Übersicht über die Spalten der Tabelle.
Also eine Übersicht über alle relevanten Daten des Nutzers.

Trage in der Spalte „user_pass“ dein Passwort ein.
Und stelle die Funktion auf MD5.
Das ist eine Hash-Funktion, die aus dem Passwort einen ein Hash-String erzeugt.

Das wars schon.

Was passiert, wenn sich jemand mit dem Passwort einloggt?
Beim jedem Einloggvorgang wird die Eingabe durch den MD5 Algorithmus „gejagt“,
also ein Hash erzeugt.
Wenn dieser Hash mit dem abgespeicherten Hash in der Datenbank übereinstimmt,
ist der Einloggvorgang erfolgreich.

<?php

$passwort="Testpasswort";

echo "Passwort: $passwort<br><br> Der dazugehörige MD5-Hash lautet: ".md5($passwort)."<br>";

print_r(hash_algos());

?>

Der PHP Code zeigt den passenden Hash zum Testpasswort an,
und gibt eine Übersicht der aktuell installierten Hash-Algorithmen an.

Passwort: Testpasswort
Der dazugehörige MD5-Hash lautet: 9e73d0be3126399d3de8a134c82fd3ae
Array
(
    [0] => md2
    [1] => md4
    [2] => md5
    [3] => sha1
    [4] => sha224
    [5] => sha256
    [6] => sha384
    [7] => sha512/224
    [8] => sha512/256
    [9] => sha512
    [10] => sha3-224
 ......................................
    [57] => haval192,5
    [58] => haval224,5
    [59] => haval256,5
)

Wozu der Hash?

Es kommt immer wieder vor,
daß böswillige Hacker mitunter tausende Pofile aus Datenbanken stehlen.
Das ist ein Desaster, und muß von den Datenbankbetreibern unbedingt verhindert werden.
Wenn es aber dennoch passiert ist, sorgt der Hash dafür, daß die Passwörter unsichtbar bleiben.
D.h. Die Hacker können sich nicht einloggen.

100% sicher gibt es nicht.
Mit enormen Rechenaufwand läßt sich theoretisch aus jedem Hash ein dazu passendes
Passwort rekonstruieren.
(Hinweis: Ein Hash muß nicht eindeutig sein, es ist möglich,
daß viele Ausgangswerte den gleichen Hash erzeugen.)

Der Hash kann noch so sicher sein,
am Ende gibt es immer nur relative Sicherheit.
Denn wer Zugriff auf den Hash-String hat, hat logischerweise auch Zugriff auf die Datenbank.
Und wer Zugriff auf die Datenbank hat, kann ziemlich viel Schaden anrichten.



Veröffentlicht am 15.12.2022.
© 2022 Matthias Heller