Browser F12, Eksekusi konsol
atau
Tidak ada obat penyesalan, operasikan dengan hati-hati,Isi artikel berisi rencana perbaikan
1. Setelah eksekusi, jika bilangan bulat yang lebih besar dari 0 ditampilkan, itu berarti akun telah berhasil dihapus. 2. Akun di UCenter dihapus, dan UCenter akan memberi tahu Discuz! Hapus akun pengguna. 3. Pemberitahuan mungkin tertunda atau tidak berhasil. Akibatnya, Anda mungkin tidak segera keluar dari situs. 4. Jika pemberitahuan akhirnya berhasil, akun dan semua postingannya akan diunduh dari Diskus! dihapus. 5. Jika pemberitahuan tidak berhasil, Anda tidak akan dapat masuk setelah keluar dari akun Anda. Anda dapat mendaftarkan akun baru dengan nama yang sama untuk menimpa akun asli. Informasi akun asli akan dihapus dan postingan mereka tidak akan dapat dibaca (tetapi tidak dihapus).
Ditransfer dariLogin hyperlink terlihat.
Tes dapat dihapus, dan forum Discuz X 3.4 yang baru dibangun dan forum Discuz X 3.4 yang telah berjalan online untuk waktu yang lama telah berhasil dihapus Selama pengujian, beberapa forum berhasil dihapus, dan permintaan login gagal, tetapi saat mendaftar lagi, nama pengguna diminta untuk ada, meminta aktivasi, tetapi aktivasi gagal
Analisis Kerentanan:
Kemampuan js saya terbatas, melalui intuisi saya, kode umum berarti saya telah mengakses program dz "/home.php?mod=spacecp&ac=avatar" untuk memodifikasi file avatar,
Letakkan "https://www.itsvse.com/uc_server/images/camera.swf?inajax=1&appid=1&input=xxx"Tautan telah diganti dengan"https://www.itsvse.com/uc_server/?m=user&a=delete&inajax=1&appid=1&input=xxx"Kemudian wawancara dilakukan.
m=user&a=delete&inajax=1&appid=1&input=xxx penguraian parameter
m: File php mana yang akan dimuat, di sini berarti memuat file kontrol/user.php A: Metode fungsi adalah metode ondelete untuk mengeksekusi file php input: String terenkripsi yang dihasilkan oleh server berisi beberapa parameter, xxx adalah string terenkripsi yang berisi "uid=current logged-in user UID". Selain parameter lain, tidak masuk akal dalam artikel ini, singkatnya, URL yang secara otomatis dilompati oleh JS akan menjalankan metode user.php ondelete.
Terus terang, string enkripsi input untuk memodifikasi avatar dan menghapus API pengguna bersifat universal! Anda dapat mengeksekusi salah satu sesuka hati sesuai dengan parameter sebelumnya!
Larutan:
Ubah file 1: "/source/plugin/mobile/api/2/uploadavatar.php"
Temukan baris 82 dan masukkan kode berikut:
Dimodifikasi menjadi:
Ubah file 2: "/source/plugin/wechat/wechat.class.php"
Temukan baris 549 dan masukkan kode berikut:
Dimodifikasi menjadi:
Dokumen Amandemen 3: "/uc_client/client.php"
Temukan baris 591 dan masukkan kode berikut:
Dimodifikasi menjadi:
Ubah file 4: "/uc_server/control/user.php"
Menemukannya210、310、353Oke, masukkan kode berikut:
Dimodifikasi menjadi:
Prinsip memperbaiki kerentanan adalah mengubah parameter uid dalam input menjadi uid_avatar, sehingga memodifikasi avatar berbeda dengan menghapus string terenkripsi pengguna!
(Akhir)
|