サーバ脆弱性スキャナ vuls を openstack 環境で使ってみた
TRANSCRIPT
サーバ脆弱性スキャナ Vulsを OpenStack 環境で使ってみた
日本仮想化技術株式会社VitrualTech.jp
今日お話ししたいこと
2
サーバ脆弱性の確認 自作
パッケージ Vuls
Vuls とは
Vuls 環境の構築手順
Vuls の使い方 スキャン
確認 CUI
GUI
サーバ脆弱性の確認
3
OpenStack Summit Barcelona での NTT ドコモ発表「 Expanding and Deepening NTT DOCOMO‘s Private Cloud 」http://www.slideshare.net/VirtualTech-JP/expanding-and-deepening-ntt-docomos-private-cloud-openstack201612
脆弱性管理ソフトウェア VulsVuls (VULnerability Scanner)
– フューチャーアーキテクトが開発– オープンソースソフトウェアで提供
• https://github.com/future-architect/vuls– Linux サーバに存在する脆弱性のスキャナ
• Ubuntu, Debian, CentOS, Amazon Linux, RHEL などに対応– エージェントレス– スキャン結果を CUI や GUI で確認– メールや Redmine や Slack との連携も可能
4
Vuls 環境の構築手順• OpenStack 基盤に Vuls をインストール
– Vuls サーバを用意し、 Vuls をインストール• API / Management ネットワークに Vuls サーバを用意• スキャン対象のサーバに ssh でログインできる必要があ
ります– スキャン対象のサーバに Vuls 用のアカウントを作成
• 今回はコントローラ・コンピュートノードをスキャン対象とします
• スキャンの際にパッケージ管理ソフトを用いるので root 権限が必要です
• (/etc/sudoers に nonpasswd の設定することを推奨されています )
– Vuls サーバから鍵認証でログイン可能にしておく5
参考情報: Vuls + OpenStack 環境構築スクリプトhttps://github.com/openstack-lab/vuls_install_script
構築した Vuls + OpenStack 環境
6
コンピュート2 台
コントローラ2 台
スキャン & 可視化サーバ172.28.1.219
172.28.1.62172.28.1.63
172.28.1.65172.28.1.66
Vuls の使い方①• 対象サーバに対してサーバ脆弱性をチェック
– go-cve-dictionary の更新– Vuls 自体の更新– CVE 情報を更新– スキャン開始– 結果をメールや Redmine や slack などに送信
7
Vuls の使い方②% vi config.toml
[default]port = "22"user = "vuls"keyPath = "/home/vuls/.ssh/id_rsa”
[servers][servers.172-28-1-62]host = "172.28.1.62”..........
8
Vuls の使い方③% vuls scan -cve-dictionary-dbpath=/opt/vuls/cve.sqlite3INFO[0000] Start scanning INFO[0000] config: /opt/vuls/config.toml INFO[0000] cve-dictionary: /opt/vuls/cve.sqlite3 [Dec 7 15:20:54] INFO [localhost] Validating Config...[Dec 7 15:20:54] INFO [localhost] Detecting Server/Contianer OS... [Dec 7 15:20:54] INFO [localhost] Detecting OS of servers... [Dec 7 15:20:55] INFO [localhost] (1/4) Detected: 172-28-1-65: ubuntu 14.04[Dec 7 15:20:55] INFO [localhost] (2/4) Detected: 172-28-1-66: ubuntu 14.04[Dec 7 15:20:55] INFO [localhost] (3/4) Detected: 172-28-1-63: ubuntu 14.04[Dec 7 15:20:55] INFO [localhost] (4/4) Detected: 172-28-1-62: ubuntu 14.04[Dec 7 15:20:55] INFO [localhost] Detecting OS of containers... [Dec 7 15:20:55] INFO [localhost] Checking sudo configuration... [Dec 7 15:20:55] INFO [172-28-1-65] sudo ... OK[Dec 7 15:20:55] INFO [172-28-1-63] sudo ... OK[Dec 7 15:20:55] INFO [172-28-1-66] sudo ... OK[Dec 7 15:20:55] INFO [172-28-1-62] sudo ... OK[Dec 7 15:20:55] INFO [localhost] Detecting Platforms... [Dec 7 15:21:07] INFO [localhost] (1/4) 172-28-1-65 is running on other[Dec 7 15:21:07] INFO [localhost] (2/4) 172-28-1-66 is running on other[Dec 7 15:21:07] INFO [localhost] (3/4) 172-28-1-63 is running on other[Dec 7 15:21:07] INFO [localhost] (4/4) 172-28-1-62 is running on other
9
CUI による可視化
10
GUI による可視化
11
CVSS Severity Score
脆弱性情報、対象サーバ、対象ソフトウェア、対象バージョンなど
参考情報: Vuls
Vuls: VULnerability ScannerGitHub: Vuls
https://github.com/future-architect/vuls/
今もっともイケてる脆弱性検知ツール Vuls を使ってみた : Qiita
http://qiita.com/sadayuki-matsuno/items/0bb8bb1689425bb9a21c
脆弱性スキャナ Vuls による対策支援の課題 : Internet Weekhttp://www.slideshare.net/kotakanbe/internet-week2016
GitHub: vulsrepohttps://github.com/usiusi360/vulsrepo
Vuls slack 連携https://blog.animereview.jp/vuls/12
参考情報: Vuls + OpenStack
OpenStack 共同検証ラボサーバーの脆弱性管理に関して (OpenStack + Vuls) - OpenStack 最新情報セミナー (2016 年 12 月 )
http://www.slideshare.net/VirtualTech-JP/openstack-vuls-openstack201612
Vuls + OpenStack 環境構築スクリプトhttps://github.com/openstack-lab/vuls_install_script
13