Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Features
Speaker Deck
PRO
Sign in
Sign up for free
Search
Search
20151206_AWS+Security
Search
tsb
December 06, 2015
Technology
0
760
20151206_AWS+Security
「JAWS-UG京王線 第4回 攻めと守りのセキュリティ&監視」にて発表した資料です
tsb
December 06, 2015
Tweet
Share
More Decks by tsb
See All by tsb
WordPress Hardening CheetSheet 8/20
tsb
1
1.1k
Other Decks in Technology
See All in Technology
SDN の Hype Cycle を一通り経験してみて思うこと / Going through the Hype Cycle of SDN
mshindo
1
110
開発生産性を上げながらビジネスも30倍成長させてきたチームの姿
kamina_zzz
2
1.7k
LINEヤフーにおけるPrerender技術の導入とその効果
narirou
1
110
ドメインの本質を掴む / Get the essence of the domain
sinsoku
2
160
Flutterによる 効率的なAndroid・iOS・Webアプリケーション開発の事例
recruitengineers
PRO
0
120
iOS/Androidで同じUI体験をネ イティブで作成する際に気をつ けたい落とし穴
fumiyasac0921
1
110
OCI Security サービス 概要
oracle4engineer
PRO
0
6.5k
『Firebase Dynamic Links終了に備える』 FlutterアプリでのAdjust導入とDeeplink最適化
techiro
0
160
エンジニア人生の拡張性を高める 「探索型キャリア設計」の提案
tenshoku_draft
1
130
マルチプロダクトな開発組織で 「開発生産性」に向き合うために試みたこと / Improving Multi-Product Dev Productivity
sugamasao
1
310
RubyのWebアプリケーションを50倍速くする方法 / How to Make a Ruby Web Application 50 Times Faster
hogelog
3
950
Amazon CloudWatch Network Monitor のススメ
yuki_ink
1
210
Featured
See All Featured
Teambox: Starting and Learning
jrom
133
8.8k
The Straight Up "How To Draw Better" Workshop
denniskardys
232
140k
Build your cross-platform service in a week with App Engine
jlugia
229
18k
Gamification - CAS2011
davidbonilla
80
5k
Raft: Consensus for Rubyists
vanstee
136
6.6k
Scaling GitHub
holman
458
140k
Dealing with People You Can't Stand - Big Design 2015
cassininazir
364
24k
Git: the NoSQL Database
bkeepers
PRO
427
64k
Easily Structure & Communicate Ideas using Wireframe
afnizarnur
191
16k
Responsive Adventures: Dirty Tricks From The Dark Corners of Front-End
smashingmag
250
21k
Fantastic passwords and where to find them - at NoRuKo
philnash
50
2.9k
How to Think Like a Performance Engineer
csswizardry
20
1.1k
Transcript
AWS + セキュリティ Kazuki Tsubo 2015/12/6 JAWS-UG京王線 第4回 攻めと守りのセキュリティ&監視
Who - Name - 坪 和樹 @TSB_KZK - facebook: https://www.facebook.com/kazuki.tsub -
History - 某新聞社でウェブエンジニア - 某社でサポートエンジニア - 好き・得意 - 好き: API Gateway - 得意: ElastiCache
プライベート - OWASP Japanプロモーションチーム - MINI Hardening 主催 - http://minihardening.connpass.com/event/
- シェル芸とか
諸注意 - 本資料は公開情報から個人的に作成した資料です。所属会 社の意見や見解を示すものではありません。 - 前提として、ウェブアプリケーションのセキュリティに関するセッ ション資料となります。
Agenda 1. OWASP について 2. AWS WAF 3. ホワイトペーパー 4.
vs DDoS 5. 経験を積む
OWASP のちのち繋がるので少し宣伝させてください・・・
None
None
None
None
None
None
ぜひ OWASP TOP 10 で検索を
ウェブアプリケーションに 必要な対策
攻撃手法は様々 - SQL Injection - XSS - CSRF - マルウェア
- バックドア - 標的型攻撃 etc...
対策 - 多層防御 - 入口対策 - WAF - 検知・監視 -
Inspector - ウィルス対策ソフト - 出口対策 - NetworkACL - FireEye / i-Filter / etc... ※思いつくままに挙げただけです
AWS WAF
AWS WAF の機能 - SQL injection - OWASP TOP10 でトップの
“Injection” に対応 - リクエスト内の特定の文字列を検知 - ツールからのリクエスト - bot - 脆弱性診断ツール(ZAP / burp / Nessus / etc...) - IPアドレス指定 - ブラックリスト / ホワイトリスト
判定のロジック - 詳しくはドキュメントを。 http://docs.aws.amazon. com/ja_jp/waf/latest/developerguide/web-acl.html
アクセスログ - CloudFront のアクセスログで配信される - WAF で拒否された場合は 403 となる。 -
ただ、WAF で拒否されたこと自体は明示的には出力されない ・ログの例 document: http://docs.aws.amazon. com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/AccessLogs.html#BasicDistributionFileFormat <timestamp> <edge> <bytes> <IP> GET dxxxxxxxxxxxxx.cloudfront.net / 403 - <UserAgent> - - Error <ReqID> dxxxxxxxxxxxx.cloudfront.net http 85 0.002 - - - Error
CloudFront に +1 - IPアドレス指定は有用 - これまで地理的な制限には対応していた - コンテンツの地理的ディストリビューションの制限 -
https://docs.aws.amazon. com/ja_jp/AmazonCloudFront/latest/DeveloperGuide/georestricti ons.html - 特定の企業のみに配信 - 攻撃してきたホストを遮断
ただし... - CloudFront から参照するオリジンはパブリックなもの - 直接アクセスされる可能性は低いもの、油断は禁物 - これまで通り、アプリケーションの適切な実装が大切 - プライベートなコンテンツはこれまで通り
OAI で配信 - OAI: オリジンアクセスアイデンティティ - Amazon S3 からプライベートなオブジェクトを取得して配信する
今後 - ルールの定期的なメンテナンスが必要 - いわゆるシグネチャを蓄積する必要がある - ログからルールへのフィードバックで精度を上げる - 受けた攻撃をルールに書く -
ログがきれいになるので、攻撃を精査する - 見つけた不審なログを調査(上に戻る) - サードパーティの製品と組み合わせて使う?
幕間
ホワイトペーパー - Introduction to AWS Security - https://d0.awsstatic.com/whitepapers/Security/Intro_to_AWS_Security.pdf - AWS
リスクおよびコンプライアンス - http://media.amazonwebservices.com/jp/wp/AWS_Risk_and_Compliance_Whitepaper.pdf - 規模のセキュリティ: AWS ロギング - https://d0.awsstatic. com/whitepapers/compliance/AWS_Security_at_Scale_Logging_in_AWS_Whitepaper.pdf - AWS セキュリティのベストプラクティス - https://d0.awsstatic.com/International/ja_JP/Whitepapers/AWS_Security_Best_Practices.pdf - AWS の使用に際してのセキュリティ監査チェックリスト - https://d0.awsstatic.com/whitepapers/compliance/AWS_Auditing_Security_Checklist.pdf
責任共有モデル
最近のセキュリティ 注:あくまで主観です。専門家ではないので悪しからず・・・
ゼロデイ - 0 day - いわゆる未発見の脆弱性 - 売買されたりもする - 最初に発見したのが攻撃側だと、存在を秘匿され攻撃に利用される
- Hackingほげほげ とか - 発見した場合は然るべき場所に連絡し、修正を待ってから公開する - 最近は公開から攻撃開始までの期間が短いため、適宜確認しましょう - ゼロデイを利用した攻撃はほとんど防げない - stuxnet とか
言いたいこと
AWS は便利だけど まだまだ 考えるべきことは多い Lambda使ったサーバレス構成は攻撃への耐性が高いと言えそうな気がする
攻撃者が有利 - 完全な防御は存在しない - 高度な攻撃は防げない - EC2 に入られたり - 端末からアクセスキーを盗まれたり
- つまり、アクセスキーをどこかに保存することは避けるべし - 必要十分なだけの権限にしておく - 監視・検知できる仕組み
ロギング重要 ★CloudTrail ★アクセスログ (CloudFront / S3 / ELB / API
Gateway / Lambda) VPC FLow Logs Config CloudWatch Logs
ログ取って安心しない! - 定期的なログの確認 - 視覚化 - セキュリティ専門家のチェック - WAFルールへのフィードバック -
クローラからの探索リクエストの検知 - アウトバウンドの通信検知(C&C / 情報送信) - 情報収集 - 事例 - トレンド
情報収集 - AWS - AWS に関するセキュリティ情報 - AWS Security Bulletins
- https://aws.amazon.com/jp/security/security-bulletins/ - Amazon Linux AMI Security Center - https://alas.aws.amazon.com/ - Security Blog - http://blogs.aws.amazon.com/security/
情報収集 - Security - 公機関のウェブサイト( IPA / NISC / NPA
/ JPCERT ) - ScanNetSecurity - http://scan.netsecurity.ne.jp/ - セキュリティホール memo - https://www.st.ryukoku.ac.jp/~kjm/security/memo/
やられた時は... - AWS の対策チームに連絡 - https://aws.amazon.com/forms/report-abuse - JPCERT の強力を仰ぐ -
https://www.jpcert.or.jp/form/ - 警察への通報
vs DDoS
リフレクターの探索も増加傾向 - portmap - 111/UDP - RIPv1 - 520/UDP 出典:
警視庁 平成27年10期レポート https://www.npa.go.jp/cyberpolice/detect/pdf/20151111.pdf
AWS の DDoS ベストプラクティス - DDoSに対するAWSのベストプラクティスhttp://media. amazonwebservices.com/jp/DDoS%20White% 20Paper_Revised.pdf - 英語の原文https://d0.awsstatic.
com/whitepapers/DDoS_White_Paper_June2015.pdf
一例として CloudFront を抜粋 Amazon CloudFront は、複数のPoP を使用することで、複数の場所のトラフィックを分散させて、 インフラストラクチャと一部のアプリケーションレイヤーDDoS 攻撃の両方から保護する能力 を備えています。
これらのそれぞれの場所に、AWS はキャパシティーと冗長性のために複数のインターネッ ト接続を持ち、これによりAmazon CloudFront は正規のエンドユーザーにコンテンツを提供しな がら、攻撃のトラフィックを分離することができます。 Amazon CloudFront には、無効なリクエストを削除しながら、有効なTCP 接続とHTTP リクエストの みが行われるようにするフィルタリング機能もあります。 これにより、オリジンから無効なトラフィック(UDP フラッド、SYN フラッド、およびスローリード でよく使用されます)を処理する負荷が取り除かれます。
ベストプラクティス - CloudFront - Route53 - ELB
経験を積む
Hardening Project - WASForum が取り組むセキュリティイベント - 「守る」技術を持つエンジニアを発掘・顕彰する技術競技 - これまで 2012/4:
Hardening Zero 2012/9: Hardening One 2013/7: Hardening One Remix 2014/6: Hardening 10 APAC 2014/11: Hardening 10 Evolution 2015/6: Hardening 10 MarketPlace 2015/11: Hardening 10 ValueChain
Hardening Project について - 競技概要 - 競技は8時間、1チーム6-10名(チームは初顔合わせ) - 無防備なサーバ群をひたすら守りつつ、ECサイトの売り上げを競う -
各チーム 20台前後の仮想サーバ(Linux/Windows混在) - ウェブサイトが5-8サイト程度 - ECサイト、お問い合わせフォーム、会社ホームページ、新卒採用サイト - 運営が事前に脆弱な環境を構築 - リアルタイムに状況が変化 - 負荷によるサービス停止や、運営からの容赦ない攻撃 - 社長からの指令/顧客からの問い合わせ
凝縮した MINI Hardening Project - Hardening Project と同様、実際のビジネスに近い環境でイ ンシデントレスポンスを体験できます。 -
Hardening Project - 8時間競技 - 振り返り含め2日間 - 主に沖縄で開催 - MINI Hardening Project - 3時間競技 - 土曜日だけで終わる - 東京や大阪で開催しています。是非ご参加ください!
参考 - 川口洋のセキュリティ・プライベート・アイズ(53):Hardening Projectから派生した「MINI Hardening Project」に行ってみ た http://www.atmarkit.co.jp/ait/articles/1503/31/news008.html
ご清聴 ありがとうございました