Shikata Ga Nai

Private? There is no such things.

Proxyタブ → Match and Replaceビューの解説

Hello there, ('ω')ノ

【起動方法】

  1. 上部メニューから Proxyタブ をクリック
  2. サブタブ Match and replace をクリック  → Burpが通過する通信内容に対して、置換ルールを適用する設定画面が表示されます。

【画面構成】

① HTTP match and replace rules

(HTTPリクエスト/レスポンスに対する置換ルール)

  • Only apply to in-scope items  チェックすると、スコープ内の通信だけに適用されます。

  • ルール一覧テーブル:

項目 説明
Enabled 有効化のチェック欄
Item 対象(例:Request header)
Name 対象となるヘッダ名(User-Agentなど)
Match 置換対象の正規表現パターン
Replace 置換後の内容(例:別のUser-Agent)
Type 正規表現(Regex)または文字列(Literal)
Comment 補足説明(例:Emulate Androidなど)

例(画像内のルール):

Match対象 置換後 説明
^User-Agent.*$ Mozilla/4.0 ... Internet Explorerとして偽装
^User-Agent.*$ Mozilla/5.0 (iPhone...) iOSとして偽装
^User-Agent.*$ Mozilla/5.0 (Linux...) Androidとして偽装
^If-Modified-Since.*$ 空欄 キャッシュ無効化目的
^If-None-Match.*$ 空欄 キャッシュ無効化目的

② WebSocket match and replace rules

(WebSocket通信に対する置換ルール)

  • Only apply to in-scope items → 上と同様、スコープ内のみに制限可能

  • WebSocketに対して置換処理を加える設定欄(現在は未設定)

項目 説明
Direction クライアント→サーバ or サーバ→クライアント
Match 一致条件(正規表現など)
Replace 置換文字列
Type Regex or Literal
Comment 補足メモ(任意)

【操作ボタン】

両セクション共通:

  • Add → 新しい置換ルールを追加
  • Edit → 選択したルールを編集
  • Remove → 選択したルールを削除
  • Up / Down → ルールの適用順序を並び替え

【まとめ】

この画面では、Proxyを通過するHTTP/HTTPSやWebSocket通信に対し、内容を自動で改変(マッチ&リプレイス)できます。

初学者の使い方例:

  • 特定の User-Agentヘッダを強制的に変更してクロールのふるまいを変える
  • キャッシュ制御ヘッダ(If-Modified-Sinceなど)を除去して常に最新のレスポンスを取得
  • 自動化の一環で 認証トークンやヘッダを挿入

Best regards, (^^ゞ