mitm-find-referer について
mitmproxyの通信記録を調べ、Refererヘッダー経由で漏れる機密情報を特定するセキュリティスキルです。受信先、漏えいデータ、発生元ページ、深刻度、修正案を示します。
主な機能
- 01URL内の機密データを検出
- 02サードパーティーや分析リクエストを確認
- 03決済ページのRefererを調査
- 04受信先・発生元・深刻度・修正案を報告
活用シーン
- 01キャプチャした通信のReferer漏えいを監査
- 02分析サービスへの機密ページURL送信を確認
- 03決済ページの取引データ露出を調査
インストール
コマンドをコピーしてターミナルで実行します。
$
npx skills add https:/ / github.com/ instavm/ security-skills --skill mitm-find-refererインストール後、Claude Code で/mitm-find-refererを入力して読み込まれたか確認します。
詳細
Referer ヘッダーの漏洩を検出する
次の対象について、mitmproxy のダンプ(log.txt)を分析し、Referer の漏洩を確認します:$ARGUMENTS
必要条件: カレントディレクトリに
log.txtが必要です。ファイルがない場合は、先にトラフィックをキャプチャしてください:mitmdump --set flow_detail=3 2>&1 | tee log.txt
確認する項目
1. URL 内の機密データ
- URL 内のトークンが Referer 経由で漏洩していないか
- クエリパラメーター内のセッション ID
- パス内のユーザー ID、注文 ID
- 決済トランザクション ID
2. サードパーティへのリクエスト
- 外部スクリプトに内部 URL が送信されていないか
- 機密情報を含む Referer を伴う CDN リクエスト
- ソーシャルウィジェットにページ URL が送信されていないか
- 外部画像/フォントへの URL 漏洩
3. アナリティクスへの漏洩
- 機密 URL が Google Analytics に送信されていないか
- サードパーティのアナリティクスに完全なページパスが送信されていないか
- マーケティング用ピクセルにトランザクションデータが含まれていないか
4. 決済ページからの漏洩
- 決済 ID が外部サイトに漏洩していないか
- トランザクション URL が認証バッジに送信されていないか
- 「Verified by Visa」のロゴに決済 URL が送信されていないか
脆弱なパターン
- 機密ページからの外部リンクのクリック
- 決済ページ上のサードパーティウィジェット
- 認証済みページ上のアナリティクス
- トランザクションページからのソーシャル共有
出力形式
検出結果ごとに、次の情報を記載します:
- 外部ドメイン: データの送信先
- 漏洩データ: 露出している機密情報
- 発生元ページ: 漏洩元
- 深刻度: データの機密性に基づく
- 修正方法:
Referrer-Policy: no-referrerヘッダーを追加する- リンクに
rel="noreferrer"を指定する - URL から機密データを削除する
- 機密データには GET ではなく POST を使用する
コメント
Markdown 対応