CSRF (Cross Site Request Forgery): Pengertian dan Cara Mencegahnya

CSRF (Cross Site Request Forgery): Pengertian dan Cara Mencegahnya

Apakah kamu pernah mendengar CSRF sebelumnya? Bagi kebanyakan orang, istilah ini mungkin terdengar baru. CSRF atau Cross Site Request Forgery adalah sebuah serangan yang terjadi pada website, namun seringkali tidak disadari oleh para pengguna. Padahal, jika dibiarkan dan tidak dicegah dapat membahayakan keamanan data

Nah sebelum semua itu terjadi, ketahui apa itu CSRF, jenis, hingga cara mencegahnya pada rangkuman Dewaweb kali ini. Simak terus hingga akhir ya!

Baca Juga: 13 Jenis Cyber Crime atau Kejahatan Online Paling Berbahaya

Pengertian CSRF

CSRF (Cross Site Request Forgery) merupakan sebuah serangan eksploitasi web yang membuat pengguna tanpa sadar mengirim sebuah permintaan atau request ke website melalui website yang sedang digunakan saat itu.

Dari situ aplikasi web akan mengeksekusi request tersebut yang sebenarnya bukan keinginan dari pengguna. 

Oknum yang tidak bertanggung jawab ini biasanya menyematkan link pada sebuah gambar atau yang lain. Apabila kamu tidak sengaja mengklik, maka akan dibawa pada sebuah web yang mengandung malicious code atau kode berbahaya.

Kode ini dirancang sedemikian rupa sehingga pengguna tidak perlu lagi melakukan aksi lanjutan agar CSRF berhasil karena hanya membutuhkan satu kali klik saja. Maka dari itu, CSRF juga sering disebut one click attack.

Contoh tindakannya sendiri beragam dan yang pastinya merugikan. Contohnya seperti mengganti foto profil dengan gambar orang lain, menghapus akun pengguna, hingga mentransfer uang ke sebuah akun.

Baca Juga: Apa itu Zero Day Attack? Pengertian dan Cara Menghindarinya

Jenis Serangan CSRF

Serangan CSRF dibagi menjadi dua berdasarkan media pendistribusiannya, yaitu stored dan reflected. Berikut masing-masing penjelasannya.

Stored

Jenis Cross Site Request Forgery yang pertama adalah stored. Jenis ini menggunakan aplikasi website sebagai media untuk mendistribusikan exploit URL tersebut.  Serangan stored kemungkinan besar berhasil karena ketika di dalam situs, pengguna dalam posisi login dan tergolong authentic user.

Sehingga ketika mengirim permintaan, situs akan mengira jika itu memang request asli dari pengguna, padahal kamu hanya tidak sengaja mengklik URL-nya dan tidak tahu juga jika itu adalah sebuah exploit URL.

Jenis ini memiliki kelemahan yaitu dapat meninggalkan jejak atau riwayat yang jelas. Sehingga hal ini dapat ditelusuri lebih lanjut oleh pihak website yang sedang kamu gunakan.

Baca Juga: Apa Itu Adware? Jenis, Bahaya dan Cara Mengatasinya

Reflected

Jenis CSRF selanjutnya adalah reflected, jika pada jenis sebelumnya menggunakan media website sebagai distribusi, maka berbeda dengan jenis reflected yang menggunakan sistem di luar situs, misalnya seperti lewat email, kolom komentar pada postingan blog, message board, dan masih banyak yang lain.

Karena dilakukan di luar website, maka kemungkinan kegagalan serangan ini lebih besar. Sebab, kemungkinan besar pengguna tidak sedang dalam sistem website target saat itu. Bagi pelaku, jenis reflected dianggap lebih aman karena jejaknya dapat dihapus segera dan sulit untuk dilacak.

Cara Kerja CSRF

