CSRF dan AJAX dalam CodeIgniter

CSRF (Cross-Site Request Forgery) merupakan salah satu jenis serangan terhadap keamanan web untuk mendapatkan atau mengirim request yang dieksekusi atas wewenang korban, tanpa dikehendaki oleh si korban. Serangan CSRF terjadi karena tidak adanya proteksi keamanan dalam token dan sering terjadi pada saat men-submit sebuah form. Jika developer tidak memperhatikan bagian ini maka, akan ada kemungkinan data pemakai atau end user akan diambil oleh pihak yang tidak bertanggung jawab. Data-data yang diambil bisa berupa nama, email, alamat, transaksi belanja dan lain-lain.

Untuk menanggulangi hal tersebut, CodeIgniter telah menerapkan CSRF protection. Dengan hal tersebut, akan ada token yang disisipkan dalam sebuah form dan setiap kali ter-submit maka token tersebut akan melakukan random. Secara sederhana, dengan kehadiran token ini, form yang kita buat akan selalu secure.

Namun, akan menjadi sebuah tantangan ketika form kita menggunakan AJAX, contoh dalam form tersebut terdapat dua dropdown. Dropdown pertama berisi jurusan dan kedua berisi program studi. Berikut penulis akan membuatkannya dalam bentuk tabel

Jurusan Program Studi
Teknik Elektro Manajemen Informatika
Teknik Elektro Teknik Listrik
Teknik Mesin Teknik Mesin
Teknik Mesin Teknik Pendingin dan Tata Udara

Dari tabel atas, terdapat dua jurusan yakni teknik elektro dan teknik mesin. Maka, ketika kita merancang dropdown, kita hanya ingin jurusan teknik elektro menampilkan prodi manajemen informatika dan teknik listrik saja. Maka dari itu, AJAX berperan penting dalam hal ini.

Penulis mengalami tantangan tersendiri ketika ingin menerapkan CSRF dengan AJAX. Jadi, ketika mengaktifkan CSRF dan memilih jurusan dan prodi menggunakan AJAX maka muncul peringatan error pada halaman tersebut seperti pada gambar di bawah.

results matching ""

    No results matching ""