Kali Linux で OpenVAS を使う方法


■Kali Linux で OpenVAS を使う方法

特に OSS(オープンソースソフトウェア)の

脆弱性検知を行う方法として、

Vuls

については記載してきた。

しかしながら、脆弱性検知の方法としては、

他にも nessus や OpenVAS など、

ネットワーク脆弱性検査ツールを

利用する方法も考えられる。

ということで今回は、

Kali Linux に OpenVAS をインストールし、

Vuls での結果と比較してみたいと思う。

  1. OpenVAS とは?
  2. Kali Linux へのインストール
  3. 脆弱性検査の実施
  4. Vuls との比較
  5. まとめ


・OpenVAS とは?

OpenVAS とは、

Open Vulnerability Assessment Scanner

のことで、

ネットワーク経由で対象の脆弱性を検査できる、

ネットワーク脆弱性スキャナー

の一種。

正確には、脆弱性検査だけではなく、

脆弱性管理等もできる、

各種ツール群からなる

ソフトウェアフレームワークなのだが、

普通に使う分には、単に

ネットワーク脆弱性検査ツール

と認識しても問題ないだろうと思う。

公式サイトは

OpenVAS – Open Vulnerability Assessment System

にあるので、詳細はこちらを参照していただきたい。



・Kali Linux へのインストール

OpenVAS 自体は、本サイトにおいても、

脆弱性診断 – OpenVAS(インストール編) –

において、

raspberry pi へのインストール方法を、

また、

脆弱性診断 – OpenVAS(使い方編) –

において、基本的な使い方を、

各々説明してきた。

しかしながら、今回は

Vuls の結果と比較したい

というのもあり、

Kali Linux で Vuls を使う方法 – インストール編(1/2) –

以降に述べた、

Vuls をインストールした Kali Linux

にインストールしていく。

同じ Debian 系といえど、

raspberry pi へのインストールとは

方法が違う。

まずは apt コマンドで以下の通り

openvas をインストールする。

root@kali:~# apt install openvas

続いて、setup の実行。

root@kali:~# openvas-setup

CVE 情報のインストール等があるため、

数分程度かかるが、インストールは以上。

この際、最後に

admin

という user を作成したこと、

およびその default password が表示される。

これは実際に利用する際に必要となるので、

下図赤枠部分はメモしておいたほうがよい。

インストールが終了すると、

ブラウザが勝手に立ち上がる。

この際、OpenVAS が https サーバーを

立ち上げているのだが、そのサーバー証明書が

いわゆるオレオレ証明書となっているため、

警告が出る。

これに関しては、ブラウザの

[Advanced] -> [Add Exception] -> [Confirm Security Exception]

とクリックしていくことで、

以下のログイン画面に到達できる。

なお、この警告自体は、

証明書が信頼できない

ということを表しているため、

本来接続すべきではない。

今回は仮想マシンネットワークであり、

他者に攻撃される恐れがない状況で

実施していることに、注意していただきたい。

で、ログイン画面が出たら、

Username 部分に admin を、

Password 部分に先ほどメモしたパスワードを、

各々入力する。

以下のような画面が出てくれば、

インストール、起動の完了である。

なお、一旦再起動するなどした後に

OpenVAS を起動する際には、

root@kali:~# openvasmd

を実行した後、

root@kali:~# openvas-start

で起動できる。

ここで、ブラウザが自動で立ち上がらない場合は、

ブラウザを立ち上げて、

https://127.0.0.1:9392

にアクセスすればよい。



・脆弱性検査の実施

起動後、実際の脆弱性検査を行っていく。

OpenVAS を使った

基本的な脆弱性検査方法については、

脆弱性診断 – OpenVAS(使い方編) –

にも記載しているが、

今回は Vuls と比較することもあり、

SSH でログインした上での検査を行う。

前述の起動画面から、

Scan -> New Task

と選ぶと、以下のような画面が出てくるため、

Scan Target(図赤枠)

を押す。

そうすると、以下の通り、

スキャン対象に対する設定画面が

現れるため、

赤枠に示した host 部分に、

検査対象の IP address

(今回は 10.0.2.4)を指定する。

続いて、SSH 部分にある星マークをクリック。

すると、以下のような画面が出てくるため、

必要な項目を設定していく。

