OpenVAS検証

目次

1.スキャンの実行

2.スキャン結果の確認と対応

3.再実行の確認

4.定期実行タスク作成

5.主に使用する画面の解説

まとめ

 

1.スキャンの実行

Top画面からQuick Scanの実行ができます。
対象サーバのIPを入力し、「Start Scan」をクリックします。
スキャンが実行され、進捗状況が確認できます。
scan-start1

scan-start2

scan-start5

 

完了しました。
それでは、詳細を確認します。

 

5.スキャン結果の確認と対応

Statusにある「Done」をクリックすると、検知された脆弱性が表示されます。
scan-start6

このサーバでは、11件の脆弱性が検出されました。
Severity:High 0件、Medium 2件、Low 2件、Info 8件

最初の行にある「SSH Weak Encryption Algorithms Supported」の内容を確認します。

result
結果を確認すると、
「Remote SSHサーバーは、弱い暗号化アルゴリズムを許可するように構成されています。」
という内容が表示されました。
対応としては、脆弱性があるアルゴリズムを無効化する必要があるようです。
Referencesに記載されている以下のURLからJVNで検索して確認しました。
https://www.kb.cert.org/vuls/id/958563
http://jvndb.jvn.jp/ja/contents/2008/JVNDB-2008-001963.html

JVN iPediaで確認した内容です。

・想定される影響
攻撃が成立する可能性は低いとされていますが、攻撃が成立した場合、ひとつの暗号化ブロックから 32ビットの平文を取り出すことが可能です。
・対策
[CTR モードを使用する]

※2008年に発表されていますが、このように最新のバージョンを使用していても、デフォルトのままでは脆弱性が検知されることが確認できます。

下記の脆弱性を無効化します。
3des-cbc
aes128-cbc
aes192-cbc
aes256-cbc
arcfour
arcfour128
arcfour256
blowfish-cbc
cast128-cbc
rijndael-cbc@lysator.liu.se

対象サーバにログインして、バージョンを確認します。
# cat /etc/redhat-release
CentOS release 6.7 (Final)
# ssh -V
OpenSSH_5.3p1, OpenSSL 1.0.1e-fips 11 Feb 2013

ssh_configを編集します。
# cp -p /etc/ssh/ssh_config /etc/ssh/ssh_config.org
# vi /etc/ssh/ssh_config
42行目Cipherを変更する
# Ciphers aes128-ctr,aes192-ctr,aes256-ctr,arcfour256,arcfour128,aes128-cbc,3des-cbc

Ciphers aes256-ctr

sshd_configの最後の行に追加します。
# cp -p /etc/ssh/sshd_config /etc/ssh/sshd_config.org
# vi /etc/ssh/sshd_config
Ciphers aes256-ctr

設定を反映させます。
# service sshd restart
Stopping sshd: [ OK ] Starting sshd: [ OK ]

再度スキャンを実行します。

 

6.再実行の確認

Actionsにある再生アイコンをクリックして再スキャンを実行します。

re-result

 

終了後、スキャン結果を確認します。

Severityを確認すると、4.3から2.6へ低下しています。

re-result2

scan_after

前回検出された「SSH Weak Encryption Algorithms Supported」が、今回は検出されませんでした。
適切な対応ができていることが確認できました。

 

7.定期実行タスク作成

定期的にスキャンを実行するタスクを作成します。

Configuration >> Schedulesを選択し、青い星マークのアイコンをクリックして、新規スケジュールを作成します。

daily-scan0

例として、下記内容(1回のみ実行の週次スキャン)を入力します。

Name: daily scan(スケジュールの名前)
Comment: daily scan(コメント)
First Run: 19:50, 03/Dec/2016(初回スキャン実行日時)
Timezone: Asia/Tokyo (JST)(タイムゾーン)
Period: 1 week(スケジュール実行間隔)
Duration: 1 week(最大実行時間)

daily

「Create Schdule」をクリックすると、下記の通り設定されました。

daily2
Name: daily scan(スケジュールの名前)
Comment: daily scan(コメント)
First Run: Sat Dec 3 19:50:00 2016 JST(初回スキャン実行日時)
Next Run: Sat Dec 10 19:50:00 2016 JST(次回スキャン実行日時)
Timezone: Asia/Tokyo (JST)(タイムゾーン)
Period: 1 week(スケジュール実行間隔)
Duration: 1 week(最大実行時間)

スケジュールを作成したら、Taskを割り当てていきます。

Scan Management >> Tasksをクリックし、対象のTaskのActionsにある青いアイコン「Edit Task」をクリックします。
daily-scan1-2

Schedule で、先ほど作成したスケジュールを割り当てて、「Save Task」をクリックします。
daily-scan3

Actionsにアイコンが追加され、スケジュールが設定されました。
daily-scan4

 

また、スキャン結果をメールで通知することも可能です。
Tasks内の赤い星アイコンにマウスオーバーして、既存のTaskに設定する場合は、Modifyを選択し、新たに作成する場合は、Advanceを選択します。
mail-0

「Email report to」に送信宛先を記載してください。
mail-1

メールでは、以下のような内容で、通知されます。
mail-2

ここまでの検証で、以下の通りの流れで実行しました。
<OpenVASのインストール→初期設定→スキャン実行→脆弱性の対応→再スキャン実行→対応結果(脆弱性除去)の確認→定期実行スケジュール設定→メールで通知>

 

8.主に使用する画面の解説

ScanManagement Tasks タスク検査の新規作成(星印の青アイコン)/ タスクウィザードの起動(杖印の紫アイコン)や、実施したタスクの結果サマリを表示 Name タスク名
Status タスク状況
Reports 実施回数、最終実施日が表示。
Severity 深刻度。赤(High)、黄(Medium)、青(Low)で表示
Trend 前回の検査結果に対する評価
Actions タスクの実行・停止・削除

 

ScanManagement Reports 診断結果のサマリを表示 Date 実行日
Status タスク状況
Task タスク名
Severity 深刻度。赤(High)、黄(Medium)、青(Low)で表示
Scan Results Severityの数を表示

まとめ

OpenVAS導入に際しての注意点と動作についてをまとめます。
・インストールまでは比較的簡単に導入できるが、操作においてユーザーフレンドリーではなく、都度調査する必要があった。
・Webコンソール(Greenbone Security Assistant)のデザインに癖があるため、とっつきにくい印象がある。
・サーバ1台に対してのスキャンの実行時間が15分程度かかるため、複数台用意しても、小規模のネットワークでの活用が望ましい。
・意外と対策されていない脆弱性が容易に発見できるため、特に外部から接続できるサーバ(Webサーバ、メールサーバ、DNSサーバなど)に対しては定期的な脆弱性診断を実施することが、セキュリティにおいて非常に重要な対策である。
・Webコンソール上のスケジュールタスク実行だけでなく、コマンドライン(OpenVAS CLI)でのスキャンをcronに登録することでも、定期的なスキャンを実行することが可能。