1
脆弱性スキャナ
(入門編)
インフラ勉強会
2018.3.31
Takayuki Ushida
自己紹介
• 牛田 隆之(Ushida Takayuki)
• フューチャー株式会社
– サイバーセキュリティイノベーショングループ
• Vulsのクラウドサービス版「FutureVuls」の開発
• 脆弱性スキャナVulsのビューアVulsRepoを開発
• Twitter/Qiita/GitHub
– usiusi360
2
3
みなさんサーバの
脆弱性対策ちゃんとやってますか?
4
昨今の脆弱性情勢と運用面の課題
毎日脆弱性に関するニュースで一杯
5抜粋)JVN
https://jvn.jp/
6
脆弱性報告件数の推移
抜粋)JPCERT CC.
ソフトウェア等の脆弱性関連情報の
取扱いに関する届出状況[2016年第3
四半期(7月~9月)]
https://www.jpcert.or.jp/press/2016/vul
nREPORT_2016q3.pdf
脆弱性の報告件数は、右肩あがり
抜粋)JPCERT CC.
ソフトウェア等の脆弱性関連情報の取
扱いに関する届出状況[2016年第3四半
期(7月~9月)]
https://www.jpcert.or.jp/press/2016/vuln
REPORT_2016q3.pdf
7
脆弱性対応は、時間との戦い!!
発見・対処が遅れるほど、外
部から脆弱性を突かれるリス
クが高くなる
• 脆弱性情報が公開されたということは、攻撃者にとっても脆弱性を突くた
めのヒントが公開されたってこと。
• 脆弱性が公開されたあと、それを標的にしたアタックが急増する。
• 実際には公表される前のゼロデイもあって怖い。
8
脆弱性の早期対応の重要性
- 8 -
2013年3月16日
不正アクセスを受け、クレジットカード情報が漏洩する事案が発生
(当時の不正侵入もStruts2の脆弱性を悪用するもの)
Struts2の脆弱性対応を含めて、厳格なセキュリティ対策を実施
(IPS、IDS、改ざん検知、FW、WAFの導入)
2017年3月22日
Struts2の脆弱性により不正アクセス発生
2013年の事案を元に十分な対策を行っていたが、
脆弱性の公表直後はIPS、IDS、WAFであっても
防ぐことが出来ない場合がある。
セキュリティ対策製品で固めても不十分。
根本的な対策には迅速なアップデートが必要。
J社における脆弱性対策と不正アクセスの例
経緯
Copyright ©2018 by Future Corporation. Japan
9
脆弱性情報を毎日ウォッチしつづけるのはツライ
• CVE等の脆弱性情報は追加だけではない!
過去の情報も頻繁に更新されている。
• 更新された内容に重大な内容(脆弱性レベル・対象)が含ま
れていても、話題になるのは一部だけ。
• 全てのアップデートについて毎回、自システムのインストー
ル構成と照らし合わせて影響があるか一つずつ確認する
のはタイヘン!チェック漏れがあったら一大事!!
脆弱性情報を元にした人力運用の限界
• 日々増えていく脆弱性を人が一つ一つ判断するのは限界
脆弱性対策の自動化が必要
脆弱性対スキャンツールを
適材適所で正しく使う
10
11
サーバにおける脆弱性対策
12
脆弱性対策にまず必要なのは、
「Visibility(可視化)」と、可視化したセキュリティ状況の「モニタリング」
「見えないことは、コントロール出来ない」
脆弱性対策の分類
近年、脆弱性の種類も多様化し、一つの対策方法だけでは防げない。
脆弱性対策
ネットワーク多
層防御
脆弱性診断
侵入
早期検知
13
公開サーバのネットワーク多層防御・侵入早期検知
SYN Flood攻撃(DoS攻
撃)
SQLインジェクション
クロスサイト
スクリプティング
ポートスキャン
指定IP以外の送信元
通信
コマンドインジェクショ
ン
F5攻撃(Dos攻撃)
Webアプリケーシ
ョン
サーバソフト
OS
ネットワーク
WAF
IPS
ファイアウ
ォール
Apache
mod_security
Apache
mod_dosdetector
Iptables
firewalld
14
脆弱性診断
Webアプリケー
ション
サーバソフトウ
ェア
OS
ネットワーク
Webアプリケーション
脆弱性スキャナー
ソフトウェア脆弱性
スキャナ
ネットワーク
脆弱性スキャナー
ネットワーク
ポートスキャナー
セキュリティ設定
監査ツール
Rapid7、Nessus、OpenVAS
Nmap
OpenVAS、OpenSCAP、 Lynis
OpenVAS、OpenSCAP
OWASP dependency-check
OpenVAS、OWASP ZAP、 Rapid7、Nessus、
Nikto
15
脆弱性スキャナVulsの紹
介
VULnarability Scanner
脆弱性 スキャナー
概要
潜在する脆弱性と該当サーバを可視化
定期実行で対策漏れがなくなる
17
Vuls普及の勢い世界で話題のツール
2016年4月にVulsをGitHubに公開し、10月1日にはランキングで約3,000万プロジェクト
中、1位を獲得し、世界中で話題となりました。
世界1位(約3,000万中)に!
世界 6位
世界 7位
世界12位
・・・・・・・・・
18
世界で話題のツール
コミュニティ活動も活発に
Vuls UserMeetup
第1回 91名
第2回 109名
第3回 130名
利用事例
これ以外にも・・・
・ NTTPCコミュニケーションズ
・ NTTレゾナント
・ ラクスル
・ レコチョク
等々
19
世界で話題のツール
- 19 -
ソフトウェアデザイン 2017年10月号
システムのセキュリティチェックをもっと楽に
脆弱性スキャナVuls入門
ソフトウェアデザイン 2018年1月号
脆弱性スキャナVulsがSaaSになってパワーアップ!
FutureVuls登場!
20
特徴
 オープンソース(GPLv3)
 エージェントレス (管理サーバにモジュール配置するのみ)