Name の部分は識別のためなのでなんでもよい。

Type 部分では、Dropdown List から

Username + SSH Key

を選択する。

次は、Username と Passphrase。

Username には、SSH でログインするための

user 名を入力。今回は scanuser となる。

Passphrase は該当 user でログインする際の

パスワードだが、

今回は公開鍵設定でログインするため、

検査対象である CentOS に登録した

公開鍵に対応する秘密鍵(id_ecdsa)の

パスワードを入力しておく。

また、SSH の秘密鍵自体は、

Private Key 部分の Browse ボタンを

押して選択する。

この際出てくるファイル、ディレクトリ一覧で

.ssh/ などが見つからない場合は、

フォルダ選択アプリの中で右クリックし、

「Show Hidden Files」

を選択すれば、見えるようになるはず。

最終的に、前述した scanuser に対応する

秘密鍵である、/home/vuls/.ssh/ 以下の

id_ecdsa

を選択する。

なお、今回は vuls 実行時のものを

使っているため、こういう選択をしているが、

普通に SSH 経由でスキャンする場合は、

それに合わせた設定をしてもらえればよい。

設定が終われば、あとはスキャンを実施していく。

今回は以下の結果(赤枠部分)となった。

検出されたのは三つだけ。

Severity 7.5 が最高で、

SSH Brute Fource Logins with Default Credentials Reporting

となっている。

で、その中身を見てみると、以下の通り。

root のパスワードを toor としていたので、

それが見事にばれている。

やっぱりこのあたりは

OpenVAS としても試すみたい。

二つ目は、

SSH で弱い暗号をサポートしている、

という話。

それ以外は脆弱性として検出されなかった。



・Vuls との比較

以前記載した、

Kali Linux で Vuls を使う方法 – スキャンの実施編 –

では、

Total : 872
High : 150
Medium : 637
Low : 85
exploit: 52

となっていた。

一応、CVE や OVAL、exploit db を

アップデートして vuls をかけたが、

exploit が 52 -> 51 となっているだけで、

結果はほぼ変わらず。

一方、OpenVAS では、前述の通り、

3 件しか検出できていない。

この違いを鑑みるに、

Vuls はやっぱり、

公開情報に基づいてサーバ内の脆弱性有無を確認

するものであり、

OpenVAS は、

ネットワーク経由で脆弱性を検査する

というものだということだろうか。

Vuls では CVE ベースで検出するため、

SSH でのブルートフォース攻撃などは

どうも検出できていないっぽい。

一方で OpenVAS はこれが検出できているが、

他にもありそうな脆弱性は検出されていない。

このあたり、OpenVAS のプラグイン等を

使ったり、もっと詳細な使い方がわかれば

解消できるのかもしれないが、

ひとまず現時点ではこんな印象を抱いた。

ということで、どちらか一方がよい、というよりも、

・Vuls で脆弱性の有無を常時確認

・修正できない脆弱性が突けるかは OpenVAS 等で確認

というような使い分けをするのがよさそうだ。



・まとめ

ということで今回は、

・Kali Linux に OpenVAS をインストールする。

・実行結果を Vuls の結果と比較する

ということをやってきた。

結果、どちらがよい、というよりも、

各ツールの特性を理解した上で、

うまく使い分けるのがよさそうだ、という

感覚を得た。

いままでいろいろなツールについて、

名前自体は知っていたものの、

何がどうちがうのか、までは

把握できていなかった。

しかしながら、今回、少なくとも

Vuls や OpenVAS を自分で

実際に使ってみることで、

その特性の違いや何に使えそうかなど、

自分なりに体験として理解できた。

やはり、単に知識として持っているだけではなく、

実感として持っていることは大きいと思う。

ということで今後もいろんなツールを

試していきたいと思っている。

今回のまとめは以下の通り。

今回の Point!・Install は apt install openvas で!
・セットアップは openvas-setup の実行で簡単!
・セットアップ時のパスワードはメモっておくべし!
・再起動時はopenvasmd、openvas-start 両方実行!
・Vuls は検査対象内部を中心にチェック、OpenVAS はネットワーク経由を中心にチェック!
・どちらか一方というより、用途によって使い分けを!





Copyright (c) 2017 Webmaster of this site All Rights Reserved.
カテゴリー: 未分類 パーマリンク