Apa itu CSRF (Cross-Site Request Forgery)?

Posted on

Pengertian CSRF

Apa itu CSRF – CSRF (Cross-Site Request Forgery) adalah serangan yang mencoba untuk memanfaatkan kelemahan dari sebuah situs web dengan mengirimkan permintaan yang tidak sah dari komputer yang tidak dikenal ke situs web tersebut.

Ini dapat dilakukan dengan mengirimkan link ke situs web atau menyembunyikan suatu permintaan di dalam halaman web, seolah-olah link tersebut berisi permintaan data yang benar.

Tujuannya adalah untuk mengambil keuntungan dari situs web tersebut seperti data-data penting, mengambil aksi yang tidak diinginkan oleh pengguna atau mengakses informasi yang tidak diinginkan oleh pengguna.

Apa itu CSRF (Cross-Site Request Forgery) ?

CSRF Token

Untuk melindungi aplikasi dari serangan CSRF, Anda dapat menggunakan token CSRF.

Token CSRF biasanya terdiri dari string acak yang terdiri dari huruf dan angka yang dibuat oleh server dan dikirim ke browser pengguna.

Berikut ini adalah contoh token CSRF:

  • “2c7a4f2d2f8b4a9a4f3c3e3d4b8a7f6e”
  • “5d9b1e0c9a3f2e1d6b7c8d4a5f0g9h8i”
  • “7e4c6a2b1d5f3g8h9i0j1k2l3m4n5o6p”

Ketika sebuah formulir atau data form dikirim ke server, token CSRF juga dikirim bersama dengan formulir tersebut. Server kemudian akan memverifikasi token tersebut untuk memastikan bahwa permintaan yang dikirim benar-benar datang dari formulir yang sah dan bukan dari sumber yang tidak dikenal.

Berapa panjang token CSRF?

Panjangnya bervariasi tergantung pada implementasi yang digunakan.

Token CSRF yang terlalu pendek dapat mudah diprediksi oleh peretas yang ingin mengirimkan permintaan tidak sah ke server.

Token CSRF yang terlalu panjang dapat menyebabkan overhead yang tidak perlu pada server.

Oleh karena itu, penting untuk menemukan keseimbangan yang tepat antara keamanan dan efisiensi ketika menentukan panjang token CSRF.

Framework yang menggunakan CSRF

Banyak framework yang menyediakan fitur keamanan untuk melindungi aplikasi dari serangan CSRF. Beberapa contohnya adalah:

Codeigniter

Codeigniter adalah framework PHP yang populer yang membantu dalam pengembangan aplikasi web. Fitur keamanan CSRF dapat diaktifkan dengan mengubah nilai dari variabel $ config [‘csrf_protection’] menjadi TRUE dalam file konfigurasi.

Laravel

Laravel adalah framework PHP yang populer yang juga membantu dalam pengembangan aplikasi web. Fitur keamanan CSRF dapat diaktifkan dengan mengaktifkan middleware CSRF di file Kernel.

Django

Django adalah framework Python yang populer yang juga menyediakan fitur keamanan CSRF. Anda dapat mengaktifkan fitur ini dengan menambahkan ‘django.middleware.csrf.CsrfViewMiddleware’ ke MIDDLEWARE di file konfigurasi.

Ruby on Rails

Ruby on Rails adalah framework web yang populer yang ditulis dalam bahasa Ruby. Fitur keamanan CSRF dapat diaktifkan dengan menambahkan ‘Rack :: Csrf’ ke middleware aplikasi Anda di file konfigurasi.

ASP.NET

ASP.NET adalah framework web yang populer yang ditulis dalam bahasa .NET. Fitur keamanan CSRF dapat diaktifkan dengan menambahkan ‘System.Web.Helpers.AntiForgery’ ke middleware aplikasi Anda di file konfigurasi.

Itu hanya beberapa contoh framework yang menyediakan fitur keamanan CSRF. Ada banyak framework lain yang juga menyediakan fitur ini, sehingga pastikan untuk memeriksa dokumentasi framework yang Anda gunakan untuk informasi lebih lanjut tentang cara mengaktifkan fitur keamanan CSRF.

Kesimpulan

Token CSRF yang terdiri dari angka acak dibuat untuk membantu mencegah serangan CSRF. Ketika sebuah formulir dikirim ke server, token CSRF juga dikirim bersama dengan formulir tersebut. Server kemudian akan memverifikasi token tersebut untuk memastikan bahwa permintaan yang dikirim benar-benar datang dari formulir yang sah dan bukan dari sumber yang tidak dikenal.

Token CSRF yang terdiri dari angka acak adalah cara yang efektif untuk memastikan bahwa token tersebut tidak dapat diprediksi oleh peretas yang ingin mengirimkan permintaan tidak sah ke server.

Jika token CSRF tidak acak, maka peretas dapat dengan mudah memprediksi token tersebut dan menggunakannya untuk mengirimkan permintaan tidak sah ke server.

Dengan token CSRF yang acak, peretas harus menemukan token yang benar-benar acak setiap kali mereka ingin mengirimkan permintaan tidak sah, yang sangat sulit dilakukan.

Dengan demikian, menggunakan token CSRF yang acak membantu mencegah serangan CSRF. Semoga artikel Apa itu CSRF ini bermanfaat.

Artikel bermanfaat lainnya: