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
550
クラウドの メタデータサービスと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
280
AWS re:Invent2017に行ってきた
ttakada
0
420
誰も知りたくないKixsの軌跡
ttakada
0
1.4k
AWS 認定の概要と勉強法
ttakada
0
1.4k
Oracle Databaseを パブリッククラウド(AWS)で 使うときの注意点
ttakada
0
22k
RADIUSって知ってますか?
ttakada
0
1.2k
Other Decks in Technology
See All in Technology
プロダクト開発者目線での Entra ID 活用
sansantech
PRO
0
120
スクラムというコンフォートゾーンから抜け出そう!プロジェクト全体に目を向けるインセプションデッキ / Inception Deck for seeing the whole project
takaking22
3
130
JAWS DAYS 2025 アーキテクチャ道場 事前説明会 / JAWS DAYS 2025 briefing document
naospon
0
2.8k
IoTシステム開発の複雑さを低減するための統合的アーキテクチャ
kentaro
1
130
Aurora PostgreSQLがCloudWatch Logsに 出力するログの課金を削減してみる #jawsdays2025
non97
1
240
Two Blades, One Journey: Engineering While Managing
ohbarye
4
2.6k
AIエージェント入門
minorun365
PRO
33
19k
Snowflakeの開発・運用コストをApache Icebergで効率化しよう!~機能と活用例のご紹介~
sagara
1
530
遷移の高速化 ヤフートップの試行錯誤
narirou
6
1.9k
Amazon Q Developerの無料利用枠を使い倒してHello worldを表示させよう!
nrinetcom
PRO
2
120
x86-64 Assembly Essentials
latte72
3
370
RayでPHPのデバッグをちょっと快適にする
muno92
PRO
0
200
Featured
See All Featured
Designing Experiences People Love
moore
140
23k
The Power of CSS Pseudo Elements
geoffreycrofte
75
5.5k
Code Reviewing Like a Champion
maltzj
521
39k
Templates, Plugins, & Blocks: Oh My! Creating the theme that thinks of everything
marktimemedia
30
2.2k
Exploring the Power of Turbo Streams & Action Cable | RailsConf2023
kevinliebholz
30
4.6k
Chrome DevTools: State of the Union 2024 - Debugging React & Beyond
addyosmani
4
380
RailsConf & Balkan Ruby 2019: The Past, Present, and Future of Rails at GitHub
eileencodes
134
33k
Why Our Code Smells
bkeepers
PRO
336
57k
Fight the Zombie Pattern Library - RWD Summit 2016
marcelosomers
233
17k
No one is an island. Learnings from fostering a developers community.
thoeni
21
3.2k
How to Think Like a Performance Engineer
csswizardry
22
1.4k
GitHub's CSS Performance
jonrohan
1030
460k
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