+
| SELECT * FROM users WHERE username='admin' AND
EXPLOIT DATABASE
password='21232f297a57a5a743894a0e4a801fc3'|
+---------------------------------------------------------------------------------
----------+
EXPLOITS
Perhatikan, kita fokus pada "password". Dari proses di atas, kita tahu bahwa
setiap password
GHDB
yang diberikan akan diubah ke dalam bentuk md5, baru kemudian dicocokkan pada data
dalam database
user (baca: tabel user). Hal itulah yang akan menjadi teknik sederhana dalam
PAPERS
tulisan ini. :D
SHELLCODES
#3. Contoh Serangan
Untuk melakukan teknik serangan SQL Injection, saya pikir kita minimal tahu
fungsi atau tata
SEARCH EDB cara pemanggilan atau perintah-perintah SQL (SQL Command). Dan saya pikir, semua
database memiliki
perintah SQL yang relative sama, :D. Misalnya penggunaan komentar, ada yang
SEARCHSPLOIT MANUAL menggunakan "--" atau
"/**/". Secara logika, kita bisa melakukan bypass terhadap form login dengan
teknik tersebut,,,
SUBMISSIONS
sederhana bukan? Misalkan kita masukkan username = ''--', dan password
dikosongkan.
maka perintah SQL diatas akan berubah menjadi seperti ini:
ONLINE TRAINING
SELECT * FROM users WHERE username=''--' AND
password='d41d8cd98f00b204e9800998ecf8427e'
Sedangkan sisanya menjadi komentar lantaran ini, '--'. Nah, begitulah ceritanya
OFFSEC RESOURCES
kenapa kita bisa
menggunakan teknik SQL Injection untuk mem-bybass Form Login.
Selanjutnya, agar kita bisa dikenali sebagai user tertentu, maka perintah SQL kita
harus bernilai
TRUE. Jika kita hanya menggunakan string " '-- " (tanpa double kutip), maka kita
tidak akan
dikenali oleh sistem karena username '' tidak ada. Untuk itu, kita bisa
menambahkan pernyataan
yang bernilai TRUE, misalnya:
' or true--
' or 1=1--
' or 'a'='a'--
Di lain pihak, kalau misalnya kita sudah tahu username-nya, namun tidak tahu
passwordnya, kita bisa
menggunakan teknik seperti ini:
admin'--
admin' or true--
admin' or '1'='1'--
Dengan teknik yang sederhana tersebut, kita bisa menjadi user (atau bahkan
administrator) dalam
website tersebut. :D