サーバーの脆弱性管理に関して
株式会社ブロードバンドタワー
Cloud&SDN研究所
岩本裕真
自己紹介
2016/12/1 All rights reserved. ©BroadBand Tower, Inc. 2016 2
2015年4月 株式会社ブロードバンドタワー入社
Cloud&SDN研究所
所属
当社クラウド系新規サービス開発・構築・運用
時々IoTやっています。
Interop 2014・2016 STM参加
学生時代は、データセンターネットワークの無線化に関する研究をしていまし
た。
皆さんはサーバの脆弱性管理を
どのように行っていますか?
3
OpenStackのセキュリティ問題
2016/12/1 All rights reserved. ©BroadBand Tower, Inc. 2016 4
「OpenStack 脆弱性」とグーグル検索すると多くの脆弱性情報がヒットする。
例
よくある脆弱性の管理
2016/12/1 All rights reserved. ©BroadBand Tower, Inc. 2016 5
Excel・スプレッドシート等の表計算ソフト
これがおおい?
てきとーに管理(管理できてない)
学術系とか個人とかに多い!?
自社開発ソフトによる自社運用
開発力のある会社では、やっている。
2016/12/1 All rights reserved. ©BroadBand Tower, Inc. 2016 6
OpenStackには、各サーバの脆弱性情報を管理する
ための機能がない。
オープンソース脆弱性管理ソフトウェア Vuls
2016/12/1 All rights reserved. ©BroadBand Tower, Inc. 2016 7
vuls(VULnerability Scanner)
フューチャーアーキテクトが開発
オープンソースソフトウェア
https://github.com/future-architect/vuls
Go言語で実装
Linux・BSDのディストリビューションを問わずスキャン可能
エージェントレススキャン
SSH経由
メール・Slack連携が可能
ブラウザから可視化された表で管理できる。
表のパラメータの操作が可能。
2016/12/1 All rights reserved. ©BroadBand Tower, Inc. 2016 8
低コストに組織内シーサート(Internal CSIRT)運用することが
できる。
CUIよる可視化の例
2016/12/1 All rights reserved. ©BroadBand Tower, Inc. 2016 9
ブラウザによる可視化の例
2016/12/1 All rights reserved. ©BroadBand Tower, Inc. 2016 10
どのように運用するか
2016/12/1 All rights reserved. ©BroadBand Tower, Inc. 2016 11
構築方法・現状のシステムへの組み込み。
スキャン対象までのリーチャビリティがあるマシンにvulsをインストール
スキャン対象に対してスキャン用のアカウントを作成しておく。
スキャンの際にパッケージ管理ソフトを用いるのでroot権限が必要となる。
(/etc/sudoersにnonpasswdの設定することを推奨されています)
vulsサーバから鍵認証でログイン可能にしておく。
Ansible等の構成管理ツールを用いれば運用中のサーバにも一括で適応可能である。
どのように運用するか
2016/12/1 All rights reserved. ©BroadBand Tower, Inc. 2016 12
任意のサイクルで以下上から順番に実行
go-cve-dictionaryの更新
vuls自体の更新
CVE情報を更新
スキャン開始
結果をslackに送信
WebまたはSlackで確認
※Slackに送る際には、スキャン結果が多すぎるとSlack側で弾くかれてしまうの
でCVSSスコアでフィルタする。(展望)
デモ
13
デモ環境
2016/12/1 All rights reserved. ©BroadBand Tower, Inc. 2016 14
検証用コンピュートノード・コントローラーノードに対してスキャン
スキャン結果をslackへ送信・確認
compute 2台 controller 2台 スキャン&可視化サーバ
172.28.1.219
172.28.1.62
172.28.1.63
172.28.1.65
172.28.1.66
感じた事
2016/12/1 All rights reserved. ©BroadBand Tower, Inc. 2016 15
GUIも非常に見やすく簡単に集約管理が行えるのでとても便利。
Vulsは、パスワードを用いたSSH通信の管理をサポートしていないので鍵ベー
スの認証管理をすることを求められている。
ルート権限を与えるので秘密鍵の管理が非常に重要となる。
会社の認証に関するセキュリティポリシーに適応できるか。
Slackへの送信で結果の表示が多すぎるとSlackで弾かれてしまう
より情報を圧縮した形式でSlackに送る実装もしくは、間引いて送る事が求められる。
有料版でもCVSSスコアでフィルタリングしないと厳しい。
現状の逃げ道は、メールで結果を送信する。
Appendix
参考サイト
2016/12/1 All rights reserved. ©BroadBand Tower, Inc. 2016 17
vuls
https://github.com/future-architect/vuls
vulsrepo
https://github.com/usiusi360/vulsrepo
slack連携
https://blog.animereview.jp/vuls/
スクリプト
2016/12/1 All rights reserved. ©BroadBand Tower, Inc. 2016 18
OpenStack-Labのgithub URL
Ubuntu14.04用インストールスクリプト
https://github.com/yuma-bbt/vuls_install_script
cronスクリプト
https://github.com/openstack-lab/vuls_install_script/blob/master/cron_script.sh
参考コンフィグファイル
https://github.com/openstack-lab/vuls_install_script/blob/master/config.toml
2016/12/1All rights reserved. © BroadBand Tower, Inc. 2016 19

