IDOR - Rian010/Journal GitHub Wiki
Insecure Direct Object Reference (IDOR)) adalah kerentanan keamanan yang umum terjadi pada aplikasi web. Kerentanan ini terjadi ketika aplikasi tersebut tidak melakukan validasi dengan benar terhadap input yang diberikan oleh pengguna. Hal ini memungkinkan penyerang untuk memanipulasi data yang dikirimkan ke aplikasi, sehingga bisa mengakses informasi atau akun pengguna lain yang seharusnya tidak bisa mereka akses.
Berikut adalah beberapa contoh skenario bagaimana IDOR bisa terjadi:
- URL yang bisa diprediksi: Misalkan sebuah aplikasi web menampilkan profil pengguna dengan URL
https://www.example.com/profile/123
, di mana angka 123 adalah ID pengguna tersebut. Jika aplikasi tidak melakukan validasi terhadap ID pengguna yang dimasukkan ke dalam URL, maka penyerang bisa saja mengganti angka 123 dengan ID pengguna lain, sehingga bisa melihat profil pengguna tersebut tanpa izin. - Parameter formulir yang tidak divalidasi: Misalkan sebuah forum online memungkinkan pengguna untuk menghapus pesan mereka sendiri. Jika aplikasi hanya bergantung pada ID pesan yang dikirimkan melalui formulir untuk melakukan penghapusan, maka penyerang bisa saja mengubah ID pesan tersebut untuk menghapus pesan pengguna lain.
Akibat dari kerentanan IDOR bisa sangat serius, di antaranya:
- Penyerang bisa mengakses informasi sensitif pengguna lain, seperti data keuangan, data pribadi, atau pesan pribadi.
- Penyerang bisa melakukan modifikasi data pengguna lain, misalnya mengubah kata sandi atau menghapus data penting.
- Penyerang bisa mengambil alih akun pengguna lain.
Untuk mencegah terjadinya IDOR, developer perlu menerapkan beberapa langkah keamanan, seperti:
- Selalu melakukan validasi dan sanitasi terhadap input pengguna sebelum memprosesnya.
- Menggunakan mekanisme kontrol akses yang tepat untuk memastikan bahwa pengguna hanya bisa mengakses data yang mereka diizinkan untuk melihat.
- Menghindari penggunaan predictable resource identifiers.
Dengan menerapkan langkah-langkah keamanan tersebut, developer dapat membantu mencegah serangan IDOR dan melindungi data penggunanya.