知識ベース — 前提知識と概念整理
Knowledge Base · 各ラボから参照される基礎
KB1
Web Cache Poisoning の基礎
キャッシュキーとキャッシュ可能性、Unkeyed Input、典型的な攻撃、ヘッダ削除・キャッシュキー拡張による正しい防御。
Phase 1 — 基礎
Practitioner · 主要パターン
01
X-Forwarded-Host で全ユーザに XSS 配信
アプリが X-Forwarded-Host から正規ホスト名を取得しレスポンスに反映するが、CDN のキャッシュキーには含まれていない。1回の汚染で全ユーザに攻撃者 JS。
02
クエリパラメータの差で別レスポンス汚染
?utm_source=... のような認識されないクエリで、サーバ側の挙動が変わるが、CDN は「不要なクエリ」として無視するパターン。
03
Cookie ベースのキャッシュ汚染
アプリが特定 Cookie を見て言語切替するが、CDN がそれをキャッシュキーに含めず、英語応答が日本語ユーザに配信される。
04
HTTP Header Smuggling 経由の汚染
プロキシとオリジンが異なるヘッダ正規化を行う場合、両者の解釈の差を突いてキャッシュを汚染。
05
Cache Deception — 認証ページの公開キャッシュ
profile.css のような拡張子で、CDN は「静的アセット」と判断してキャッシュ。実は動的に生成された個人情報ページが全員に配信される。