CyberGlossary

脆弱性

キャッシュ汚染

別称: Web キャッシュ汚染, レスポンス汚染

定義

共有キャッシュに悪意あるレスポンスを保存させ、以降の他ユーザーに攻撃者のコンテンツを配信する攻撃。

キャッシュ汚染は、CDN、リバースプロキシ、ブラウザ、DNS リゾルバなどのキャッシュ層を悪用して、攻撃者の制御下にあるコンテンツを保持させる手法です。Web キャッシュ汚染では、レスポンスに影響するがキャッシュキーに含まれない入力(unkeyed input)を悪用することが多く、汚染されたレスポンスが以後の閲覧者に配信されます。バリエーションには DNS キャッシュ汚染、アプリ層のキャッシュ汚染、キャッシュデセプションがあります。改ざんや XSS のばらまきから、認証情報の窃取・認証バイパスまで影響は広範です。対策には、関連入力をキャッシュキーに含める、エッジでのリクエスト正規化、キャッシュ可能なコンテンツタイプの制限、Vary・Cache-Control の監査などがあります。

  • X-Forwarded-Host ヘッダがアプリで <script> タグに反映される挙動を悪用し、CDN を汚染する。
  • 攻撃者の制御する Location を持つ 302 をキャッシュさせ、全ての訪問者に配信する。

関連用語