Upgrade to Pro
— share decks privately, control downloads, hide ads and more …
Speaker Deck
Sign up for free
Menu
Search
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Features
All features
Private URLs
Password Protection
Custom URLS
Scheduled publishing
Remove Branding
Restrict embedding
Deck Collections
Notes
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Explore
Featured decks
Featured speakers
Programming
Technology
Storyboards
Pricing
Search
Sign in
Sign up for free
クラウドのメタデータサービスとSSRF脆弱性
Search
ttakada
October 16, 2019
Technology
670
1
Share
Embed
Copy iframe code
Copy JS code
Copy link
Start on current slide
クラウドの メタデータサービスとSSRF脆弱性
F5 Fukuoka-Meetup vol."F2" での発表資料です
https://f5fukuoka.connpass.com/event/146932/
ttakada
October 16, 2019
More Decks by ttakada
See All by ttakada
SaaSで実現するトラッフィク制御とセキュリティ
ttakada
0
480
雰囲気で語るKubernetesネットワーク
ttakada
0
740
Kixsのご紹介
ttakada
0
2.5k
クラウド/オンプレのネットワークアーキテクチャ再考
ttakada
0
330
AWS re:Invent2017に行ってきた
ttakada
0
470
誰も知りたくないKixsの軌跡
ttakada
0
1.5k
AWS 認定の概要と勉強法
ttakada
0
1.9k
Oracle Databaseを パブリッククラウド(AWS)で 使うときの注意点
ttakada
0
25k
RADIUSって知ってますか?
ttakada
0
1.5k
Other Decks in Technology
See All in Technology
Claude起点の仕様駆動開発
tanakaseiya
0
230
Confitura 2026
logico_jp
0
110
OpenClawでAzure DevOpsのWiki更新を自動化する - クラウドAIだけでは届かない場所へ
yutakaosada
0
130
DORA_Metrics.pdf
wagnerfusca
1
140
データ品質を壊しながらSnowflakeのAIに分析させてみた
kawanago
0
320
【ゲームメーカーズスクランブル2026】『Shadowverse: Worlds Beyond』UIとアニメーションで実現する最高のユーザー体験を叶えるプロトタイピング
cygames
PRO
1
700
Terraformを用いたJamf Pro構成のIaC, GitOps化への挑戦
yukun
0
120
IR Today: Theory, Practice, and Agents
dtunkelang
0
270
Azure Copilot Resiliency Agentをいろいろ試してみる
tomokusaba
0
140
人にやさしく、AIにやさしく、書き手を選ばないIaCのガードレール再考 / Rethinking IaC Guardrails for Humans and AI Alike
kohbis
5
1.8k
1人アドミンな私はAWSアカウント申請をSlackで完結したい!
ysuzuki
0
100
Lambda MicroVMsが分からなすぎたので使い所を1から考えてみた
tsukuboshi
1
260
Featured
See All Featured
Speed Design
sergeychernyshev
33
2.1k
Claude Code どこまでも/ Claude Code Everywhere
nwiizo
68
58k
HTML-Aware ERB: The Path to Reactive Rendering @ RubyCon 2026, Rimini, Italy
marcoroth
5
750
Scaling GitHub
holman
464
140k
The Art of Programming - Codeland 2020
erikaheidi
57
14k
職位にかかわらず全員がリーダーシップを発揮するチーム作り / Building a team where everyone can demonstrate leadership regardless of position
madoxten
69
66k
Learning to Love Humans: Emotional Interface Design
aarron
275
41k
Leadership Guide Workshop - DevTernity 2021
reverentgeek
1
380
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
56
3.5k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
162
16k
BBQ
matthewcrist
89
10k
Mobile First: as difficult as doing things right
swwweet
225
10k
Transcript
| ©2019 F5 NETWORKS 1 クラウドの メタデータサービスと SSRF脆弱性 F5ネットワークスジャパン合同会社 髙田
知典
| ©2019 F5 NETWORKS 2 SSRF (Server Side Request Forgery)
攻撃の概要
| ©2019 F5 NETWORKS 3 SSRF攻撃 正常な動作 http://example.com/post?url=https://example.net/latestnews example.com example.net
example.comのページ example.net のページ https://example.net/latestnews example.net のページ 公開サーバを経由し、内部サーバからの応答を得る攻撃
| ©2019 F5 NETWORKS 4 SSRF攻撃 正常な動作 http://example.com/post?url=https://example.net/latestnews example.com example.net
example.comのページ example.net のページ https://example.net/latestnews example.net のページ SSRF攻撃 http://example.com/post?url=http://192.168.0.10/secretdata example.com 192.168.1.10 内部サーバ 内部ネットワークに配置されている データが漏洩してしまう http://192.168.0.10/secretdata 公開サーバを経由し、内部サーバからの応答を得る攻撃 機密データ example.comのページ 機密データ
| ©2019 F5 NETWORKS 5 クラウドのメタデータサービス
| ©2019 F5 NETWORKS 6 クラウドにおけるメタデータサービス メタデータ サービス クラウド 仮想インスタンス
クラウドの仮想ネットワーク からのみ利用可能 http://169.254.169.254/metadata インスタンスの構成情報 HTTP GETで、インスタンスの構成情報を提供する
| ©2019 F5 NETWORKS 7 主要クラウドサービスのメタデータサービス CLOUD-SERVICE-METADATA-API-LIST ※https://gist.github.com/mrtc0/60ca6ba0fdfb4be0ba499c65932ab42e より引用
| ©2019 F5 NETWORKS 8 メタデータサービスを対象としたSSRF攻撃 メタデータ サービス クラウド 仮想インスタンス
http://169.254.169.254/metadata http://example.com/post?url=http://169.254.169.254 /metadata インスタンスの構成情報 インスタンスの構成情報 攻撃者によって、インスタンス構成情報が抜き取られてしまう 脆弱性をもった アプリケーション
| ©2019 F5 NETWORKS 9 AWSでのメタデータサービス 一時的セキュリティ認証情報がメタデータサービスから取得可能 AWS STS Temporary
security credential ① Roleを元に一時的セキュリティ認証情報 が払い出される ② 一時的セキュリティ 認証情報を使って AWSリソースにアク セス Role 一時的セキュリティ認証情報の利用
| ©2019 F5 NETWORKS 10 AWSでのメタデータサービス 一時的セキュリティ認証情報がメタデータサービスから取得可能 Temporary security credential
AWS STS ① Roleを元に一時的セキュリティ認証情報 が払い出される ② 一時的セキュリティ 認証情報を使って AWSリソースにアク セス Role curl http://169.254.169.254/latest/meta-data/iam/security-credentials/IAM-ROLE-Name Temporary security credential メタデータ サービス Amazon EC2 一時的セキュリティ認証情報の利用 メタデータサービスから一時的セキュリティ認証情報 が取得可能
| ©2019 F5 NETWORKS 11 AWSでのSSRF 攻撃の例 非公開設定されているS3上の機密データファイルが漏洩 Amazon EC2
Amazon Simple Storage Service VPC AWS Cloud メタデータ サービス アクセス許可 機密データファイル
| ©2019 F5 NETWORKS 12 AWSでのSSRF 攻撃の例 非公開設定されているS3上の機密データファイルが漏洩 Amazon EC2
Amazon Simple Storage Service VPC AWS Cloud メタデータ サービス Temporary security credential 機密データファイル ①メターデータサービスから 一時的セキュリティ認証情報を取得 http://example.com/post?url= http://169.254.169.254/latest/meta-data/iam/security- credentials/IAM-ROLE-Name
| ©2019 F5 NETWORKS 13 AWSでのSSRF 攻撃の例 非公開設定されているS3上の機密データファイルが漏洩 Amazon EC2
Amazon Simple Storage Service VPC AWS Cloud メタデータ サービス Temporary security credential 機密データファイル 機密データファイル ② 取得した一時的セキュリティ認証情報を使って S3にアクセスし、機密データファイルを入手 ①メターデータサービスから 一時的セキュリティ認証情報を取得 http://example.com/post?url= http://169.254.169.254/latest/meta-data/iam/security- credentials/IAM-ROLE-Name
| ©2019 F5 NETWORKS 14 アプリケーションのSSRF脆弱性を突くことで、 外部からメタデータサービスを利用し、 一時的セキュリティ認証情報を入手することが可能 一時的セキュリティ認証情報使って、 クラウドのリソースに不正アクセスが行われる
クラウドにおけるSSRF脆弱性のリスクのまとめ
| ©2019 F5 NETWORKS 15 クラウドにおける SSRF攻撃への対策
| ©2019 F5 NETWORKS 16 SSRF 攻撃への対策 3つのアプローチ OS/APPでの対策 •
OSファイアウォールでの接続先制限 • 接続先URLをホワイトリスト • XXE脆弱性(CWE-611)対策の実施 ホスト単位、 アプリケーション単位での 対策実施が必要 WAFでの対策 • Signature判定 • 文字列判定にるURL検証 パターンマッチングによる ブロック ゼロディ攻撃対策が困難 クラウド基盤での対策 • IAMでの最小権限の付与 • リソースのアクセスコントロール SSRF攻撃を受けた後の ダメージコントロール
| ©2019 F5 NETWORKS 17 SSRF 攻撃への対策 3つのアプローチ クラウド基盤での対策 OS/APPでの対策
WAFでの対策 • IAMでの最小権限の付与 • リソースのアクセスコントロール • OSファイアウォールでの接続先制限 • 接続先URLをホワイトリスト • XXE脆弱性(CWE-611)対策の実施 • Signature判定 • 文字列判定にるURL検証 SSRF攻撃を受けた後の ダメージコントロール ホスト単位、 アプリケーション単位での 対策実施が必要 パターンマッチングによる ブロック ゼロディ攻撃対策が困難
| ©2019 F5 NETWORKS 18 F5によるSSRF 攻撃への対策 ゼロディ攻撃にも対応可能 クラウド基盤での対策 OS/APPでの対策
Advanced WAF での対策 • IAMでの最小権限の付与 • リソースのアクセスコントロール • OSファイアウォールでの接続先制限 • 接続先URLをホワイトリスト • XXE脆弱性(CWE-611)対策の実施 • シグネチャ判定(Built-in Signature) • 文字列判定によるURL検証 (Custom Signature) SSRF攻撃を受けた後の ダメージコントロール ホスト単位、 アプリケーション単位での 対策実施が必要 パターンマッチングによる ブロック • Data Guardによるマスキング ゼロディ攻撃にも対応
| ©2019 F5 NETWORKS 19 F5 Advanced WAFによる対策 BUILT-IN SIGNATURE
& CUSTOM SIGNATUREによるリアルタイムブロッキング Amazon EC2 VPC メタデータ サービス Built-in Signature • F5により提供されるシグネチャ • 低い誤検知(False Positive)率 Custom Signature • 管理者が自由に定義可能 • 個別URL等のピンポイント防御 SSRF攻撃 F5 Virtual Edition WAF
| ©2019 F5 NETWORKS 20 F5 Advanced WAFによる対策 DATA GUARDでの一時的セキュリティ認証情報のマスキング
Amazon EC2 VPC メタデータ サービス Temporary security credential Data Guard • 応答パケットを確認し、 一時的セキュリティ認証情報を マスキング処理 SSRF攻撃 F5 Virtual Edition WAF SSRF攻撃が成立したとしても、 キーの漏えいを防ぐことが可能
| ©2019 F5 NETWORKS 21 F5による効果的なSSRF対策 3つの機能によりSSRF攻撃からアプリケーションを保護 Built-in Signatureによるリアルタイムブロッキング Custom
SignatureによるURL検証 Data Guardによる認証情報のマスキング
| ©2019 F5 NETWORKS 22 F5 Advanced WAFの特徴的な機能 悪性botからの防御 プロアクティブBot対策
既知の不正リクエスト からの防御 Signature & Threat Campaign 送信元識別による防御 IP Address Reputation & Geo location & Device ID 振る舞い分析による L7 DoS防御 L7 Behavior-based DoS Protection 漏洩した認証情報を使用 したアクセスを防御 Credential Stuffing Reponse内の 秘匿情報のマスキング Data Guard 指定フィールドの暗号化に よりMiTM攻撃を防御 Data Safe
| ©2019 F5 NETWORKS 23