Pembahasan bagaimana cara menggunakan SQLMap melakukan sql injection untuk mengeksploitasi vulnerable pada sebuah form login
SQL Injection selain bisa digunakan pada parameter sebuah URL juga bisa digunakan pada sebuah form inputan misalnya pada sebuah form login. Pada artikel ini kita akan membahas tutorial SQL Injection pada form login.
Dalam artikel sebelumnya kita melihat bagaimana menggunakan sqlmap untuk mengeksploitasi vulnerable url dari sebuah halaman.
http://www.site.com/section.php?id=59Dimana parameter id kita misalkan rentan terhadap sql injection.
Sekarang kita akan mencoba melakukan hal yang sama dengan form, terutama form login. Formulir sering mengirimkan data via pos, sehingga syntax untuk meluncurkan perintah sqlmap akan sedikit berbeda.
Penting untuk dicatat bahwa ketika bekerja dengan pengiriman POST, url yang diberikan ke sqlmap harus berupa url pengiriman dan bukan url yang memuat formulir.
Jadi jika form di load di url misalnya
http://www.site.com/form.phpKemudian dikirim pada url
http://www.site.com/form_submit.phpKemudian url yang akan digunakan dengan sqlmap adalah http://www.site.com/form_submit.php
Hal lain adalah untuk mengetahui parameter yang diserahkan pada form. Hal ini dapat dengan mudah dilakukan dengan inspektur DOM dari chrome atau firebug di firefox.
Cara SQL Injection pada form login
Misalkan parameter injeksi adalah username. Perintahnya akan seperti berikut$ python sqlmap.py -u "http://www.site.com/form_submit.php" --data="username=avc"Pilihan pada data menunjukkan bahwa itu adalah permintaan dengan method POST. Nah jika anda cukup beruntung, maka sqlmap akan mendeteksi sql injection secara cepat. Namun saat bekerja dengan form dan post data, keadaan tidak akan semudah ketika bekerja dengan url.
SQLMap dapat melaporkan parameter yang tidak dapat di injection kecuali username yang benar diketahui, pengajuan posting tidak akan menghasilkan halaman yang benar atau halaman TRUE. Sqlmap pertama membutuhkan halaman yang benar dan kemudian mencoba menghasilkan halaman palsu dan kemudian membandingkan dua halaman untuk memastikan bahwa parameternya dapat dilakukan injection.
Namun kita tahu bahwa parameternya bisa disuntikkan karena kita bisa masuk hanya dengan menggunakan magic word.
' or '1'='1Jika pada perintah pertama SQLMap melaporkan bahwa parameter tersebut tidak dapat di inject, maka cobalah magic word sebagai nilai parameter
$ python sqlmap.py -u "http://www.site.com/form_submit.php" --data="username=' or '1'='1"Perintah tersebut harusnya bekerja jika magic word bekerja pada browser.
Komentar ini telah dihapus oleh administrator blog.
BalasHapusmantap nih tutorial system query language (sql) nya. kembali belajar IT lagi
BalasHapus