スキャン対象にはSSH接続のみ。非破壊で安全にスキャン。
AWSへの事前申請不要。
 セットアップ、初期設定が非常に簡単
 ディストリビューションパッケージ及びパッケージ以外のソフ
トウェアの脆弱性も検知可能(要CPE登録)
 オンプレ、クラウドの両方に対応
 幅広いLinuxディストリビューションに対応
(AmazonLinux、CentOS、Ubuntu、RHEL、FreeBSD、・・・)
 Dockerコンテナ対応(SSH不要)
 日本語でレポート可能
 豊富なレポート手段(Slack, e-mail, TUI, WebUI …)
21
VulsRepo
Vulsの豊富な通知・レポート手段
22
Vuls⇒SlackVulsのスキャン結果通知
 Email、Slack通知に対応(日本語で表示可)
23
Vuls TUI
Vuls TUIで簡単に結果をコンソールで閲覧可能。
Vulsのレポート表示(TUI)
24
VulsRepo
VulsRepoでVulsの結果をピボットテーブルのように色々な角度か
ら集計できる。またグラフ化することもできる。
Vulsのレポート表示(Web- VulsRepo)
25
VulsRepo
Qiita:VulsのログをCSVにしてExcelで可視化する
- Execlレポートにすることでシステムに直接アクセスできない監査組
織への定期報告に使える
Vulsのレポート表示(Excel連携)
26
VulsRepo
Qiita:VulsのログをElasticSearchに取り込んで可視化する
– オンプレ環境で大量のログを集計、可視化する際に有効
Vulsのレポート表示(ElasticSearch+Kibana連携)
27
Vuls構成パターン
28
Vuls構成パターン①
Vulsはエージェントレス、スキャンし
たいサーバにSSH接続するだけでチ
ェックが行えます。疑似攻撃を行うわ
けではないためシステムに影響を与
えることなく安全にスキャンできます。
リモートサーバをスキャン
Vulsをインストールしたサーバ自身を
スキャンする場合です。
SSH不要でスキャン可能です。
ローカルサーバをスキャン
SSH
SSH
SSH
No SSH
29
Vuls構成パターン②
dockerコンテナ内のスキャンを行う場合、「docker exec」コマンドを介してチェックします。
そのためdockerコンテナ内にSSHデーモンは必要ありません。Vulsをインストールした
サーバ以外にリモートのサーバであっても同様にスキャン可能です。
Dockerコンテナをスキャン
SSH
docker execdocker exec
30
Vuls構成パターン③
複数のシステムを運用していて、それぞれが別々のネットワークに分離されて
いるような環境の場合、個々のVulsサーバでスキャン時に出力されたJSONフ
ァイルを一箇所に集めることで、横断的に分析することができます。
複数のVulsサーバによる運用
31
ハンズオン環境
Amazon
EC2
Amazon
EC2
CentOS7.4
Minimal
Ubuntu
16.04LTS
CentOS
リポジトリ
Ubuntu
リポジトリ
32
ハンズオン マニュアル
インストール
https://vuls.io/docs/ja/install-manually-centos.html
ローカルスキャン
https://vuls.io/docs/ja/tutorial-local-scan.html
リモートスキャン
https://vuls.io/docs/ja/tutorial-remote-scan.html
VulsRepo
https://vuls.io/docs/ja/vulsrepo.html
33
FutureVuls(Vulsクラウドサービス)
2018年1月開始
34
Vuls 参考情報
• GitHub
https://github.com/future-architect/vuls
• マニュアル
https://vuls.io
※日本語マニュアルがあります。
• コミュニティSlack
https://vuls-github.slack.com/messages/vulsjp/
• Qiita:脆弱性スキャナVuls 関連リンク集
http://qiita.com/usiusi360/items/aeb3cd3630badfacdb4e

脆弱性スキャナVuls(入門編)