(Insecure direct object references (IDOR) - Access control) dalam bahasa indonesia Referensi objek langsung yang tidak aman adalah jenis kerentanan kontrol akses dalam keamanan digital. Ini dapat terjadi ketika aplikasi web atau antarmuka pemrograman aplikasi menggunakan pengenal untuk akses langsung ke objek dalam database internal tetapi tidak memeriksa kontrol akses atau otentikasi. sumber wikipedia
Contoh:
Misalnya, saat pengguna mengakses profilnya, aplikasi mungkin menghasilkan URL seperti ini:
https://example.org/users/123
Angka 123 di URL adalah referensi langsung ke catatan pengguna di database, sering kali diwakili oleh kunci utama. Jika penyerang mengubah nomor ini menjadi 124 dan mendapatkan akses ke informasi pengguna lain, aplikasi rentan terhadap Referensi Objek Langsung Tidak Aman. Hal ini terjadi karena aplikasi tidak memeriksa dengan benar apakah pengguna memiliki izin untuk melihat data pengguna 124 sebelum menampilkannya.
Dalam beberapa kasus, pengidentifikasi mungkin tidak ada di URL, melainkan di badan POST, seperti yang ditunjukkan dalam contoh berikut:
<form action="/update_profile" method="post">
<!-- Other fields for updating name, email, etc. -->
<input type="hidden" name="user_id" value="12345">
<button type="submit">Update Profile</button>
</form>
Dalam contoh diatas ini, aplikasi memungkinkan pengguna untuk memperbarui profil mereka dengan mengirimkan formulir dengan ID pengguna di bidang tersembunyi. Jika aplikasi tidak melakukan kontrol akses yang tepat di sisi server, penyerang dapat memanipulasi kolom "user_id" untuk mengubah profil pengguna lain tanpa izin.
Dalam banyak kasus walau sudah terdapat autentikasi untuk mengantisipasi permintaan id di url dan post perlu otentikasi namun banyak cara seorang penyerang melewati keamanan otentikasi salah satunya dengan merubah user agent sehingga dapat masuk kedalam profil korban tanpa otentikasi persetujuan dari sisi server dan id korban. Hal ini terjadi dikarena kontrol akses yang rusak.
Praktek:
dalam pengalaman saya pernah menemukan suatu private program, saya melakukan scanning dengan menggunakan internet archive dan dapat mengakses profile milik korban melalui url namun profile yang bersifat private tersebut yang membutuhkan otentikasi id dan password dapat dilewati hanya dengan merubah user agent dari perangkat desktop ke perangkat mobil, dalam bug bounty checklist ini pun terdapat pada artikel saya pada nomor 4. Business logic vulnerabilities
0 Komentar
Penulisan markup di komentar