Webセキュリティの小部屋

Twitter のフォローはこちらから Facebook ページはこちら Google+ページはこちら RSSフィードのご登録はこちらから
公開日:2014年1月25日
最終更新日:2014年1月26日

オープンソースの脆弱性スキャナ「OpenVAS」を Kali Linux で使ってみる

OpenVAS とは

OpenVAS(Open Vulnerability Assessment System )は、オープンソースで開発されている脆弱性スキャナです。OS やソフトウェアの脆弱性をスキャンして、レポートを作成してくれます。

OpenVAS は、元々はオープンソースで開発されていた Nessus という脆弱性スキャナから派生したものです。Nessus は商用ソフトウェアになってしまいましたが、オープンソースで公開されていたバージョンを元に開発されたのが OpenVAS です。

OpenVAS は Kali Linux には最初からインストールされているので、これを利用します。

Kali Linux は脆弱性診断を行うツールをまとめた Linux ディストリビューションです。Kali Linux のインストールについては、以下の記事を参考にしてください。

なお、今回は Kali Linux で OpenVAS を使用しますが、OpenVAS は、CentOS, Redhat, Debean, Fedora, OpenSUSE, Windows (一部のみ) でも使用することができます。

OpenVAS のコンポーネント

OpenVAS のコンポーネントには、以下のものがあります。今回は、GSD を使ってスキャンを行います。

コンポーネント名 内容
OpenVAS CLI コマンドラインインターフェースのクライアント
Greenbone Security Desktop(GSD) GUI インターフェースのクライアント
Greebone Security Assistant(GSA) Web インターフェースのクライアント
OpenVAS Scanner スキャン処理を行う
OpenVAS Manager 管理ツール
OpenVAS Administrator サービスの起動/停止やユーザの管理を行う

OpenVAS のセットアップ

Kali Linux には OpenVAS が最初からインストールされてはいますが、セットアップを行わないと使用することができません。

セットアップは、メニューの、[アプリケーション] – [Kali Linux] – [Vulnerability Analysis] – [OpenVAS] – [openvas initial setup] から行います。

pic01

[openvas initial setup] を選択すると、自動的にセットアップが始まります。プラグインの読み込みなどで少々時間がかかります。一通りセットアップが済むと、パスワードの入力を要求されるので、パスワードを入力します。これが、admin ユーザーのパスワードになります。

セットアップの時点で、OpenVAS Scanner、OpenVAS Manager、OpenVAS Administrator は起動しているので、OpenVAS を使用することができます。

今後は、メニューの [openvas start]、[openvas stop] で OpenVAS のサービスを起動/停止します。

ここで、メニューの、[アプリケーション] – [Kali Linux] – [Vulnerability Analysis] – [OpenVAS] – [openvas check setup] を実行して、セットアップがうまくいっているか確認しましょう。

すると、以下のようにデータベースが作成されていないので、セットアップは完了していないというエラーメッセージが表示されてしまいます。

ここで、エラーメッセージにあるスクリプトを実行してもうまくいかないようなので、メニューの、[アプリケーション] – [Kali Linux] – [Vulnerability Analysis] – [OpenVAS] – [openvas feed update] を実行します。

スクリプトの実行が済んだら、再度、[openvas check setup]  を実行してみましょう。

以下のメッセージが表示されたので、セットアップは終了です。

localhost のスキャン

メニューの、[アプリケーション] – [Kali Linux] – [Vulnerability Analysis] – [OpenVAS] – [openvas-gsd] から、OpenVAS GSD を起動します。

起動すると、以下のログイン画面が表示されるので、 Server Address に 「localhost」、User Name に「admin」、パスワードにセットアップ時に入力したパスワードを入力して、[Log in] をクリックします。

pic02

OpenVAS では、スキャンのことを Task と呼ぶので、スキャンする場合は Task を新規で作成する必要があります。

メニューの [Task] – [New] から Task の入力画面を表示し、Name に 「localhost」、Scan Config に「Full and fast」、Scan Target に「Localhost」を設定し、[Create] をクリックして Task を作成します。

pic03

スキャンを実行するには、Task を選択してスタートボタンをクリックします。

pic04

スキャン結果は、以下のようになりました。Medium が 2 件検出されていますね。詳細なレポートを参照するには、レポートをダブルクリックします。

pic12

以下が詳細な脆弱性レポートになります。英語表記のため分かりにくいですが、読めばなんとなく分かる程度です。セキュリティ関連なので、英語よりその内容の方が難しいかもしれませんね。

HTML の形式を選択して [Save] をクリックすると、レポートを HTML として保存することができます。

pic13

 

リモートサーバーをスキャン(CentOS)

今度は、リモートサーバーの CentOS に対しスキャンを行ってみましょう。

メニューの [Task] – [New] から、Task の画面を表示し、Name に「CentOS」、Scan Config に「Full and fast」を設定し、Scan Targets の右側のボタンをクリックします。

pic07

Target の Name に「CentOS」、Hosts に IP アドレス を設定し [Create] をクリックします。

ここで、SSH 認証を使えない不具合があるのが残念。環境依存なのかバージョンなのか。。。

pic08

Scan Targets を「CentOS」にして、[Create] をクリックします。

pic09

CentOS のタスクを選択し、スタートボタンをクリックします。

pic10

スキャン結果は、Medium が 3 件、Low が 3 件ですね。

pic11

レポート詳細は、以下のようになります。SSLv2 のサポートなどが脆弱性としてあがっています。

pic14

リモートサーバーをスキャン (Windows)

今度は、リモートサーバーとして、Windows Server 2012 R2 をスキャンしてみます。

手順は CentOS と同じなので、ここでは省略します。

スキャン結果は、High が 1 件、Medium が 1 件ですね。

pic15

レポートの詳細は、以下のようになります。WordPress のユーザー ID と名前が漏洩する脆弱性があるようですね。開発環境だからいいですが、本番環境でこれはかなり危険ですね。

pic16

まとめ

Kali Linux 上で、OpenVAS のセットアップから使用方法まで見てきました。

OpenVAS は Linux も Windows も関係なく診断でき、かなり詳細にスキャンしていることが分かりました。使用方法も簡単ですし、レポートも脆弱性から対策まで記載されているのがいいですね。

全て英語というのが難点ですが、無料でこれだけの性能の脆弱性診断ができるのなら、英語をちょっと頑張った方がよさそうです。

SSH 認証や Windows 認証が、OpenVAS GSD でうまく動作しなかったのはちょっと残念でした。

参考サイト


スポンサーリンク




カテゴリー:ツール

Twitter でも、いろんな情報を発信しています。



コメントを残す

メールアドレスが公開されることはありません。 * が付いている欄は必須項目です

CAPTCHA