セキュリティ対策としてsqlmapをインストールする【SQLインジェクション対策】

セキュリティ対策としてsqlmapをインストールする【SQLインジェクション対策】 プログラミング

sqlmapは、ハッキングツールです。
そのハッキングツールを使って、サイトをガンガンと攻撃しましょう。
もちろん、公開されているサイトを攻撃するのは違法ですからね。

攻撃することにより、セキュリティの意識・知識が高まります。
そのためにsqlmapをインストールしましょう。

本記事の内容

  • sqlmapとは?
  • sqlmapのシステム要件
  • sqlmapのインストール
  • sqlmapの動作確認

それでは、上記に沿って解説していきます。

sqlmapとは?

sqlmapとは、Python製オープンソースの侵入テストツールです。
SQLインジェクションにより、データベースを乗っ取ります。

つまり、sqlmapはハッキングツールと言えます。
なんだか物騒ですね。

もちろん、sqlmapを使って第三者のサイトを攻撃なんてしたらアウトです。
攻撃をした際には、不正アクセス禁止法で逮捕されかねません。

じゃあ、なぜそんな危険なツールが存在するのでしょうか?
それは、SQLインジェクションについて詳しくなるためです。

ただ単に詳しくなるだけではなく、実際に検証することが最大の目的になります。
sqlmapを使って自社・自分のサイトを攻撃します。

そうすることで、サイトの脆弱性を見つけることが可能となります。
そして、見つけた脆弱性に対応していきます。

その結果、SQLインジェクション攻撃から身を守るサイトが出来上がります。
よって、sqlmapのようなツールがセキュリティ対策には欠かせないのです。

以上より、sqlmapの必要性が認識できたはずです。
実際の機能は、使って覚えていきましょう。

まずは、そのためにはインストールからです。
次に、sqlmapをインストールするためのシステム要件を確認します。

sqlmapのシステム要件

sqlmapの最新バージョンは、1.5.3となります。
この最新バージョンは、2021年3月4日にリリースされています。

メンテナンスの頻度は、かなり高いです。
それだけでも利用する側としては、安心できますね。

サポートOSに関しては、以下を含むクロスプラットフォーム対応です。

  • Windows
  • macOS
  • Linux

Pythonが動けば、どんなOSでもOKということでしょう。
そして、そのPythonのサポート状況は以下となります。

  • Python 2.6~2.7
  • Python 3系

つまりは、ほぼすべてのバージョンが対象と言えます。
ちなみに、私は以下のPythonを利用します。

>python -V
Python 3.9.1

以上より、sqlmapはPythonが動けばどこでも動きそうです。
では、次にsqlmapをインストールしていきましょう。

sqlmapのインストール

最初に、現状のインストール済みパッケージを確認しておきます。

>pip list
Package    Version
---------- -------
pip        21.0.1
setuptools 54.1.2

次にするべきことは、pip自体の更新です。
pipコマンドを使う場合、常に以下のコマンドを実行しておきましょう。

python -m pip install --upgrade pip

では、sqlmapのインストールです。
sqlmapのインストールは、以下のコマンドとなります。

pip install sqlmap

インストールは、ほぼ一瞬で終わります。
では、どんなパッケージがインストールされたのかを確認しましょう。

>pip list
Package    Version
---------- -------
pip        21.0.1
setuptools 54.1.2
sqlmap     1.5.3

sqlmapが依存するパッケージは、別でインストールはされていません。
その意味では、どんな環境にでも気軽に導入できそうです。

最後に、sqlmapの動作確認を行いましょう。

sqlmapの動作確認

動作しているかどうかは、以下のコマンドで確認できます。

>sqlmap --version
1.5.3#pip

インストールしたsqlmapのバージョンを確認できます。
実際の使い方は、ヘルプを見ましょう。

>sqlmap -h
        ___
       __H__
___ ___[,]_____ ___ ___  {1.5.3#pip}
|_ -| . ["]     | .'| . |
|___|_  [']_|_|_|__,|  _|
      |_|V...       |_|   http://sqlmap.org

Usage: sqlmap [options]

Options:
  -h, --help            Show basic help message and exit
  -hh                   Show advanced help message and exit
  --version             Show program's version number and exit
  -v VERBOSE            Verbosity level: 0-6 (default 1)
・・・

上記のように、ズラズラと表示されます。
以上で動作確認としては、問題ないことを確認できました。

でも、実際にsqlmapを使ってサイトを攻撃したいと思いませんか?
もちろん、自社・自分のサイトです。

しかし、普通はすぐに脆弱性を持ったサイト(データを持ったDBも含む)を用意できません。
逆に、「そんなサイトを運用しています!!」と言われたら、ちょっと引いてしまいます。

そんなときは、脆弱性だらけのサイトであるDVWAを使いましょう。
詳細は、以下の記事をご覧ください。

DVWAをsqlmapでガンガンと攻撃してやりましょう。
そうすれば、SQLインジェクションについての理解が進むでしょう。

本ブログでは、実際に攻撃する様子を別記事にて解説する予定です。

タイトルとURLをコピーしました