1. Pengenalan CSRF
Cross-Site Request Forgery (CSRF) — juga dikenal sebagai Session Riding atau One-Click Attack — adalah jenis serangan keamanan web di mana penyerang memaksa browser korban yang sudah terotentikasi untuk mengirim request HTTP yang tidak diinginkan ke aplikasi web target. Request ini akan dieksekusi dengan hak akses dan session korban, sehingga penyerang dapat melakukan tindakan seolah-olah mereka adalah korban.
CSRF menempati posisi penting dalam daftar OWASP Top 10 dan telah menjadi ancaman serius sejak awal 2000-an. Meskipun banyak framework modern sudah menyertakan perlindungan bawaan, implementasi yang salah atau tidak lengkap masih sering ditemukan di aplikasi web produksi.
Mengapa CSRF Berbahaya?
| Aspek | Penjelasan |
|---|---|
| Eksploitasi Session | Penyerang memanfaatkan session korban yang sudah login, bukan mencuri credential |
| Transfer Dana | Memaksa transfer uang dari rekening korban di situs banking |
| Ubah Email/Password | Merubah email atau password akun korban sehingga penyerang bisa mengambil alih |
| Posting Konten | Menulis postingan, komentar, atau review atas nama korban |
| Install Malware | Memaksa korban menginstal malware melalui exploit di router atau IoT device |
| Privilege Escalation | Menaikkan hak akses akun penyerang jika korban adalah admin |
Prasyarat Agar CSRF Bisa Dieksploitasi
- Korban sudah terotentikasi — memiliki session aktif di situs target
- Situs menggunakan cookie untuk autentikasi — browser mengirim cookie otomatis
- Tidak ada validasi asal request — server tidak memeriksa dari mana request berasal
- Ada aksi yang bisa dieksploitasi — perubahan data, transfer uang, ubah setting
2. Cara Kerja Serangan CSRF
Serangan CSRF biasanya dimulai dengan penyerang membuat halaman web berbahaya yang berisi request tersembunyi ke situs target. Ketika korban mengunjungi halaman tersebut, browser korban secara otomatis mengirim request beserta semua cookie yang relevan ke situs target.