手軽にできる外部公開サーバ観測の効用と活用法 @ internet week 2016
TRANSCRIPT
© Walti, Inc.
自己紹介
• 藤崎 正範 ( Fujisaki Masanori )
株式会社ハートビーツ 代表取締役株式会社ウォルティ 代表取締役日本MSP協会 理事
• 2005年に株式会社ハートビーツを設立
• 2014年7月に株式会社ウォルティを設立
• 2014年11月に日本MSP協会の設立に参画
インフラエンジニアとして活動する傍ら、日本のサーバーのセキュリティ水準を上げていこうと
「サーバーサイドのセキュリティスキャンを身近にする活動」にWalti.ioの提供を通じて取り組む。
日本MSP協会ではMSPの認知度向上に努める。
お伝えしたいこと
低予算でもできる状況把握のすすめ
オープンソースの活用をはじめとした、低予算で取り組む手軽で簡便な状況把握の手法とその意義を紹介します。
特に「あえて簡便な手法に取り組むメリット」を、その特徴や事例を交えながら紹介し、取り組みを始めるきっかけを提供します。
円滑な対応のすすめ
現状把握により明らかになった問題への対応の進め方を、MSP事業者の立場からご紹介します。特に、対応を円滑に進めるために有用な考慮ポイントを解説します。
企業の現実
Webサイトのセキュリティ対策、バッチリしていますか?
自信をもって回答するには状況を把握していることが大切
でもその予算すらないこと多い…
➜バッチリしています一部していますしていません
公開サーバの現実①
NetBIOS
日本 38,403
世界 1,949,422
MSSQL
日本 4,210
世界 166,696
Memcached
日本 3,940
世界 136,536
MongoDB
日本 1,388
世界 67,885
PortMapper
日本 39,556
世界 2,696,755
意図せずインターネットに公開されているサービスの状況
全て設定が不適切なサーバ
[引用元]http://www.shadowserver.org
公開サーバの現実②CMSの管理が不十分で生じるインシデントの増加
https://www.ipa.go.jp/security/ciadr/vul/20140619-oldcms.html
http://internet.watch.impress.co.jp/docs/news/754960.html
管理の行き届かないWebサイトは実際に悪用される
状況把握の選択肢
実施コスト
(費用・実施難易度
)
チェック観点の深さ、精度
攻撃試行が含まれるためサービス影響が発生しうる、手軽には実施できない
通常アクセスの範囲のためサービス影響が生じにくく手軽に実施しやすい
有償
Walti.ioなど
無償
nmap,wpscan,nikt
o,sslscanなど
有償
Nessus,Qualys,A
ppScan,VEXなど
無償
OpenVAS,skipfish
など
有償セキュリティ診断サービス
無償なし
まずは最低限のベースライン極力コストを掛けず、できるところから
有償
Walti.ioなど
無償
nmap,wpscan,nikt
o,sslscanなど
ここに着目!簡単に見つかるウィーケストリンク(最も弱い鎖の輪)をなくす=セキュリティ水準の底上げ
組織として有事の説明責任を果たせる最低ラインを満たす
具体的な取り組み
2016/11/30 © Walti, Inc.
カテゴリ ツール名 概要
ポートスキャナ nmap 公開サービスを検出
脆弱性スキャナ Nikto Webサーバの設定や管理の不備を検出
WPScan Wordpressの脆弱性を検出
設定スキャナ sslscan SSLの設定を外部から検出
オープンソースの活用
有償サービスの利用
無償!
スキャン対象 内容 Web料金 API料金
Firewall nmap ¥10 ¥8
SSL/TLS sslyze ¥5 ¥4
Web Server Nikto ¥10 ¥8
Web App skipfish ¥100 ¥80
WordPress WPScan 無料 無料
[参考]
価格はサービス次第
$ nmap -sS -sV -p 0-65535 203.0.113.1
Nmap (v7.01) scan report for (203.0.113.1)
22/tcp openOpenSSH 5.3 OpenSSH 5.3
80/tcp openApache httpd 2.2.15Apache httpd 2.2.15
3306/tcp openMySQL 5.1.73 MySQL 5.1.73
Nmap done at Sat Nov 26 01:46:53 2016; 1 IP address (1 host up)
scanned in 994.57 seconds
nmap
© Walti, Inc.
外部に公開されたサービスを明らかにする
検出されたサービスとバナー情報
WPScan
© Walti, Inc.
Wordpressの脆弱性の有無を確認する
$ ./wpscan.rb --url 203.0.113.1 --wp-content-dir wordpress
____________________________________________________________
___
__ _______ _____
\ \ / / __ \ / ____|
\ \ /\ / /| |__) | (___ ___ __ _ _ __
\ \/ \/ / | ___/ \___ \ / __|/ _` | '_ \
\ /\ / | | ____) | (__| (_| | | | |
\/ \/ |_| |_____/ \___|\__,_|_| |_|
WordPress Security Scanner by the WPScan Team
Version 2.9.1
Sponsored by Sucuri - https://sucuri.net
[+] WordPress version 4.4.4 identified from advanced fingerprinting
(Released on 2016-06-21)
[!] 2 vulnerabilities identified from the version number
[!] Title: WordPress 2.8-4.6 - Path Traversal in Upgrade Package Uploader
Reference: https://wpvulndb.com/vulnerabilities/8616
Reference: https://wordpress.org/news/2016/09/wordpress-4-6-1-
security-and-maintenance-release/
Reference:
https://github.com/WordPress/WordPress/commit/54720a14d85bc11
検出されたバージョンと該当する脆弱性
Nikto
© Walti, Inc.
Webサーバの脆弱性や不適切な設定を明らかにする
$ nikto --host 203.0.113.1
- Nikto v2.1.4
---------------------------------------------------------------------------
+ Target IP: 203.0.113.1
+ Target Hostname: 203.0.113.1
+ Target Port: 80
+ Start Time: 2016-11-22 11:25:12
---------------------------------------------------------------------------
+ Server: Apache/2.4.7 (Ubuntu)
+ Retrieved x-powered-by header: PHP/5.5.9-1ubuntu4.17
+ OSVDB-3092: /phpMyAdmin/: phpMyAdmin is for managing MySQL
databases, and should be protected or limited to authorized hosts.
+ OSVDB-3233: /info.php: PHP is installed, and a test script which runs
phpinfo() was found. This gives a lot of system information.
+ /readme.html: This WordPress file reveals the installed version.
+ /wp-admin/: Admin login page/section found.
+ 6448 items checked: 0 error(s) and 8 item(s) reported on remote host
+ End Time: 2016-11-22 11:25:34 (22 seconds)
---------------------------------------------------------------------------
+ 1 host(s) tested
検出された脆弱性
sslscan
© Walti, Inc.
SSLの不適切な設定を明らかにする
$ sslscan www.example.jp
_
___ ___| |___ ___ __ _ _ __
/ __/ __| / __|/ __/ _` | '_ \
\__ \__ \ \__ \ (_| (_| | | | |
|___/___/_|___/\___\__,_|_| |_|
Version 1.8.2
http://www.titania.co.uk
Copyright Ian Ventura-Whiting 2009
Testing SSL server www.example.jp on port 443
Supported Server Cipher(s):
Failed SSLv3 256 bits ECDHE-RSA-AES256-GCM-SHA384
Failed SSLv3 256 bits ECDHE-ECDSA-AES256-GCM-SHA384
Failed SSLv3 256 bits ECDHE-RSA-AES256-SHA384
Failed SSLv3 256 bits ECDHE-ECDSA-AES256-SHA384
Rejected SSLv3 256 bits ECDHE-RSA-AES256-SHA
Rejected SSLv3 256 bits ECDHE-ECDSA-AES256-SHA
Failed SSLv3 256 bits SRP-DSS-AES-256-CBC-SHA
Failed SSLv3 256 bits SRP-RSA-AES-256-CBC-SHA
Failed SSLv3 256 bits SRP-AES-256-CBC-SHA
Failed SSLv3 256 bits DHE-DSS-AES256-GCM-SHA384
SSL設定を確認
オープンソース活用の課題
© Walti, Inc.
費用はかからないものの手間がかかる
前提知識が必要なツールも多い
• 環境構築の手間• 実施の手間
• 善し悪しの判別基準が別途必要• 担当者の属人的な解釈では水準を一元化できない
続かない
• 他業務の片手間ではなかなか定期実施は定着しない• 自動実行まで作りこめる人や組織は限られる
• 実施結果確認の手間• 関係者共有の手間
ここまでのまとめ
© Walti, Inc.
手軽で簡便なチェックにはメリットがある
オープンソースを使えばタダ、ただし少し面倒
面倒を解消するリーズナブルなサービスもあるよ
nikto
低リスク 調整負荷なし
最低水準の底上げ
不慮の事故防止①
© Walti, Inc.
とあるWebサイト管理者の事例
急遽Webサイトが必要になったため急ごしらえで構築セキュリティの考慮が不十分なままサービスインしてしまった
スキャンを実施、問題を認知し、早々に対処ヒアリングによると対応に要した時間はわずか3時間
内容 所要時間
脆弱性対応の調査 1.5h
対応作業 0.5h
対応後の動作チェック 1.0h
不慮の事故防止②
© Walti, Inc.
とあるクラウドサービス利用者
運用担当がセキュリティグループの設定を一時的にオープンにしたところそのまま放置してしまった
ポートスキャンにより設定の不備を認知、攻撃を受ける前に対処することができた
再発防止を目的に定期スキャンを実施
管理の省力化
© Walti, Inc.
WordPressに脆弱性が出やすく、NISCやIPAからの注意喚起や利用者からの指摘を受けるなど、Webサイトの管理に苦慮していた
管理する全FQDNにCMSスキャン(wpscan)を実施、問題箇所の洗い出しと担当者への対策指示を短時間に完了
新しい問題を迅速に認知できるようにwalti.ioのスケジューラで毎週実行するように設定、合わせて他のスキャンも実施することに
とあるgo.jpの事例
手戻りの防止
© Walti, Inc.
開発完了後にセキュリティ診断が義務づけられており、指摘事項の修正によりリリーススケジュールへの影響が懸念
開発段階からwaltio.ioで簡易スキャンを行い適宜対策を実施
セキュリティ診断の指摘を最小限にとどめることができ、無事スケジュール通りにリリース
とある開発会社の事例
いまはどんな時代?
- セキュリティ課題を後回しにしていい時代はとうに終わった。
© Walti, Inc.
基本的なことは自分たちではじめる時代
- アウトソースするコストが取れないなら、今いるメンバーに、最低限のセキュリティ管理を担ってもらう必要がある時代
- 事業継続のためにセキュリティ課題を主体的に解決していく時代
- でも、セキュリティエンジニアは普通の会社は採用できない
- それではどうするか、アウトソースする予算ある?
組織と人の変化
- 課題に蓋をしたり、見ないようにすることはナンセンス
- 経験することで人は習熟していく、セキュリティ対応も同じ
- マネジメント層やプロジェクトマネージャは今までエンジニアに「信頼して任せる」ことしかできなかったが、報告がなくてもスキャン結果を見れば対応が必要なものが把握できる。
- セキュリティ課題の把握が容易になることで、一人一人が積極的に課題を認識し、当事者意識をもって解決に取り組めるようになる
© Walti, Inc.
「文化の醸成」これこそが最大のメリット
対応の進め方
© Walti, Inc.
自社で抱え込まず、事業者との協力が円滑な対応の秘訣
開発会社(SIer) 運用会社(MSP)
対応要否検討 対応手法検討 対応実施
• すぐやる• あとでやる• やらない
• だれが• どうやって• サービス影響• 検証手法
検討事項は多い・・・
など
• 作業実施• 再スキャン
MSPの気持ち
お客さまとよい関係を維持して末永くおつきあいしたい
そのためにもインシデントはできるだけなくしたい
© Walti, Inc.
作るまでのSIerと、継続的に運用を請け負うMSPの違い
セキュリティを高め維持することは双方の良好な信頼関係の維持につながるため、できる範囲で前向きに協力したい
➜インシデントは時間を失い、不信感が生まれる(MSPのせいではなくても)
協力を得るために有効なこと
一緒に事業を支えるパートナーとしての関係性
• 担当者の心情への配慮、安易に下請け扱いをしない
• 手段の強要はしない、餅は餅屋に任せる
• そのほかパワーバランスに基づく一方的な要求はしない
日頃からのコミュニケーション
• お客様の事業ビジョン、課題の共有
• 懇親会(≠接待)
© Walti, Inc.
中の人もやっぱり人間、日頃からの良好な関係性が要
円滑に対応を進めるために
どんなに小さな案件でも、ステージングサーバを準備する
テストができないと対策を進めることが難しい
セキュリティに意識のある会社を開発パートナーに選ぶ
MSPが頑張ってもMSPだけでは解決しないことも多い
経営層まで含めたセキュリティ対応への理解の醸成必要な意思決定、コスト負担ができる下準備
© Walti, Inc.
顧客側でも最低限の備えが必要