Pasti kita pernah mendengar istilah Serangan CSRF atau mungkin Anda tidak pernah mendengar dan baru mengetahuinya? Nah tenang disini kami akan memberikan pembahasannya kepada Anda. Dalam konteks pada keamanan websiteitu sangatlah penting sebagai perlindungan utama. Namun, sebelumnya apakah Anda ini mengetahuinya atau tidak kenapa hal ini sangat perlu diperhatikan dan diwaspadai? Sebenarnya kepanjangan CSRF ini adalah “Cross-Site Request Forgery” atau biasa di sebut dengan singkatan CSRF. CSRF merupakan salah satu jenis serangan keamanan web yang berpotensi merusak keamanan pada system website Anda.

Nah, pada kesempatan ini kami ingin mengajak Anda untuk memahami proses terjadinya serangan CSRF, pengertiannya, serta jenis dan bagaimana cara Anda mencegahnya. Yuk, mari kita mulai dengan pemahaman yang lebih mendalam tentang serangan ini serta langkah-langkah untuk mencegahnya.

Serangan CSRF

Apa Itu Serangan CSRF?

CSRF merupakan kepanjangan dari Cross-Site Request Forgery, yang dimana dalam Bahasa Indonesia ini bisa diterjemahkan sebagai “Pengintaian Permintaan Lintas Situs”. Hal ini adalah sebuah jenis serangan yang berdampak pada keamanan web yang bertujuan untuk melakukan memanipulasi pada tindakan yang di ambil oleh sebuah pengguna yang dimana sudah terautentikasi pada suatu situs web tanpa sepengetahuan pengguna.

Pada serangan ini memanfaatkan bahwa pengguna sudah terotentikasi dalam sesi aktif pada situs web tertentu, serta demikian situs web memiliki kepercayaan terhadap sebuah permintaan bahwa permintaan yang dating dari sebuah pengguna itu bersumber dari pengguna dan dianggap sah.

Misalnya, kamu berperan sebagai pengguna yang sudah memiliki akses masuk ke email anda, lalu dari sisi sampingnya Anda juga membuka tab lain & masuk ke suatu situs web, misalnya situs jejaring sosial.  Pada situs jejaring sosial ini keamanan atau celah dimana CSRF ini sering terjadi dan mudah di susupi.

Posisi ini dimana ketika Anda membuka sebuah halaman tersebut, maka terdapat sebuah skrip jahat yang dimana script ini bergerak secara otomatis melakukan permintaan ke sebuah akun email Anda tanpa sepengetahuan Anda. Pada permintaan ini bisa berupa melakukan pengiriman email atau melakukan perubahan kata sandi. Jika ingin terautentikasi pada akun email Anda, maka permintaan tersebut akan dianggap sah oleh validasi akun email Anda, serta pada tindakan tersebut akan bergerak dibalik layar tanpa perlu izin dari Anda sendiri.

Kesalahan ini pada umumnya terjadi pada suatu situs website yang rentan serta tidak perlu adanya sebuah verifikasi yang memadai dimana harus memastikan bahwa permintaan tersebut ini benar-benar bersumber dari pengguna yang sebenarnya atau tidak.

Kenapa Serangan CSRF Perlu Diperhatikan?

Sebenarnya hal ini sangat penting sekali untuk Anda pahami agar kita bisa mengetahuinya dan mencegahnya untuk menghindari adanya serangan CSRF ini. Berikut adalah beberapa poin yang mungkin perlu Anda perhatikan sebagai bahan pertimbangan untuk lebih hati-hati dalam mengamankan akreditas jejaring akun sosial Anda.

  1. Identifikasi Pengguna Terkonfirmasi : Penyerangan ini memanfaatkan keadaan di mana pengguna telah melakukan proses autentikasi, sehingga situs web percaya bahwa permintaan berasal dari sumber yang sah.
  2. Potensi Dampak yang Signifikan : Konsekuensi dari serangan ini dapat berdampak besar, seperti mengubah sandi, mengirim surel palsu, atau menghapus informasi penting pengguna.
  3. Potensi Penyebaran yang Luas : Serangan ini memiliki kemampuan untuk menyebar dengan cepat karena kemampuannya untuk menyamar dengan baik, menyebabkan pengguna dan pemilik situs web terkecoh. Jika berhasil, efek negatifnya dapat menyebar secara luas tanpa diketahui oleh pengguna.
  4. Teknik Penyamaran : Serangan ini dapat disembunyikan dengan berbagai cara, contohnya dengan menyisipkan kode berbahaya dalam gambar atau tautan.
  5. Rentan terhadap Skema Penyusupan Jahat : Serangan ini dapat dilakukan oleh pihak yang tidak bertanggung jawab dengan menggunakan skrip yang dirancang secara khusus, sehingga mempersulit deteksinya.

