スポンサーサイト
脆弱性診断ツール - Nessusのインストール
OS:Fedora 11
インストールするツール:Nessus 4.2.1
脆弱性診断ツールは、コンピュータ上の脆弱性を自動で調査します。
今回は脆弱性診断ツール、Nessusのインストール手順を紹介します。
※Fedora 11へのインストール手順を記載しています。
まず、NessusホームページよりNessusをダウンロードします。
http://www.nessus.org/download/
今回はFedora 11へインストールするので、Nessus-4.2.1-fc11.i586.rpmを利用します。
ダウンロード後、rpmコマンドでインストールします。
インストールが完了したら、Nessusユーザの追加を行います。
nessus-adduserコマンドを実行します。
ユーザの作成が完了しました。
続いてはプラグインダウンロード用のアクティベーションコードを入手します。
※登録のためメールアドレスが必要になります。
以下URLから、HomeFeed > I Acceptと進みメールアドレスを入力した後、
Registerを選択します。
http://www.tenablesecurity.com/plugins/index.php?view=register-info
数分後、メールが届きます。
届いたメール本文内のLinux and Solaris Users :以下のコマンドをサーバ上で実行し、
アクティベーションコードをサーバ上へ登録します。
最新のプラグインがダウンロードされます。
Nessusサービスを起動させます。
※起動すると https://サーバIPアドレス:8834/からアクセス可能になりますが、
サービスを起動させてから実際にアクセス可能になるまで、数分〜十数分程、時間が掛かる場合があります。
https://サーバIPアドレス:8834/へアクセスし、先ほど作成したユーザでログインします。

まずは脆弱性スキャンを実施する上で、ポリシー※を設定する必要があります。Policies、Addの順に選択します。
※ポリシーは、例えばどのプラグインを利用するか、タイムアウト値をいくつに設定するか、などを定義します。

以下の画面が表示されますので、Basic内のNameにポリシー名を入力します。
Visibilityには、ポリシーを他のユーザと共有するかどうかを設定します。
Shared : 他のユーザと共有
Private : ポリシー作成したユーザのみ

とりあえず今回は、その他の項目はデフォルトのままで先ほどのポリシー画面に戻るまでNextをクリックします。
※診断対象のサーバへの負荷を軽減させたい場合は、Max Checks Per Hostの値を減らしたり、
Max Simultaneous TCP Sessions Per HostにホストへのTCPセッションの最大数を制限する等してください。
ポリシーが作成されました。

次に、スキャン対象のサーバを設定します。Scansを選択します。

Addを選択します。

Name : スキャン名を入力します。スキャン対象のホスト名など入力しておくと後でわかりやすいと思います。
Policy : 先ほど作成したポリシーを選択します。
Scan Targets : スキャン対象のサーバを入力します。
右下のLaunch Scanを選択すると、スキャンが実行されます。

ダブルクリックすると、スキャン状況をリアルタイムで確認することが出来ます。

スキャンが終了すると、Reportへ追加されます。
ダブルクリックするとスキャン結果を確認出来ます。

ホストをクリックすると、以下の画像の様に検出されたポート一覧と、
発見された脆弱性等が一覧表示されます。
以下の画面から、ポート番号をクリックしていくと発見された脆弱性を確認出来ます。

