10 KiB
ホップバイホップヘッダー
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- サイバーセキュリティ企業で働いていますか? HackTricksで会社を宣伝したいですか?または、最新バージョンのPEASSにアクセスしたり、HackTricksをPDFでダウンロードしたいですか?SUBSCRIPTION PLANSをチェックしてください!
- The PEASS Familyを見つけてください。独占的なNFTのコレクションです。
- 公式のPEASS&HackTricksのグッズを手に入れましょう。
- 💬 Discordグループまたはtelegramグループに参加するか、Twitterで🐦@carlospolopmをフォローしてください。
- ハッキングのトリックを共有するには、hacktricksリポジトリとhacktricks-cloudリポジトリにPRを提出してください。
RootedCONは、スペインで最も関連性の高いサイバーセキュリティイベントであり、ヨーロッパでも最も重要なイベントの一つです。この大会は、技術的な知識を促進することを目的としており、あらゆる分野の技術とサイバーセキュリティの専門家にとっての活発な交流の場です。
{% embed url="https://www.rootedcon.com/" %}
ホップバイホップヘッダーとは何ですか?
ホップバイホップヘッダーは、リクエストを処理しているプロキシによって処理され、消費されるヘッダーであり、エンドツーエンドのヘッダーとは異なります。
HTTP/1.1仕様によると、以下のヘッダーはデフォルトでホップバイホップとして扱われます:Keep-Alive
、Transfer-Encoding
、TE
、Connection
、Trailer
、Upgrade
、Proxy-Authorization
、Proxy-Authenticate
。これらのヘッダーがリクエストで見つかった場合、準拠したプロキシはこれらのヘッダーが示す処理またはアクションを実行し、次のホップに転送しません。
これらのデフォルトに加えて、リクエストはホップバイホップとして扱われるカスタムなヘッダーのセットを定義することもできます。これは、これらのヘッダーをConnection
ヘッダーに追加することで行います:
Connection: close, X-Foo, X-Bar
hop-by-hopヘッダーの乱用に関する理論
理論上、プロキシは次のアドレスに送信する前に受信したhop-by-hopヘッダーを削除するはずです。しかし、実際には、一部のプロキシはこれを行い、他のプロキシは自身のConnection
ヘッダーを追加してすべてのヘッダーを送信します。
hop-by-hop削除のテスト
もし、ヘッダーが設定されている場合と設定されていない場合でサーバーの応答が大きく異なる場合、hop-by-hop削除を探すことができます。例えば、Cookieヘッダーは、有効な内容で設定されている場合と設定されていない場合でサーバーの応答が大きく異なります。
したがって、有効なヘッダーと次のようなConnectionヘッダーの値Connection: close, Cookie
を持つリクエストを送信し、クッキーが送信されていない場合と同じ応答が得られるかどうかを確認します。もし同じ応答が得られる場合、ヘッダーを削除するプロキシが存在します。
このスクリプトを使用して、ヘッダーが削除された場合にサーバーの応答がどのように異なるかを確認することができます。また、このリストのような既知のヘッダーのリストを渡すことで、元のリクエストに含まれていないにもかかわらず効果を引き起こしているヘッダーを観察することができます。
for HEADER in $(cat headers.txt); do python poison-test.py -u "https://target" -x "$HEADER"; sleep 1; done
X-Forwarded-For の悪用
一般的に、プロキシはクライアントのIPを X-Forwarded-For
ヘッダに追加します。次のホップはリクエストの送信元を知るためです。しかし、攻撃者が Connection: close, X-Forwarded-For
のような Connection 値を送信し、最初のプロキシがホップごとのヘッダを値とともに送信する場合(特別な Connection 値を送信する場合)、2番目の値は X-Forward-For ヘッダを削除する可能性があります。最終的なアプリケーションはリクエストを送信したのが最後のプロキシであると思い込み、IPホワイトリストによって保護されたリソースにアクセスできるようになる可能性があります(たとえば、/admin
など)。
対象となるシステムによっては、Forwarded
、X-Real-IP
、および他の一部のヘッダが存在する場合もあります。
プロキシの検出とサービスのフィンガープリント
この技術は、クッキーの技術を使用してプロキシを検出するのに役立つ場合があります。また、サービスを検出するためにも使用できます。たとえば、この技術を使用して X-BLUECOAT-VIA
ヘッダを削除し、エラーが発生した場合、Bluecoat が使用されていることがわかります。
その他の攻撃
- この技術を悪用した DoS キャッシュポイズニングについては、元のリンクを参照してください。
- これは新しいヘッダを挿入する可能性のある攻撃に役立つ場合があります(確率は低いです)。
- また、これは防御機能をバイパスするのに役立つ場合があります。たとえば、ヘッダの欠如がリクエストを WAF で処理しないことを意味する場合、この技術を使用して WAF をバイパスできます。
参考文献
{% embed url="https://nathandavison.com/blog/abusing-http-hop-by-hop-request-headers" %}
RootedCON は スペインで最も関連性の高いサイバーセキュリティイベントであり、ヨーロッパでも最も重要なイベントの一つです。技術的な知識を促進することを使命としており、この会議はあらゆる分野の技術とサイバーセキュリティの専門家の活発な交流の場です。
{% embed url="https://www.rootedcon.com/" %}
☁️ HackTricks Cloud ☁️ -🐦 Twitter 🐦 - 🎙️ Twitch 🎙️ - 🎥 Youtube 🎥
- サイバーセキュリティ企業で働いていますか? HackTricks で会社を宣伝したいですか?または、最新バージョンの PEASS を入手したり、HackTricks を PDF でダウンロードしたりしたいですか? SUBSCRIPTION PLANS をチェックしてください!
- The PEASS Family という独占的な NFT のコレクションを発見してください。
- 公式の PEASS & HackTricks スワッグ を手に入れましょう。
- 💬 Discord グループ または Telegram グループ に参加するか、Twitter 🐦@carlospolopm** をフォローしてください。**
- ハッキングのトリックを共有するには、hacktricks リポジトリとhacktricks-cloud リポジトリに PR を提出してください。