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
クラウドのメタデータサービスとSSRF脆弱性
Search
ttakada
October 16, 2019
Technology
1
540
クラウドの メタデータサービスとSSRF脆弱性
F5 Fukuoka-Meetup vol."F2" での発表資料です
https://f5fukuoka.connpass.com/event/146932/
ttakada
October 16, 2019
Tweet
Share
More Decks by ttakada
See All by ttakada
SaaSで実現するトラッフィク制御とセキュリティ
ttakada
0
410
雰囲気で語るKubernetesネットワーク
ttakada
0
660
Kixsのご紹介
ttakada
0
2.5k
クラウド/オンプレのネットワークアーキテクチャ再考
ttakada
0
270
AWS re:Invent2017に行ってきた
ttakada
0
410
誰も知りたくないKixsの軌跡
ttakada
0
1.3k
AWS 認定の概要と勉強法
ttakada
0
1.4k
Oracle Databaseを パブリッククラウド(AWS)で 使うときの注意点
ttakada
0
22k
RADIUSって知ってますか?
ttakada
0
1.2k
Other Decks in Technology
See All in Technology
Goで作って学ぶWebSocket
ryuichi1208
1
1k
2.5Dモデルのすべて
yu4u
2
870
オブザーバビリティの観点でみるAWS / AWS from observability perspective
ymotongpoo
8
1.5k
RECRUIT TECH CONFERENCE 2025 プレイベント【高橋】
recruitengineers
PRO
0
160
SA Night #2 FinatextのSA思想/SA Night #2 Finatext session
satoshiimai
1
140
エンジニアのためのドキュメント力基礎講座〜構造化思考から始めよう〜(2025/02/15jbug広島#15発表資料)
yasuoyasuo
17
6.8k
ホワイトボードチャレンジ 説明&実行資料
ichimichi
0
130
関東Kaggler会LT: 人狼コンペとLLM量子化について
nejumi
3
590
プロセス改善による品質向上事例
tomasagi
2
2.6k
分解して理解する Aspire
nenonaninu
1
170
一度 Expo の採用を断念したけど、 再度 Expo の導入を検討している話
ichiki1023
1
170
プロダクトエンジニア構想を立ち上げ、プロダクト志向な組織への成長を続けている話 / grow into a product-oriented organization
hiro_torii
1
200
Featured
See All Featured
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.2k
CoffeeScript is Beautiful & I Never Want to Write Plain JavaScript Again
sstephenson
160
15k
Designing for humans not robots
tammielis
250
25k
How to Create Impact in a Changing Tech Landscape [PerfNow 2023]
tammyeverts
49
2.3k
Bootstrapping a Software Product
garrettdimon
PRO
306
110k
Save Time (by Creating Custom Rails Generators)
garrettdimon
PRO
29
1k
Fashionably flexible responsive web design (full day workshop)
malarkey
406
66k
The Illustrated Children's Guide to Kubernetes
chrisshort
48
49k
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
133
33k
GraphQLの誤解/rethinking-graphql
sonatard
68
10k
Facilitating Awesome Meetings
lara
52
6.2k
Why You Should Never Use an ORM
jnunemaker
PRO
55
9.2k
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