Serangan CSRF

Apa Saja Jenis – Jenis CSRF?

Serangan CSRF memiliki beberapa variasi yang dapat memengaruhi situs web dan pengguna dengan cara yang berbeda. Berikut ini adalah beberapa jenis CSRF yang umum:

  1. Serangan Sederhana: Jenis serangan yang paling sederhana. Penyerang menggunakan tautan atau gambar tersembunyi untuk mengarahkan pengguna yang terinfeksi ke situs web target. Saat pengguna mengunjungi situs target, permintaan palsu secara otomatis dikirimkan tanpa sepengetahuan mereka.
  2. Serangan Dalam Gambar: Penyerang menyisipkan kode CSRF dalam gambar yang ada di situs web. Ketika pengguna melihat atau mengklik gambar tersebut, permintaan palsu dikirimkan ke situs target. Ini memungkinkan penyerang untuk mengambil tindakan tanpa izin pengguna.
  3. Serangan Melalui Formulir: Penyerang membuat formulir palsu yang meniru formulir yang ada di situs target. Formulir palsu ini dapat berisi permintaan yang tidak diinginkan atau jahat. Ketika pengguna yang terinfeksi mengisi formulir tersebut, data yang dimasukkan akan diirimkan ke situs target, menyebabkan tindakan yang tidak sah.
  4. Serangan Melalui Iframe Tersembunyi: Penyerang menyisipkan elemen iframe tersembunyi di halaman web yang mereka kendalikan. Ketika pengguna mengunjungi halaman tersebut, permintaan tersembunyi dikirimkan ke situs target tanpa sepengetahuan mereka.
  5. Serangan Melalui JavaScript: Serangan ini menggunakan JavaScript untuk memicu permintaan palsu. Penyerang menyisipkan kode JavaScript di halaman web yang memicu permintaan tanpa sepengetahuan pengguna.
  6. Serangan API: Dengan semakin banyaknya penggunaan API (Antarmuka Pemrograman Aplikasi) dalam aplikasi web, serangan ini juga dapat mengarah pada masalah di tingkat API. Penyerang mencoba mengeksploitasi API dengan mengirimkan permintaan palsu yang tidak sah.

Serangan CSRF

Bagaimana Cara Kerja CSRF Menyerang Sistem Keamanan?

CSRF (Cross-Site Request Forgery) adalah serangan yang memanfaatkan kepercayaan situs web pada pengguna yang sudah terotentikasi. Untuk memahami lebih dalam cara kerja CSRF, mari kita jelaskan langkah-langkahnya:

  1. Pengguna Terotentikasi: Dalam serangan ini, pengguna yang terinfeksi atau terdistraksi sedang memiliki sesi aktif di suatu situs web. Mereka telah login dan memiliki sesi yang masih berjalan di situs tersebut.
  2. Penyerangan yang Tersembunyi: Penyerang mempersiapkan serangan dengan menyusun permintaan palsu yang ingin dilakukan pada situs target. Ini bisa berupa mengubah kata sandi, mengirim pesan, atau bahkan menghapus akun pengguna.
  3. Penyusupan Kode Jahat: Kode jahat sering kali disisipkan dalam gambar, tautan, atau halaman web yang dikendalikan oleh penyerang. Penyerang dapat mengirimkan tautan atau menggoda pengguna untuk mengunjungi halaman tersebut.
  4. Klik atau Pengunjung Halaman Jahat: Pengguna yang terotentikasi, tanpa curiga, mengklik tautan atau mengunjungi halaman web yang mengandung kode jahat. Kode jahat ini dapat menyertakan permintaan palsu, yang akan dikirimkan ke situs target.
  5. Permintaan ke Situs Target: Situs target, yang telah mengidentifikasi pengguna sebagai pengguna yang sah, menerima permintaan palsu tanpa curiga. Dalam pandangan situs web, permintaan tersebut tampak seperti permintaan yang sah dan dilakukan oleh pengguna yang aktif.
  6. Eksekusi Tindakan Tidak Sah: Setelah menerima permintaan palsu, situs target akan melaksanakan tindakan sesuai dengan permintaan tersebut, tanpa sepengetahuan atau izin dari pengguna yang terinfeksi.