サーバーの脆弱性管理に関して(OpenStack + Vuls) - OpenStack最新情報セミナー(2016年12月)

  • 1.
  • 2.
    自己紹介 2016/12/1 All rightsreserved. ©BroadBand Tower, Inc. 2016 2 2015年4月 株式会社ブロードバンドタワー入社 Cloud&SDN研究所 所属 当社クラウド系新規サービス開発・構築・運用 時々IoTやっています。 Interop 2014・2016 STM参加 学生時代は、データセンターネットワークの無線化に関する研究をしていまし た。
  • 3.
  • 4.
    OpenStackのセキュリティ問題 2016/12/1 All rightsreserved. ©BroadBand Tower, Inc. 2016 4 「OpenStack 脆弱性」とグーグル検索すると多くの脆弱性情報がヒットする。 例
  • 5.
    よくある脆弱性の管理 2016/12/1 All rightsreserved. ©BroadBand Tower, Inc. 2016 5 Excel・スプレッドシート等の表計算ソフト これがおおい? てきとーに管理(管理できてない) 学術系とか個人とかに多い!? 自社開発ソフトによる自社運用 開発力のある会社では、やっている。
  • 6.
    2016/12/1 All rightsreserved. ©BroadBand Tower, Inc. 2016 6 OpenStackには、各サーバの脆弱性情報を管理する ための機能がない。
  • 7.
    オープンソース脆弱性管理ソフトウェア Vuls 2016/12/1 Allrights reserved. ©BroadBand Tower, Inc. 2016 7 vuls(VULnerability Scanner) フューチャーアーキテクトが開発 オープンソースソフトウェア https://github.com/future-architect/vuls Go言語で実装 Linux・BSDのディストリビューションを問わずスキャン可能 エージェントレススキャン SSH経由 メール・Slack連携が可能 ブラウザから可視化された表で管理できる。 表のパラメータの操作が可能。
  • 8.
    2016/12/1 All rightsreserved. ©BroadBand Tower, Inc. 2016 8 低コストに組織内シーサート(Internal CSIRT)運用することが できる。
  • 9.
    CUIよる可視化の例 2016/12/1 All rightsreserved. ©BroadBand Tower, Inc. 2016 9
  • 10.
    ブラウザによる可視化の例 2016/12/1 All rightsreserved. ©BroadBand Tower, Inc. 2016 10
  • 11.
    どのように運用するか 2016/12/1 All rightsreserved. ©BroadBand Tower, Inc. 2016 11 構築方法・現状のシステムへの組み込み。 スキャン対象までのリーチャビリティがあるマシンにvulsをインストール スキャン対象に対してスキャン用のアカウントを作成しておく。 スキャンの際にパッケージ管理ソフトを用いるのでroot権限が必要となる。 (/etc/sudoersにnonpasswdの設定することを推奨されています) vulsサーバから鍵認証でログイン可能にしておく。 Ansible等の構成管理ツールを用いれば運用中のサーバにも一括で適応可能である。
  • 12.
    どのように運用するか 2016/12/1 All rightsreserved. ©BroadBand Tower, Inc. 2016 12 任意のサイクルで以下上から順番に実行 go-cve-dictionaryの更新 vuls自体の更新 CVE情報を更新 スキャン開始 結果をslackに送信 WebまたはSlackで確認 ※Slackに送る際には、スキャン結果が多すぎるとSlack側で弾くかれてしまうの でCVSSスコアでフィルタする。(展望)
  • 13.
  • 14.
    デモ環境 2016/12/1 All rightsreserved. ©BroadBand Tower, Inc. 2016 14 検証用コンピュートノード・コントローラーノードに対してスキャン スキャン結果をslackへ送信・確認 compute 2台 controller 2台 スキャン&可視化サーバ 172.28.1.219 172.28.1.62 172.28.1.63 172.28.1.65 172.28.1.66
  • 15.
    感じた事 2016/12/1 All rightsreserved. ©BroadBand Tower, Inc. 2016 15 GUIも非常に見やすく簡単に集約管理が行えるのでとても便利。 Vulsは、パスワードを用いたSSH通信の管理をサポートしていないので鍵ベー スの認証管理をすることを求められている。 ルート権限を与えるので秘密鍵の管理が非常に重要となる。 会社の認証に関するセキュリティポリシーに適応できるか。 Slackへの送信で結果の表示が多すぎるとSlackで弾かれてしまう より情報を圧縮した形式でSlackに送る実装もしくは、間引いて送る事が求められる。 有料版でもCVSSスコアでフィルタリングしないと厳しい。 現状の逃げ道は、メールで結果を送信する。
  • 16.
  • 17.
    参考サイト 2016/12/1 All rightsreserved. ©BroadBand Tower, Inc. 2016 17 vuls https://github.com/future-architect/vuls vulsrepo https://github.com/usiusi360/vulsrepo slack連携 https://blog.animereview.jp/vuls/
  • 18.
    スクリプト 2016/12/1 All rightsreserved. ©BroadBand Tower, Inc. 2016 18 OpenStack-Labのgithub URL Ubuntu14.04用インストールスクリプト https://github.com/yuma-bbt/vuls_install_script cronスクリプト https://github.com/openstack-lab/vuls_install_script/blob/master/cron_script.sh 参考コンフィグファイル https://github.com/openstack-lab/vuls_install_script/blob/master/config.toml
  • 19.
    2016/12/1All rights reserved.© BroadBand Tower, Inc. 2016 19

Editor's Notes

  • #5 セキュリティ