Ubuntu Server 16.04 LTSに脆弱性診断ツール『Nessus』をインストールして脆弱性スキャンを行う

今まであまり触ったことがなかったので、今回はNessusをUbuntu Server 16.04にインストールしてリモートサーバの脆弱性スキャンを行ってみる。 Nessusといえば脆弱性診断ツールとしてとても有名で、無償版と有償版がある。 業務で利用するなら有償版を使う必要があるのだが、今回は検証(それも個人)なので無償版をインストールして利用する。

1. Nessusのインストール

Nessusのインストールは簡単で、まずこちらのページからNessusのdebファイルを取得してくる。 ファイル取得後、以下のコマンドでdebファイルからインストールを行う。

sudo dpkg -i Nessus*.deb
blacknon@BS-PUB-UBUNTUSEC:~$ sudo dpkg -i Nessus*.deb
以前に未選択のパッケージ nessus を選択しています。
(データベースを読み込んでいます ... 現在 59697 個のファイルとディレクトリがインストールされています。)
Nessus-6.9.3-ubuntu1110_amd64.deb を展開する準備をしています ...
nessus (6.9.3) を展開しています...
nessus (6.9.3) を設定しています ...
Unpacking Nessus Core Components...
nessusd (Nessus) 6.9.3 [build M20076] for Linux
Copyright (C) 1998 - 2016 Tenable Network Security, Inc

Processing the Nessus plugins...
[##################################################]

All plugins loaded (1sec)

 - You can start Nessus by typing /etc/init.d/nessusd start
 - Then go to https://BS-PUB-UBUNTUSEC:8834/ to configure your scanner

ureadahead (0.100.0-19) のトリガを処理しています ...
systemd (229-4ubuntu4) のトリガを処理しています ...

これでインストールは完了。 以下のコマンドでサービスを起動する。

sudo /etc/init.d/nessusd start

2. ブラウザから初期設定を行う

さて、それではブラウザからNessusにアクセスしてみよう。 「https://IPアドレス:8834」でアクセスできる。

ログイン用のユーザ名・パスワード入力画面が表示されるので、適当に作成する。

ライセンスの入力画面が表示される。 今回はフリー版を用いるので、こちらにアクセスしてNessus Homeのアクティベーションキーを取得する。

上記までの作業が終わったら、必要なデータのダウンロードが行われるためしばらく待機時間。

ログインできるようになったら、先ほど設定したユーザ名・パスワードでログインする。

3. 脆弱性スキャンを行う

Nessusのインストールは終わったので、簡単にスキャンを行ってみる。 今回はローカルネットワークのCentOS 7に対して行う。

「New Scan」をクリックし、スキャンライブラリを選択する。 今回は「Basic Network Scan」を行う。

ホストの情報作成後、再生ボタンで脆弱性スキャンを開始する。

スキャン完了後の画面。 こんな感じで脆弱性の有無を確認できるようだ。結果をExportする場合は、画面右上にある「Export」から取得すればよいだろう。