Mengapa kata sandi dapat diekspor sebagai teks biasa di WordPress?

8

Pada instalasi WordPress 3.9.2 saya dapatkah saya mengekstrak kata sandi teks biasa pengguna dengan membuka Pengguna, memilih semua pengguna, dan memilih Ekspor Tindakan Massal.

Ketika saya melihat di database mySQL dengan phpMyAdmin, kata sandi di-hash.

Pertanyaan

Kenapa semua kata sandi pengguna dapat diekspor dalam teks biasa, dan bagaimana saya bisa mencegahnya?

Memperbarui

Ketika saya mengekspor satu pengguna atau "Ekspor Semua Pengguna" saya mendapatkan hasil yang mirip dengan ini

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
sumber
7
Saya hanya melihat opsi "Hapus" di bawah "Tindakan Massal" di halaman Pengguna (WP 3.9.2) dengan semua pengguna yang dipilih: d.pr/i/M2YO Apakah Anda menggunakan plugin untuk mendapatkan fungsionalitas ekspor pengguna?
Nick
1
@JasmineLognnes Beberapa cara Anda dapat menyelidiki: (A) Unduh seluruh /wp-content/plugins/folder ke mesin Anda, lalu cari pluginsfolder tersebut untuk kata, “Ekspor” menggunakan baris perintah atau editor teks yang mendukung pencarian multi-file . (B) Buat kembali seluruh situs di mesin lokal Anda, lalu matikan plugin sampai fitur Ekspor menghilang.
Nick
4
Apakah Anda benar - benar yakin melihat kata sandi teks biasa? Tidak pernah ada opsi seperti itu di WordPress. Ini telah menggunakan phpass sejak 2.5, dan hash MD5 sebelum itu.
Michael Hampton
1
@JasmineLognnes Kedengarannya plugin itu layak diselidiki lebih lanjut. Sangat sulit untuk mengekspor kata sandi plaintext dari hash yang disimpan dalam database, tapi saya kira itu mungkin bahwa plugin jahat atau kurang dipikirkan menyimpan kata sandi dalam teks biasa saat diketikkan ketika pengguna masuk? Sebaiknya gunakan PhpMyAdmin untuk mencari basis data untuk salah satu kata sandi plaintext juga - mungkin menunjuk ke plugin yang menambahkan baris-baris itu ke dalam basis data. Jika Anda menemukan pelakunya, jangan lupa untuk menjawab pertanyaan Anda sendiri - akan menarik untuk tahu lebih banyak.
Nick
2
Jika Anda berada di Inggris, dan menerima pembayaran, serta menyimpan kata sandi plaintext atau dalam format enkripsi 2 arah, seperti yang disarankan pertanyaan Anda, maka Anda tidak akan memenuhi PCI, dan implementasi Anda akan ilegal
Tom J Nowell

Jawaban:

15

Anda tidak dapat mengekspor kata sandi sebagai plaintext di WordPress, karena tidak disimpan dalam plaintext. Apa yang Anda lihat di sini jelas merupakan hasil dari plugin yang sangat buruk.

Bidang suka Payment, Sexatau Companybahkan bukan bagian dari tabel WordPress biasa.

Untuk masa depan: Jangan pasang plugin tanpa tes dan ulasan sebelumnya di lingkungan yang aman. Gunakan pengaturan lokal untuk menemukan masalah keamanan seperti itu. Terutama ketika Anda berurusan dengan data orang lain, ini merupakan persyaratan .

Apa yang harus Anda lakukan sekarang: Nonaktifkan semua plugin hingga ekspor ini tidak dimungkinkan lagi. Plugin yang dinonaktifkan terakhir mungkin masalahnya. Temukan semua tabel yang telah dibuat, hapus tabel itu. Copot pemasangan plugin itu.

fuxia
sumber
8

Ini adalah bug dalam wp-membersplugin. Yang lain melaporkan kesalahan yang sama.

Jasmine Lognnes
sumber
5
Bug di sini adalah UI yang buruk. Tampaknya anggota-wp memungkinkan Anda menambahkan bidang khusus ke formulir pendaftaran, termasuk bidang "kata sandi". Apa yang tidak (jelas) jelas bagi pengguna adalah bahwa bidang yang ditambahkan ini hanya untuk mengumpulkan data meta, dan "kata sandi" merujuk pada jenis input HTML saja dan tidak ada hubungannya dengan kata sandi WP pengguna, juga tidak disertai dengan jaminan menyimpannya dengan aman.
Stephen Harris
2
Toscho sudah memiliki suara;) tapi saya pikir komentar ini adalah jawaban yang jauh lebih baik ....
Mark Kaplun
Sebenarnya, ini bukan jawaban yang lebih baik. Ini bukan bug di plugin, melainkan "kesalahan pengguna." Dari dua posting yang terhubung ke dalam jawaban ini, yang pertama bahkan tidak berbicara tentang WP-Anggota. Ini berbicara tentang plugin yang sepenuhnya berbeda dan tidak terkait, meta pro pengguna. Dan jika ada yang mau membaca posting kedua yang ditautkan, Anda akan melihat jawabannya karena cara pengguna mengonfigurasi bidang khusus mereka dan bukan sesuatu yang inheren dalam plugin. Plugin tidak menyimpan kata sandi sebagai teks biasa, atau sebagai meta pengguna.
butlerblog