Contohnya, jika penyerang menggunakan CSRF untuk mengubah kata sandi pengguna di situs target, pengguna yang terinfeksi akan menemukan bahwa kata sandi mereka telah diubah tanpa seizin mereka.

Penting untuk dicatat bahwa serangan ini bergantung pada kepercayaan situs web terhadap sesi pengguna yang sudah terotentikasi. Dalam banyak kasus, situs web tidak memiliki mekanisme yang memadai untuk memastikan bahwa permintaan yang masuk benar-benar berasal dari pengguna yang sah.

Serangan CSRF

Bagaimana Cara Mencegah Terhadap Serangan CSRF?

Nah, untuk menghindari serangan CSRF diperlukan mengambil sebuah langkah untuk melindungi situs web dari serangan Cross-Site Request Forgery. Berikut adalah cara untuk mencegah serangan dari CSRF :

  1. Validasi Token Anti-CSRF : Gunakan token anti-CSRF (Cross-Site Request Forgery) unik untuk setiap permintaan yang memerlukan otentikasi. Token ini harus disertakan dalam sebuah permintaan HTTP serta adanya validasi oleh server untuk memastikan bahwa permintaan tersebut memang benar adanya bersumber dari pengguna yang sah. Pada kode token ini harus bersifat acak serta tidak bisa diprediksi oleh pihak penyerang.
  2. Verifiaksi Referer Header : Melakukan pengecekan HTTP “Referer” atau “Origin” untuk memastikan bahwa permintaan berasal dari sebuah situs yang sah. Namun, hal itu juga perlu di ingatkan agar permintaan tersebut berasal dari sebuah situs yang sah. Namun, perlu di ingat bahwa ini bukan metode yang sangat kuat dikarenakan dapat dimanipulasi oleh pihak penyerang.
  3. Validasikan Setiap Permintaan : Validasi setiap permintaan yang datang terhadap sebuah server untuk memastikan keabsahan serta otorisasi. Pastikan bahwa jika pengguna memiliki izin untuk melakukan tindakan yang diminta dalam sebuah request atau permintaan.
  4. Implementasikan SameSite Cookies : Setel atribut SameSite pada sebuah cookie otentikasi agar dapat membatasi akses cokie pada situs lainnya. Dengan ini mampu membantu melindungi cookie otentikasi dari serangan ini.
  5. Logout Yang Aman : Anda perlu memastikan bahwa proses logout dari akun pengguna tidak dapat dimanipulasi oleh sebuah serangan CSRF ini. Dengan melakukan logout yang harus memerlukan konfirmasi atau sebuah tindakan yang kuat dari pengguna.
  6. Penggunan Metode HTTP : Pada metode HTTP yang aman biasanya memiliki ciri seperti POST dibandingkan GET untuk tindakan yang memerlukan sebuah perubahan pada sisi server. Serangan ini umumnya lebih mudah dilakukan melalui metode GET karena permintaan GET bisa disisipkan dalam tautan.
  7. Melakukan Pemutusan Sesi : Implementasikan pemutusan sesi otomatis setelah periode inaktivitas yang ditentukan. Hal ini pada umumnya akan membantu melindungi akun pengguna jika sesi mereka diambil alih oleh sebuah serangan ini.

Setelah kamu mengetahui beberapa penjelasannya, CSRF ini merupakan salah satu serangan yang merusak keamanan situs web dengan memanfaatkan sesi pengguna yang terotentikasi. Nah, untuk mencegahnya ini dibutuhkannya tindakan validasi token anti-CSRF sebagai permintaan agar terhindar dari penyusup.

Kesimpulan

CSRF (Cross-Site Request Forgery) merupakan serangan yang memanfaatkan kepercayaan situs web pada pengguna yang sudah terotentikasi untuk melakukan tindakan tanpa sepengetahuan mereka. Serangan ini dapat berdampak besar, seperti mengubah kata sandi atau mengirim email palsu, dan bisa menyebar dengan cepat karena kemampuannya untuk menyamar dengan baik.

Untuk mencegah serangan CSRF, langkah-langkah seperti penggunaan token anti-CSRF, validasi referer header, dan implementasi SameSite cookies perlu diterapkan. Selain itu, logout yang aman, penggunaan metode HTTP yang tepat, dan pemutusan sesi otomatis juga diperlukan untuk melindungi situs web dari serangan ini. Dengan tindakan pencegahan yang tepat, kita dapat mengurangi risiko serangan CSRF dan menjaga keamanan situs web dengan lebih baik.

Salam Sukses – Rakita Website.