Setelah mengetahui dua jenis serangan CSRF, selanjutnya kenali juga seperti apa cara kerja dari Cross Site Request Forgery ini hingga bisa mengirim request tanpa pengguna minta. Berikut penjelasannya.

  1. Pertama, pengguna dan server akan mengkonfirmasi session ID dari halaman website yang sedang dikunjungi.
  2. Kemudian pelaku akan mengirimkan phising berbentuk pesan atau teks untuk meyakinkan pengguna agar mengklik exploit URL yang dicantumkan di sana.
  3. Setelah itu, pada exploit URL sebelumnya sudah diinjeksi dengan memasukan perintah sesuai tujuan penyerang. Misalnya perintah untuk mengganti kata sandi.
  4. Apabila URL diklik, kemudian password akan berubah secara otomatis dan ketika pengguna logout dari situs tersebut, maka tidak bisa login lagi. Karena sandi sudah diganti oleh pelaku.

Itulah cara kerja CSRF secara singkat, namun agar kejahatan CSRF dapat berjalan dengan mulus, maka oknum biasanya memperhatikan hal-hal berikut:

  • Aplikasi website yang ditarget harus menggunakan session cookies agar malicious request terlihat seperti authentic request atau permintaan asli.
  • CSRF bisa berhasil apabila pengguna sedang aktif pada situs yang ditarget.
  • Pelaku harus menemukan nilai parameter HTTP yang tepat agar request tidak ditolak oleh website tersebut.

Baca Juga: Web Application Firewall (WAF): Pengertian dan Manfaatnya

Cara Mencegah CSRF

Agar tidak mendapatkan serangan Cross Site Request Forgery maka perlu melakukan pencegahan, berikut ini beberapa cara mencegah CSRF yang bisa kamu terapkan.

Secret Validation Token

Cara yang pertama adalah menggunakan secret validation token. Token ini bekerja dengan cara mengirimkan informasi tambahan setiap ada pengiriman data ke server. Informasi tersebut berisi nilai acak yang sudah diatur oleh aplikasi web tersebut.

Token tersebut berfungsi untuk menentukan apakah permintaan yang masuk berasal dari pengguna yang memiliki otoritas atau bukan. Nilai ini bersifat rahasia dan sulit ditebak oleh pihak yang tidak memiliki akses pengguna.

Namun, kekurangan dari cara ini adalah tokennya akan selalu sama. Nilainya akan sama ketika proses validasi yang pertama.

Baca Juga: DDoS Attack: Pengertian, Jenis, dan Cara Mencegahnya

Random Validation Token

Pencegahan CSRF kedua adalah dengan random validation token, cara kerjanya sama dengan sebelumnya. Hanya saja seperti namanya nila pada token ini lebih bersifat dinamis.

Semua proses pengiriman data memiliki nilai token yang berbeda. Sehingga ketika pengiriman selesai dilakukan, token tersebut akan otomatis terhapus pada session.

Sehingga apabila pengguna akan mengirimkan request data lagi, maka sistem aplikasi website akan membentuk nilai token yang baru. Itulah mengapa dikatakan token yang dinamis.

Baca Juga: 5 Cara Penting Melindungi Website dari Serangan Hacker

Contoh Serangan CSRF

Serangan CSRF terlihat sangat nyata, ada beberapa contoh serangan yang terjadi selama ini, di antaranya adalah sebagai berikut.

Pertama adalah serangan CSRF pada Facebook pada tahun 2019 lalu. Setidaknya Facebook mengeluarkan dana sekitar $25.000 untuk mencegah terjadinya serangan CSRF yang dapat mengambil alih akun pengguna.

Selain Facebook, situs Paypal juga pernah ditemukan serangan CSRF yang memungkinkan pelaku mengganti foto profil pengguna tanpa izin. Hal ini ditemukan oleh seorang software engineer dan langsung melaporkan temuannya pada pihak Paypal.

Baca Juga: Kejahatan Cybersquatting: Penjelasan dan Contoh Kasusnya

Penutup

Sekarang kamu sudah lebih tahu seperti apa itu CSRF. Cross Site Request Forgery adalah jenis serangan dengan mengeksploitasi web sehingga secara tidak sadar pengguna mengirimkan request lewat exploit URL.

Dengan banyaknya serangan berbahaya ini maka sudah seharusnya kamu berhati-hati ketika mengunjungi situs. Bagi kamu pemilik website bisnis, jangan lupa tambahkan layanan cyber security dari Dewaguard sebagai upaya untuk menambah lapisan keamanan tambahan. Tetap berhati-hati dalam melakukan aktivitas di internet dan salam sukses online!