Hello there, ('ω')ノ
✅ なぜCache Busterが必要なのか?
Web Cache DeceptionやCache Poisoningをテストするとき:
キャッシュに保存された既存のレスポンスが影響して、テスト結果が正確でなくなるリスクがあります。
❌ 問題の例
- あなたがURL
/account.css
にアクセスした際、 - 既に誰かのレスポンスがキャッシュされていた場合、
- あなたのリクエストには本来のサーバーの挙動が反映されず、
- 「本当にこのURLが脆弱なのか」わからなくなってしまいます
🔄 Cache Busterとは?
毎回異なるURL(=キャッシュキー)を生成することで、常にキャッシュミスを強制する方法です。
🛠️ Burp SuiteでのCache Busterの使い方
① Param Miner拡張をインストール
- Burp Suiteの「Extender」→「BApp Store」で
Param Miner
をインストール
② Cache Busterを有効化
- メニュー:Param Miner > Settings > Add dynamic cachebuster を選択
- これにより、Burpがすべてのリクエストに**動的なクエリ文字列(例:
?cb=xyz123
)**を自動付加
③ Loggerで確認
- Burpの「Logger」タブで、付加されたクエリパラメータ(例:
cb=abcde123
)を確認可能 - 毎回異なるURLになるため、キャッシュの影響を排除
🔍 手動でのCache Buster例
/account.css → /account.css?cb=001 /account.css → /account.css?cb=002 /account.css → /account.css?cb=003
これにより、常に新しいキャッシュキーでオリジンサーバーに到達し、正しい挙動を観察できます。
✅ まとめ
項目 | 内容 |
---|---|
Cache Busterの目的 | 毎回異なるキャッシュキーを生成し、常に新しいレスポンスを得る |
Burp Suiteでの自動化 | Param Minerの機能で?cb=ランダム を自動付加 |
なぜ重要か? | キャッシュがあると、脆弱性の有無が正しく検出できないため |
キャッシュに邪魔されない検証のためには、Cache Busterは不可欠な武器です。
Best regards, (^^ゞ