Apa Itu Cross-Site Request Forgery (CSRF) ? - Blog Rizki M Farhan
Skip to content Skip to sidebar Skip to footer

Apa Itu Cross-Site Request Forgery (CSRF) ?

Apa Itu Cross-Site Request Forgery (CSRF) ?

Apa Itu CSRF ?

Pengertian

CSRF (Cross-Site Request Forgery) adalah serangan keamanan pada aplikasi web yang memanfaatkan kepercayaan yang diberikan oleh sistem terhadap pengguna yang sudah diautentikasi. Dalam serangan CSRF, penyerang mencoba memanipulasi aksi yang dilakukan oleh pengguna yang sudah diautentikasi di situs web yang telah dikompromi. CSRF (Cross-Site Request Forgery) merupakan suatu teknik serangan pada website yang dieksekusi di atas wewenang korban tanpa di kehendaki yang tidak seharusnya diizinkan.

Bug CSRF (Cross-Site Request Forgery) adalah kerentanan keamanan pada aplikasi web yang memungkinkan serangan di mana penyerang dapat memaksa pengguna yang sudah diautentikasi melakukan tindakan tertentu tanpa sepengetahuan atau persetujuan mereka. Dalam serangan CSRF, penyerang mencoba memanfaatkan kepercayaan yang diberikan oleh situs web kepada pengguna yang sudah diautentikasi. Penyerang mengirim permintaan palsu yang akan dieksekusi oleh server situs web tanpa pengetahuan pengguna. Hal ini dapat mengakibatkan pengguna melakukan tindakan yang tidak diinginkan, seperti mengirim dana, mengubah data, atau mengirim pesan. Berikut adalah gambaran singkat tentang bagaimana serangan CSRF biasanya terjadi :
1. Situs Web yang Tidak Terlindungi : Situs web yang tidak melindungi terhadap serangan CSRF dapat menjadi target. Ini bisa saja terjadi jika situs web tidak memvalidasi atau tidak memerlukan token keamanan untuk setiap permintaan yang dilakukan oleh pengguna yang sudah diautentikasi.

2. Manipulasi Aksi Pengguna : Penyerang mencoba membuat pengguna yang sudah diautentikasi melakukan aksi tertentu tanpa sepengetahuan mereka. Ini bisa termasuk mengirim pesan, melakukan pembayaran, mengubah kata sandi, atau melakukan tindakan lainnya yang menguntungkan penyerang.

3. Pemanfaatan Kepercayaan : Penyerang menggunakan mekanisme kepercayaan yang ada antara pengguna yang sudah diautentikasi dan situs web yang terkena serangan. Ini bisa dilakukan dengan cara menyematkan kode berbahaya (misalnya, melalui email phishing) yang membuat pengguna mengakses URL tertentu saat mereka sudah masuk ke situs web yang terkena serangan.

4. Pelaksanaan Aksi Tertentu : Jika serangan berhasil, pengguna yang sudah diautentikasi akan melakukan aksi tertentu yang dimanipulasi oleh penyerang tanpa sepengetahuannya. Hal ini dapat mengakibatkan kerugian finansial, kebocoran informasi sensitif, atau kerusakan lainnya tergantung pada sifat aksi yang dimanipulasi.

Serangan terhadap bug CSRF (Cross-Site Request Forgery) adalah serangan yang dimaksudkan untuk mengeksploitasi kerentanan CSRF pada sebuah aplikasi web. Dalam serangan ini, penyerang mencoba memanipulasi aksi yang dilakukan oleh pengguna yang sudah diautentikasi di situs web yang terkena serangan. Berikut adalah langkah-langkah umum yang terjadi dalam serangan CSRF :
1. Identifikasi Kerentanan : Penyerang mencari aplikasi web yang rentan terhadap serangan CSRF. Mereka mencari tahu jenis permintaan yang dapat dilakukan oleh pengguna yang sudah diautentikasi yang dapat dimanfaatkan.

2. Persiapan Serangan : Penyerang membuat tautan atau menyematkan kode berbahaya (misalnya, melalui email phishing) di situs web yang mereka kendalikan. Kode tersebut dapat mengirimkan permintaan HTTP palsu ke situs web yang terkena serangan saat pengguna yang sudah diautentikasi mengklik tautan atau melakukan aksi tertentu.

3. Manipulasi Permintaan : Ketika pengguna yang sudah diautentikasi melakukan aksi tertentu di situs web yang terkena serangan (misalnya, mengirim pesan, mengubah pengaturan, atau melakukan pembayaran), permintaan palsu yang telah dimanipulasi oleh penyerang juga dikirimkan ke situs web.

4. Eksekusi Permintaan Palsu : Situs web yang menerima permintaan palsu tidak membedakan antara permintaan yang sah dan palsu karena mereka memiliki kredensial pengguna yang valid. Akibatnya, aksi yang diminta oleh penyerang dapat dieksekusi tanpa sepengetahuan atau persetujuan pengguna.

Contoh serangan CSRF yang umum adalah ketika seorang pengguna yang sudah diautentikasi di situs web perbankan online mengklik tautan jebakan di situs lain yang memicu pengiriman dana dari akun mereka tanpa sepengetahuan mereka.

Untuk melindungi aplikasi web dari serangan CSRF, praktik keamanan seperti menggunakan token CSRF yang dihasilkan secara dinamis dan memvalidasi setiap permintaan yang diterima adalah sangat penting. Selain itu, edukasi pengguna tentang potensi ancaman dan tindakan pencegahan juga dapat membantu mengurangi risiko serangan CSRF.

Untuk melindungi situs web dari serangan CSRF,  langkah - langkah keamanan yang umumnya diterapkan penting untuk menerapkan praktik keamanan seperti :
  • Menggunakan token keamanan (CSRF token) yang dihasilkan secara dinamis untuk setiap permintaan yang diajukan oleh pengguna yang sudah diautentikasi.
  • Menggunakan header HTTP seperti "SameSite=Strict" atau "SameSite=Lax" untuk membatasi perilaku cookie pada permintaan lintas situs.
  • Memvalidasi setiap permintaan yang diterima dari pengguna, termasuk token keamanan dan informasi lainnya, untuk memastikan keasliannya.
Serangan ini memberikan response dengan authentication mengirimkan sebuah link atau halaman website pada user yang dieksekusi, sehingga dapat dimanfaatkan untuk menyimpan cookies atau session dan mengizinkan user (pengguna) untuk login tanpa harus mengetikkan kembali username & password.  
Rizki M Farhan
Rizki M Farhan Saya adalah seorang penulis konten artikel untuk belajar yang membahas Teknologi Layanan Pendidikan Internet.