ツール

NiktoやKaliLinuxで簡易的な脆弱性診断を試してみる

nginx の設定項目を見直していたのですが、診断ツールがあると便利だなっと思い探してみると、Nikto というツールに行き着きました。

今回は Nikto を紹介します。

Niktoのダウンロード

2012 年が最新版で公式サイトがエラーとなって表示できないので怖いのですが、このツール自体のダウンロードは可能です。

下記のディレクトリからお好みの圧縮フォーマットでダウンロードしてください。

Niktoのインストールと実行

早速、解凍して実行できる状態にします。

まずは、ダウンロードして解凍、そして実行ファイル nikto.pl のディレクトリへ移動します。

Niktoのヘルプを確認する

ヘルプを参照する場合は、以下のコマンドで可能です。

-H オプションを使うと詳細なヘルプが確認できますが、そこそこの量になるので、ここでは簡易版のヘルプを紹介しておきます。

この中で使用するオプションは host が一般的になりそうですが、Basic 認証を掛けているテストサイトを診断したい場合は id オプションを使うことになります。

Basic認証を通過させる

単純に、Basic 認証を掛けている自身のサーバで試す場合は以下のコマンドになります。

ホストはループバックアドレスでも localhost でも問題ないですが、サーバの設定によっては localhost でアクセスできないケースもあるので、ループバックアドレスが無難でしょうか。

Niktoを使ってみた結果

結果はリクエストヘッダの一部の項目の扱いや、URL のディレクトリパス、ファイル名など細かいものが多いのと、ログなのか警告なのか分かりにくい表示であまり好感は持てませんでした。

クリックジャッキング対策用に x-frame-options 付けてるのに警告が出るのは何だろう・・・。

今回、セットアップしたばかりのサーバに簡易的にやってしまったので、ドメイン振ってリモートから試してみた方が良さそうですね。

あと、今は http ですが、これから SSL の設定をして https でのアクセスも許可するので、その場合、Nikto で SSL に対応するために perl の SSL 用のライブラリなどが別途必要になるかもしれません。

Kali Linuxを診断ツールとして利用してみる

先日、脆弱性の診断に特化した Linux ディストリビューションがあると聞いたので、Kali Linux を Vagrant 上で動かして、リモートから診断できないかと試みました。

下記のサイトからボックスファイルを探して vagrant コマンドで設定が開始できます。

別途、vagrant のボックスイメージで有名な www.vagrantbox.es のリストにある Kali Linux のイメージは 404 でダウンロードできませんでした・・・。