Nessusインストールと、基本的な使用方法

この記事は [リンク情報システム](https://www.lis.co.jp) の「[2020新春アドベントカレンダー TechConnect!](https://qiita.com/dgkz/items/5131349d56354b33ee97)」のリレー記事です。
TechConnect! は勝手に始めるアドベントカレンダーとして、engineer.hanzomon という勝手に作ったグループによってリレーされます。
（リンク情報システムの[Facebookはこちら](https://www.facebook.com/lis.co.jp/)から）

こういうの使ったなーということで備忘。

# 脆弱性診断とは
「脆弱性は情報セキュリティ・サイバーセキュリティの用語で、安全性上の弱点を指す。」(wikipedia)
脆弱性診断の方法としては、Nessusなどの脆弱性検査ツールや脆弱性対策情報提供サービスを利用する等がある。

脆弱性収集の主な流れとしてはシステム上で動いているソフトウェアのバージョンを把握し、
手動チェックや、今回紹介するNessus等のツールを使って[CVE](https://www.ipa.go.jp/security/vuln/CVE.html)(共通脆弱性識別子)の検出を行う。
![脆弱性対応.PNG](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/327372/a45bf0e8-c6af-c314-4aa0-ebda1d84a34c.png)


# Nessusとは
脆弱性診断スキャナー。
公式によると47,000以上のCVEは業界で最も多く、より多くの脆弱性を発見できるのが売り。
非商用として無料で使用できる。AWSだとイメージにNessusがあるのでインストール作業不要。

# インストール方法
〇環境
　・RHEL8
　・Nessus-8.8.0

##1. アクティベーションコードを取得
　※初期インストール画面時に入力する。
　商用はNessus Professional、無料版はNessus Essentials。

|                  | Nessus Professional | Nessus Essentials |
|:-----------------|:-----------------:|:-----------------:|
| 値段             |    $2,390/年   |        無料       |
| スキャン対象     |            無制限     |       16IPまで       |
| 検出CVE         |            無制限     |      数千    　  |
| サポート        |     メール問い合わせ可 |         Community         |

　[tenable](https://www.tenable.com/products/nessus/activation-code)にアクセス。Nessus Essentialsのアクティベーションコードを取得する。
<img width="888" alt="nessus2.PNG" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/327372/ab9debcd-0f90-f13c-a9d8-d42fe7b11c86.png">

　氏名とメールアドレスを記載する。
　<img width="900" alt="nessus3.PNG" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/327372/987937f8-0e56-d1e6-7330-f731383684b3.png">

 登録したメールアドレスにアクティベーションコードが送られてきていることを確認する。

##2.Nessusマネージャーインストール
[ダウンロードサイト](https://www.tenable.com/downloads/nessus)＞Nessusからrpmファイル取得
<img width="900" alt="nessus5.PNG" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/327372/f761772e-431b-4e07-28f0-bd1559b4f751.png">

rpmファイルをサーバに格納してインストール

```
# rpm -ivh Nessus-8.8.0-es8.x86_64.rpm
warning: Nessus-8.8.0-es8.x86_64.rpm: Header V4 RSA/SHA256 Signature, key ID 1c0c4a5d: NOKEY
Verifying...                          ################################# [100%]
Preparing...                          ################################# [100%]
Updating / installing...
   1:Nessus-8.8.0-es8                 ################################# [100%]
Unpacking Nessus Core Components...
 - You can start Nessus by typing /bin/systemctl start nessusd.service
 - Then go to https://ip-XXX-XX-XX-XXX.ap-northeast-1.compute.internal:8834/ to configure your scanner
```
サービス起動

```
# systemctl list-unit-files -t service | grep nessus
nessusd.service                             enabled
# systemctl start nessusd.service
# systemctl status nessusd.service
● nessusd.service - The Nessus Vulnerability Scanner
   Loaded: loaded (/usr/lib/systemd/system/nessusd.service; enabled; vendor preset: disabled)
   Active: active (running) since Thu 2020-01-02 04:28:54 UTC; 5s ago
 Main PID: 6166 (nessus-service)
    Tasks: 11 (limit: 4998)
   Memory: 72.6M
   CGroup: /system.slice/nessusd.service
           ├─6166 /opt/nessus/sbin/nessus-service -q
           └─6167 nessusd -q

Jan 02 04:28:54 ip-XXX-XX-XX-XXX.ap-northeast-1.compute.internal systemd[1]: Started The Nessus Vulnerability Scanner.
```
##3.コンソール画面にアクセスし、初期インストールを実施。
下記URLにアクセスする。
https://(Nessusを立てたサーバ):8834/

初期インストール画面。Nessus Essentialsを選択しContinueを押下。
<img width="900" alt="nessus8.PNG" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/327372/e29bf65e-5e70-2758-1c04-dc9f249ce73d.png">

アクティベーションコードを登録するか聞かれるが、登録済みなのでスキップ。
<img width="900" alt="nessus9.PNG" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/327372/538acd8b-ac36-91c1-dd1e-05612ee6710b.png">

取得したアクティベーションコードを記載。
<img width="900" alt="nessus10.PNG" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/327372/9b243b61-6d90-fa35-16be-f7b3c8728176.png">

Nessus管理者用のアカウントを作成
<img width="900" alt="nessus11.PNG" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/327372/029f36e1-2fac-0190-6e94-9079337f8e04.png">

plugin初期化画面に遷移。
<img width="899" alt="nessus12.PNG" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/327372/56f3e7c2-884d-d4a5-fa6a-70b476147092.png">

以上でインストールが完了。

# 基本的な使用方法
##1.Scan作成
コンソール画面のScanタブから「New Scan」を選択する。
![Inkednessus14_LI.jpg](https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/327372/c084c9e1-4e98-1e13-ca60-161d2016c8ae.jpeg)


##2.スキャンテンプレート選択
主なデフォルトのスキャンテンプレートは下記。種別は主に「Discovery(発見)」「Vulnerabilities(脆弱性)」「Compliance(コンプライアンス)」の三つ。
なお、「Compliance（コンプライアンス）」テンプレートは有料版のみ提供。

|  分類            | スキャン名 | 概要 |
|:-----------------:|:-----------------:|:-----------------:|
| 発見             |    Host Discovery   |       稼働中のホストと開いているポートを検出する。       |
| 脆弱性     |   Advanced Dynamic Scan    |   推奨事項なしの高度なスキャン。特定の脆弱性に合わせてフィルターを行いながらプラグインを含めたり除外したりする。  |
| 脆弱性         |  Advanced Scan      |    推奨事項なしの高度なスキャンを実施する。|
| 脆弱性        |    Basic Network Scan |  基本的な脆弱性スキャンを実施する。|
| 脆弱性        |    Web Application Tests |  公開されたWeb Apllication の脆弱性をスキャンする。       |
| コンプライアンス        |  Audit Cloud Infrastructure |  クラウドサービスの構成を監査する。       |

<img width="900" alt="nessus15.PNG" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/327372/a0f453b2-6c59-16d0-87e0-267fc6adf9e7.png">


##3.スキャン対象サーバの設定
Targetsにスキャン対象サーバのIPを設定する。
<img width="899" alt="nessus16.PNG" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/327372/da67af59-2da4-0d86-15ff-719b2233de25.png">

##4.Schedule設定
Scheduleに実行時間を設定する。
<img width="900" alt="nessus17.PNG" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/327372/a2f0f1a9-e70c-6205-da21-2467572107a8.png">

##5.実行結果
指定時間にスキャンされ、実行結果が下記のように確認できる。<img width="900" alt="nessus20.PNG" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/327372/8520946e-c5cb-4591-c1ab-be4aafe7ce3c.png">
<img width="900" alt="nessus21.PNG" src="https://qiita-image-store.s3.ap-northeast-1.amazonaws.com/0/327372/81144a49-2b18-4b40-d64b-1641f6017e7a.png">

# 終わりに
アドベントカレンダーなので、やったことのないことをやろうと思ったけど力尽きました（笑）
次回は@n-tanimotoさんです。お楽しみに！！