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
900
0
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
20151206_AWS+Security
「JAWS-UG京王線 第4回 攻めと守りのセキュリティ&監視」にて発表した資料です
tsb
December 06, 2015
More Decks by tsb
See All by tsb
WordPress Hardening CheetSheet 8/20
tsb
1
1.2k
Other Decks in Technology
See All in Technology
フィジカルAIの知識ゼロの僕でも AIを使えばここまでできた
tatsuya1970
0
150
도구에서 동료까지: 10년차 AI 스타트업의 AI 적응기
inureyes
PRO
1
330
巨大気象データと戦う ― サロゲートモデル学習を高速化する圧縮技術
gpuunite_official
0
250
医療の現場を変革に挑戦した半年間の軌跡 - PythonとAIで現場を変える / From Code to Care
soudai
PRO
1
580
私がブラウザを自作したくなった理由
supurazako
1
280
形式手法特論:Hyperproperty とモデル検査 #kernelvm / Kernel VM Study Tokyo 19th
ytaka23
0
710
自宅NWにISR4331を導入してみた話
okaits
0
120
Kiro Crew で始める マルチエージェント開発
miu_crescent
PRO
0
160
LanceDB入門
mocobeta
9
670
なぜ Temporal の大小比較には compare しかないのか / Why Does Temporal Only Have compare() for Comparisons
kazukihayase
1
200
AI時代に、人は何を、どう学ぶのか #pbl_pub / What and How Do We Learn in the AI Era?
takaking22
1
240
地震情報アプリを作ってみた
yama3133
1
110
Featured
See All Featured
Agile Leadership in an Agile Organization
kimpetersen
PRO
0
210
Design and Strategy: How to Deal with People Who Don’t "Get" Design
morganepeng
133
19k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
234
17k
Max Prin - Stacking Signals: How International SEO Comes Together (And Falls Apart)
techseoconnect
PRO
0
420
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
66
57k
Git: the NoSQL Database
bkeepers
PRO
432
67k
Intergalactic Javascript Robots from Outer Space
tanoku
273
27k
Jess Joyce - The Pitfalls of Following Frameworks
techseoconnect
PRO
1
380
How To Speak Unicorn (iThemes Webinar)
marktimemedia
1
550
Why Mistakes Are the Best Teachers: Turning Failure into a Pathway for Growth
auna
0
210
Fireside Chat
paigeccino
42
4k
Leveraging Curiosity to Care for An Aging Population
cassininazir
1
470
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
ご清聴 ありがとうございました