Hari ini saya akan menjelaskan secara rinci saya telah menemukan selama penelitian saya di PayPal, kerentanan ini memungkinkan saya untuk benar-benar memotong Sistem Pencegahan CSRF yang dilaksanakan oleh PayPal, kerentanan ini ditambal sangat cepat dan PayPal membayar saya karunia maksimum mereka memberikan.
1- Reusable CSRF Token:
CSRF token "yang mengotentikasi setiap permintaan tunggal yang dibuat oleh si pengguna" yang dapat juga ditemukan dalam permintaan tubuh setiap permintaan dengan nama parameter "Tupoksi" dapat berubah dengan setiap permintaan yang dibuat oleh pengguna untuk langkah-langkah keamanan, tapi setelah penyelidikan yang mendalam saya menemukan bahwa CSRF Tupoksi adalah Reusable untuk alamat email pengguna atau pengguna tertentu, ini berarti kalau si penyerang menemukan salah CSRF Tokens ini, Ia kemudian dapat membuat tindakan dalam nama setiap login user.
Hmm, sepertinya menarik tetapi masih belum dieksploitasi, karena tidak ada cara bagi penyerang untuk mendapatkan "Tupoksi" nilai dari sesi korban.
2- Melewati CSRF Tupoksi Sistem:
The CSRF Tupoksi memverifikasi setiap permintaan tunggal pengguna itu, Jadi Jika penyerang "tidak masuk" mencoba untuk membuat "mengirim uang" permintaan maka PayPal akan meminta penyerang untuk memasukkan email dan password, penyerang akan memberikan "Korban Kirimkan email "dan password Apa Saja, Lalu ia akan menangkap permintaan, permintaan tersebut akan berisi Hari CSRF Tupoksi Token yang Reusable dan dapat mengotorisasi ini permintaan spesifik pengguna. Setelah penyelidikan lebih lanjut, Kami telah menemukan bahwa Penyerang dapat memperoleh CSRF Tupoksi yang dapat berlaku untuk semua pengguna, dengan mencegat permintaan POST dari halaman yang memberikan Tupoksi Token sebelum proses Logging-in, memeriksa halaman ini untuk magis CSRF Tupoksi
"https://www.paypal.com/eg/cgi-bin/webscr?cmd=_send-money".
Pada titik ini penyerang bisa CSRF "hampir" setiap permintaan atas nama pengguna ini.
Melalui pemeriksaan dari proses perubahan password, saya telah menemukan bahwa penyerang tidak dapat mengubah password korban tanpa menjawab Pertanyaan Keamanan yang ditetapkan oleh pengguna, juga pengguna sendiri tidak dapat mengubah pertanyaan keamanan tanpa memasukkan password!
3- melewati Pertanyaan Keamanan Ubah:
Setelah penyelidikan lebih lanjut, saya telah memperhatikan bahwa permintaan menyiapkan pertanyaan keamanan "yang diprakarsai oleh pengguna saat mendaftar" tidak dilindungi sandi, dan dapat digunakan kembali untuk me-reset pertanyaan keamanan tanpa memberikan password, maka , Berbekal CSRF Tupoksi, penyerang dapat CSRF proses ini juga dan mengubah pertanyaan keamanan korban.
Pada titik ini, Seorang penyerang bisa melakukan serangan CSRF ditargetkan terhadap pengguna PayPal dan mengambil kontrol penuh atas account mereka. Oleh karena itu, Seorang penyerang dapat CSRF semua permintaan termasuk namun tidak terbatas pada:
1- Add / Remove / Konfirmasi Alamat Email
2-Add pengguna sepenuhnya hak istimewa untuk akun bisnispertanyaan
3- Perubahan Keamanan
4- Ubah Penagihan / Alamat PengirimanMetode
5- Perubahan Pembayaran
6- Ubah user (Pemberitahuan / pengaturan Mobile) ............ dan banyak lagi.
Untuk mengotomatisasi seluruh proses, saya telah dikodekan server interaktif Python untuk menunjukkan bagaimana penyerang bisa mengeksploitasi celah ini dalam skenario serangan kehidupan nyata.
Sekian Dan Terima Kasih Semoga artikel ini bermanfaat untuk pengunjung sekalian