Warum können Passwörter in WordPress als einfacher Text exportiert werden?

8

In meiner WordPress 3.9.2-Installation kann ich die Klartextkennwörter der Benutzer extrahieren, indem ich zu Benutzer gehe, alle Benutzer auswähle und Massenaktionen exportieren wähle.

Wenn ich mit phpMyAdmin in die mySQL-Datenbank schaue, werden die Passwörter gehasht.

Frage

Wie kommt es, dass alle Benutzerkennwörter im Klartext exportiert werden können und wie kann ich dies verhindern?

Aktualisieren

Wenn ich entweder einen Benutzer exportiere oder "Alle Benutzer exportieren", erhalte ich eine ähnliche Ausgabe

User ID,Username,Payment Status,First Name,Last Name,Address,Zip,City,Country,Date,Sex,Phone no.,Email,Company,Password,TOS,Website,AIM,Yahoo IM,Jabber/Google Talk,Biographical Info,Registered,IP
"31","xxx","paid","Jasmine","Lognnes","xxx","xxx","xxx","","xxx","female","","xxx","xxx","xxx","agree","","","","","","2012-01-26 18:13:19","xxx"
Jasmine Lognnes
quelle
7
Ich sehe nur eine "Löschen" -Option unter "Massenaktionen" auf der Benutzerseite (WP 3.9.2) mit allen ausgewählten Benutzern: d.pr/i/M2YO Verwenden Sie ein Plugin, um die Benutzerexportfunktionalität zu erhalten?
Nick
1
@JasmineLognnes Sie können verschiedene Möglichkeiten untersuchen: (A) Laden Sie den gesamten /wp-content/plugins/Ordner auf Ihren Computer herunter und durchsuchen Sie den pluginsOrdner mithilfe der Befehlszeile oder eines Texteditors, der die Suche nach mehreren Dateien unterstützt, nach dem Wort "Exportieren" . (B) Erstellen Sie die gesamte Site auf Ihrem lokalen Computer neu und deaktivieren Sie die Plugins, bis die Exportfunktion verschwindet.
Nick
4
Sind Sie absolut sicher, dass Sie Nur-Text-Passwörter sehen? In WordPress gab es noch nie eine solche Option. Es hat seit 2.5 phpass verwendet und md5 hasches davor.
Michael Hampton
1
@JasmineLognnes Es klingt so, als ob es sich lohnt, dieses Plugin weiter zu untersuchen. Es ist sehr schwierig, Klartext-Passwörter aus den in der Datenbank gespeicherten Hash-Passwörtern zu exportieren, aber ich nehme an, dass ein böswilliges oder schlecht durchdachtes Plugin Passwörter im Klartext speichert, während sie beim Anmelden von Benutzern eingegeben werden. Es lohnt sich, PhpMyAdmin zu verwenden, um die Datenbank auch nach einem der Klartextkennwörter zu durchsuchen - es könnte auf das Plugin verweisen, das diese Zeilen zur Datenbank hinzugefügt hat. Wenn Sie den Täter finden, vergessen Sie nicht, Ihre eigene Frage zu beantworten - es wäre interessant, mehr zu wissen.
Nick
2
Wenn Sie in Großbritannien sind und Zahlungen akzeptieren und Klartextkennwörter gespeichert oder in einem 2-Wege-Verschlüsselungsformat gespeichert haben, wie Ihre Frage andeutet, sind Sie nicht PCI-konform und Ihre Implementierung ist illegal
Tom J Nowell

Antworten:

15

Sie können Passwörter in WordPress nicht als Klartext exportieren, da sie nicht im Klartext gespeichert sind. Was Sie hier sehen, ist offensichtlich das Ergebnis eines sehr schlechten Plugins.

Felder mögen Payment, Sexoder Companysind nicht einmal Teil der regulären Wordpress Tabellen.

Für die Zukunft: Installieren Sie Plugins nicht ohne vorherige Tests und Überprüfungen in einer sicheren Umgebung. Verwenden Sie ein lokales Setup, um solche Sicherheitsprobleme zu finden. Dies ist insbesondere dann erforderlich, wenn Sie mit Daten anderer Personen arbeiten .

Was Sie jetzt tun sollten: Deaktivieren Sie alle Plugins, bis dieser Export nicht mehr möglich ist. Das letzte deaktivierte Plugin war wahrscheinlich das Problem. Suchen Sie alle von ihm erstellten Tabellen und löschen Sie diese Tabellen. Deinstallieren Sie das Plugin.

Fuxia
quelle
8

Es ist ein Fehler im wp-membersPlugin. Andere haben den gleichen Fehler gemeldet.

Jasmine Lognnes
quelle
5
Der Fehler hier ist eine schlechte Benutzeroberfläche. Es scheint, dass Sie mit wp-Members benutzerdefinierte Felder zum Registrierungsformular hinzufügen können, einschließlich des Felds "Passwort". Was den Benutzern (verständlicherweise) nicht klar ist, ist, dass diese hinzugefügten Felder nur zum Sammeln von Metadaten dienen und das "Passwort" sich nur auf den HTML-Eingabetyp bezieht und nichts mit dem WP-Passwort des Benutzers zu tun hat und auch keine Garantie dafür gibt sicher aufbewahren.
Stephen Harris
2
Toscho hat bereits die Stimmen;) aber ich denke, dieser Kommentar ist eine viel bessere Antwort ....
Mark Kaplun
Eigentlich ist das keine bessere Antwort. Es ist kein Fehler im Plugin, sondern "Benutzerfehler". Von den beiden Posts, auf die in dieser Antwort verwiesen wird, spricht der erste nicht einmal über WP-Mitglieder. Es handelt sich um ein völlig anderes und nicht verwandtes Plugin, User Meta Pro. Und wenn sich jemand die Mühe gemacht hat, den zweiten verlinkten Beitrag zu lesen, wird die Antwort darauf auf die Art und Weise zurückzuführen sein, wie der Benutzer seine benutzerdefinierten Felder konfiguriert hat, und nicht auf etwas, das dem Plugin eigen ist. Das Plugin speichert Passwörter weder als Klartext noch als Benutzer-Meta.
Butlerblog