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
780
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
2024.02.19 W&B AIエージェントLT会 / AIエージェントが業務を代行するための計画と実行 / Algomatic 宮脇
smiyawaki0820
14
3.5k
(機械学習システムでも) SLO から始める信頼性構築 - ゆる SRE#9 2025/02/21
daigo0927
0
150
RECRUIT TECH CONFERENCE 2025 プレイベント【高橋】
recruitengineers
PRO
0
160
ユーザーストーリーマッピングから始めるアジャイルチームと並走するQA / Starting QA with User Story Mapping
katawara
0
210
Developer Summit 2025 [14-D-1] Yuki Hattori
yuhattor
19
6.2k
ホワイトボードチャレンジ 説明&実行資料
ichimichi
0
130
君も受託系GISエンジニアにならないか
sudataka
2
440
個人開発から公式機能へ: PlaywrightとRailsをつなげた3年の軌跡
yusukeiwaki
11
3k
【Developers Summit 2025】プロダクトエンジニアから学ぶ、 ユーザーにより高い価値を届ける技術
niwatakeru
2
1.4k
リーダブルテストコード 〜メンテナンスしやすい テストコードを作成する方法を考える〜 #DevSumi #DevSumiB / Readable test code
nihonbuson
11
7.3k
アジャイル開発とスクラム
araihara
0
170
SA Night #2 FinatextのSA思想/SA Night #2 Finatext session
satoshiimai
1
140
Featured
See All Featured
Fontdeck: Realign not Redesign
paulrobertlloyd
83
5.4k
Rebuilding a faster, lazier Slack
samanthasiow
80
8.8k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
Automating Front-end Workflow
addyosmani
1368
200k
"I'm Feeling Lucky" - Building Great Search Experiences for Today's Users (#IAC19)
danielanewman
226
22k
I Don’t Have Time: Getting Over the Fear to Launch Your Podcast
jcasabona
32
2.1k
[RailsConf 2023 Opening Keynote] The Magic of Rails
eileencodes
28
9.3k
Mobile First: as difficult as doing things right
swwweet
223
9.3k
個人開発の失敗を避けるイケてる考え方 / tips for indie hackers
panda_program
100
18k
A designer walks into a library…
pauljervisheath
205
24k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
Site-Speed That Sticks
csswizardry
4
380
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
ご清聴 ありがとうございました