hacktricks/pentesting-web/abusing-hop-by-hop-headers.md

7.9 KiB
Raw Blame History

ホップバイホップヘッダー

☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥

これはhttps://nathandavison.com/blog/abusing-http-hop-by-hop-request-headersの投稿の要約です

ホップバイホップヘッダーは、単一のトランスポートレベル接続に固有であり、主にHTTP/1.1で使用され、2つのード間のデータを管理するために使用されますクライアント-プロキシまたはプロキシ-プロキシなど)、転送されることを意図していません。標準のホップバイホップヘッダーには、Keep-AliveTransfer-EncodingTEConnectionTrailerUpgradeProxy-AuthorizationProxy-Authenticateが含まれます。これらはRFC 2616で定義されています。追加のヘッダーは、Connectionヘッダーを介してホップバイホップとして指定できます。

ホップバイホップヘッダーの悪用

プロキシによるホップバイホップヘッダーの不適切な管理はセキュリティの問題につながる可能性があります。プロキシはこれらのヘッダーを削除することが期待されていますが、すべてがそうするわけではなく、潜在的な脆弱性を作成することがあります。

ホップバイホップヘッダー処理のテスト

ホップバイホップヘッダーの処理は、特定のヘッダーがホップバイホップとしてマークされたときにサーバーの応答に変化が見られることでテストできます。ツールやスクリプトを使用してこのプロセスを自動化し、プロキシがこれらのヘッダーをどのように処理するかを特定し、ミス構成やプロキシの動作を明らかにすることができます。

ホップバイホップヘッダーの悪用はさまざまなセキュリティ上の影響をもたらす可能性があります。以下に、これらのヘッダーを悪用して潜在的な攻撃に利用する方法を示す例がいくつかあります:

X-Forwarded-Forを使用したセキュリティコントロールのバイパス

攻撃者はX-Forwarded-Forヘッダーを操作してIPベースのアクセス制御をバイパスできます。このヘッダーは、プロキシがクライアントの元のIPアドレスを追跡するためによく使用されます。ただし、プロキシがこのヘッダーをホップバイホップとして扱い、適切な検証なしに転送する場合、攻撃者は自分のIPアドレスを偽装できます。

攻撃シナリオ:

  1. 攻撃者は、X-Forwarded-Forヘッダーに偽のIPアドレスを含めて、プロキシの背後にあるWebアプリケーションにHTTPリクエストを送信します。
  2. 攻撃者はConnection: close, X-Forwarded-Forヘッダーも含め、プロキシにX-Forwarded-Forをホップバイホップとして扱うよう促します。
  3. 設定ミスのあるプロキシは、スプーフィングされたX-Forwarded-Forヘッダーを削除せずにWebアプリケーションにリクエストを転送します。
  4. 元のX-Forwarded-Forヘッダーが見えないWebアプリケーションは、リクエストを信頼されたプロキシから直接受信していると見なす可能性があり、不正なアクセスを許可する可能性があります。

ホップバイホップヘッダーインジェクションによるキャッシュ汚染

キャッシュサーバーがホップバイホップヘッダーに基づいて誤ってコンテンツをキャッシュする場合、攻撃者は悪意のあるヘッダーをインジェクトしてキャッシュを汚染できます。これにより、同じリソースを要求するユーザーに誤ったまたは悪意のあるコンテンツが提供されます。

攻撃シナリオ:

  1. 攻撃者は、キャッシュされてはならないホップバイホップヘッダーを持つリクエストをWebアプリケーションに送信しますConnection: close, Cookie)。
  2. 設定が誤っているキャッシュサーバーは、ホップバイホップヘッダーを削除せずに、攻撃者のセッションに特化したレスポンスをキャッシュします。
  3. 同じリソースを要求する将来のユーザーは、攻撃者向けに調整されたキャッシュされたレスポンスを受け取り、セッションハイジャックや機密情報の公開につながる可能性があります。
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