※左のDownload Reportボタンを選択することで、レポートをHTML形式等で保存することが出来ます。
インストールするツール:Nessus 4.2.1
脆弱性診断ツールは、コンピュータ上の脆弱性を自動で調査します。
今回は脆弱性診断ツール、Nessusのインストール手順を紹介します。
※Fedora 11へのインストール手順を記載しています。
まず、NessusホームページよりNessusをダウンロードします。
http://www.nessus.org/download/
今回はFedora 11へインストールするので、Nessus-4.2.1-fc11.i586.rpmを利用します。
ダウンロード後、rpmコマンドでインストールします。
[root@localhost src]# ls
Nessus-4.2.1-fc11.i586.rpm
[root@localhost src]#
[root@localhost src]# rpm -ivh Nessus-4.2.1-fc11.i586.rpm
準備中... ########################################### [100%]
1:Nessus ########################################### [100%]
nessusd (Nessus) 4.2.1 [build K9119] for Linux
(C) 1998 - 2010 Tenable Network Security, Inc.
- Please run /opt/nessus//sbin/nessus-adduser to add a user
- Register your Nessus scanner at http://www.nessus.org/register/ to obtain
all the newest plugins
- You can start nessusd by typing /sbin/service nessusd start
[root@localhost src]#
Nessus-4.2.1-fc11.i586.rpm
[root@localhost src]#
[root@localhost src]# rpm -ivh Nessus-4.2.1-fc11.i586.rpm
準備中... ########################################### [100%]
1:Nessus ########################################### [100%]
nessusd (Nessus) 4.2.1 [build K9119] for Linux
(C) 1998 - 2010 Tenable Network Security, Inc.
- Please run /opt/nessus//sbin/nessus-adduser to add a user
- Register your Nessus scanner at http://www.nessus.org/register/ to obtain
all the newest plugins
- You can start nessusd by typing /sbin/service nessusd start
[root@localhost src]#
インストールが完了したら、Nessusユーザの追加を行います。
nessus-adduserコマンドを実行します。
[root@localhost src]# /opt/nessus//sbin/nessus-adduser
Login : nessususer ←※ユーザ名とパスワードを入力します。
Login password :
Login password (again) :
Do you want this user to be a Nessus 'admin' user ? (can upload plugins, etc...) (y/n) [n]: y
User rules ↑作成したユーザをadminユーザとする場合はyを選択します。
----------
nessusd has a rules system which allows you to restrict the hosts
that nessususer has the right to test. For instance, you may want
him to be able to scan his own host only.
Please see the nessus-adduser manual for the rules syntax
Enter the rules for this user, and enter a BLANK LINE once you are done :
(the user can have an empty rules set)
↑ユーザのルールを入力する場所ですが、今回はとりあえず何も入力せずエンターキーを押します。
Login : nessususer
Password : ***********
This user will have 'admin' privileges within the Nessus server
Rules :
Is that ok ? (y/n) [y] y
User added
[root@localhost src]#
Login : nessususer ←※ユーザ名とパスワードを入力します。
Login password :
Login password (again) :
Do you want this user to be a Nessus 'admin' user ? (can upload plugins, etc...) (y/n) [n]: y
User rules ↑作成したユーザをadminユーザとする場合はyを選択します。
----------
nessusd has a rules system which allows you to restrict the hosts
that nessususer has the right to test. For instance, you may want
him to be able to scan his own host only.
Please see the nessus-adduser manual for the rules syntax
Enter the rules for this user, and enter a BLANK LINE once you are done :
(the user can have an empty rules set)
↑ユーザのルールを入力する場所ですが、今回はとりあえず何も入力せずエンターキーを押します。
Login : nessususer
Password : ***********
This user will have 'admin' privileges within the Nessus server
Rules :
Is that ok ? (y/n) [y] y
User added
[root@localhost src]#
ユーザの作成が完了しました。
続いてはプラグインダウンロード用のアクティベーションコードを入手します。
※登録のためメールアドレスが必要になります。
以下URLから、HomeFeed > I Acceptと進みメールアドレスを入力した後、
Registerを選択します。
http://www.tenablesecurity.com/plugins/index.php?view=register-info
数分後、メールが届きます。
届いたメール本文内のLinux and Solaris Users :以下のコマンドをサーバ上で実行し、
アクティベーションコードをサーバ上へ登録します。
最新のプラグインがダウンロードされます。
[root@localhost src]# /opt/nessus/bin/nessus-fetch --register XXXX-XXXX-XXXX-XXXX-XXXX
Your activation code has been registered properly - thank you.
Now fetching the newest plugin set from plugins.nessus.org...
Your Nessus installation is now up-to-date.
If auto_update is set to 'yes' in nessusd.conf, Nessus will
update the plugins by itself.
[root@localhost src]#
Your activation code has been registered properly - thank you.
Now fetching the newest plugin set from plugins.nessus.org...
Your Nessus installation is now up-to-date.
If auto_update is set to 'yes' in nessusd.conf, Nessus will
update the plugins by itself.
[root@localhost src]#
Nessusサービスを起動させます。
[root@localhost src]# /etc/init.d/nessusd start
Nessus サービスを起動中:
[root@localhost src]#
Nessus サービスを起動中:
[root@localhost src]#
※起動すると https://サーバIPアドレス:8834/からアクセス可能になりますが、
サービスを起動させてから実際にアクセス可能になるまで、数分〜十数分程、時間が掛かる場合があります。
https://サーバIPアドレス:8834/へアクセスし、先ほど作成したユーザでログインします。

まずは脆弱性スキャンを実施する上で、ポリシー※を設定する必要があります。Policies、Addの順に選択します。
※ポリシーは、例えばどのプラグインを利用するか、タイムアウト値をいくつに設定するか、などを定義します。

以下の画面が表示されますので、Basic内のNameにポリシー名を入力します。
Visibilityには、ポリシーを他のユーザと共有するかどうかを設定します。
Shared : 他のユーザと共有
Private : ポリシー作成したユーザのみ

とりあえず今回は、その他の項目はデフォルトのままで先ほどのポリシー画面に戻るまでNextをクリックします。
※診断対象のサーバへの負荷を軽減させたい場合は、Max Checks Per Hostの値を減らしたり、
Max Simultaneous TCP Sessions Per HostにホストへのTCPセッションの最大数を制限する等してください。
ポリシーが作成されました。

次に、スキャン対象のサーバを設定します。Scansを選択します。

Addを選択します。

Name : スキャン名を入力します。スキャン対象のホスト名など入力しておくと後でわかりやすいと思います。
Policy : 先ほど作成したポリシーを選択します。
Scan Targets : スキャン対象のサーバを入力します。
右下のLaunch Scanを選択すると、スキャンが実行されます。

ダブルクリックすると、スキャン状況をリアルタイムで確認することが出来ます。

スキャンが終了すると、Reportへ追加されます。
ダブルクリックするとスキャン結果を確認出来ます。

ホストをクリックすると、以下の画像の様に検出されたポート一覧と、
発見された脆弱性等が一覧表示されます。
以下の画面から、ポート番号をクリックしていくと発見された脆弱性を確認出来ます。

※左のDownload Reportボタンを選択することで、レポートをHTML形式等で保存することが出来ます。

