SQL Injection Login Form Menggunakan Cheat Sheet



Cara mudah untuk melakukan injeksi SQL pada login form adalah dengan menggunakan cheat sheet. Cheat sheet adalah daftar kode yang berisi beberapa kode dasar yang harus diketahui oleh attacker untuk melakukan injeksi SQL ke dalam form login. Dalam artikel ini, akan membahas tentang bagaimana pencarian bug SQL injection pada login form menggunakan cheat sheet dan kode-kode yang digunakan.

Identifikasi Vulnerability

Langkah pertama sebelum melakukan injeksi SQL pada form login adalah dengan mengidentifikasi vulnerabilitas pada login page. Pertanyaan mendasar yang harus ditanyakan adalah, bagaimana halaman login dirender dan bagaimana parameter diteruskan dari form ke server. Apakah mereka disimpan dalam variabel POST atau GET? Adakah validasi data saat masuk? Apakah penggunaan metode pengiriman data HTTP digunakan dengan benar?

Menentukan Tipe Query

Setelah berhasil mengidentifikasi vulnerabilitas pada login page, langkah selanjutnya adalah menentukan tipe query yang ingin di eksekusi pada server. Dalam kebanyakan kasus, attacker ingin mengambil informasi rahasia seperti username dan password. Sehingga, jenis SQL injection yang digunakan adalah union based, error based, dan boolean based.

Mengirim Payload

Setelah menentukan tipe query untuk SQL injection yang ingin dilakukan, selanjutnya adalah mengirim payload ke server. Payload umumnya berisi perintah SQL yang dieksekusi pada server oleh attacker. Payload yang umum digunakan adalah :

Untuk error-based SQL injection :



' union select 1, @@version, 3 -- 


Untuk union-based SQL injection :



' or 1=1 union all select null, concat(0x3a,username,0x3a,password), null from users -- 


Untuk boolean-based SQL injection :



' and substring(@@version,1,1) = 5 --


Analisis Hasil Payload

Setelah terkirim ke server dengan sukses, attacker akan menganalisis hasil dari payload yang telah dikirim. Banyak alat online maupun offline yang secara otomatis menganalisis server dan mengeluarkan hasil yang dapat di filter secara manual. Hasil analisis ini memungkinkan attacker untuk menemukan informasi penting yang dapat merusak sistem, seperti username dan password, kode rahasia dan informasi sensitif lainnya.

Melalui langkah langkah di atas, penyerang dapat memperoleh akses penuh ke sistem dengan mudah. Oleh karena itu, pengembang web perlu menyadari celah tersebut dan melakukan pemeriksaan keamanan secara berkala untuk menghindari serangan SQL injection pada sistem yang dikembangkannya.

1 Komentar