
CVE-2023-25690、WebAuthnバイパス、HTTP/3スマグリング、高度なXSS/RCEチェーンをカバーする、12のコンテナ化されたWebエクスプロイトチャレンジの包括的なコレクション。
「私は既存の道を旅するのではなく、虚空を自由に跳び越えます。間違って梱包すれば、秘密を間違った戸口に届けてしまうでしょう。」
このチャレンジは、UDP上にHTTP/3(QUIC)アプリケーションを重ねたものです。UDPはステートレスであり、プロキシはTCPのような厳格なHTTPリクエスト境界を強制しないため、プロキシとバックエンドサーバーの同期をずらすことが可能です。攻撃者は別のリクエスト内に隠れたHTTPリクエストをスマグリングできます。
注意 - 最大メッセージ長は1024バイト、実際に機能するのはGETリクエストのみ、メッセージは10秒後に破棄されます
ターゲット: byuctf.xyz:40011
この具体的な実装では、Pythonミドルウェア(udp_server.py)がポート40000で受信テキストを待ち受けます。このサーバーは、\r\n\r\nが見つかると実際のウェブサーバーにリクエストを転送します。UDPであるため、部分的なパケット配信が発生する可能性が高く、複数のリクエストを高速に送信したり、パケット境界を操作したりすると同期ずれが発生します。
このチャレンジを解くには、UDPの信頼性の低い性質と、ミドルウェアがリクエスト境界を処理する特定の方法を考慮する必要があります。
/エンドポイントにアクセスすると、ネザー接続の不安定性に関するヒントが得られます。/endpoints.txtに移動すると、200個の可能性のある隠しエンドポイントのリストが見つかります。solve.pyを参照)を作成します。スクリプトはエンドポイントを反復処理し、完全なレスポンス(ボディを含む)を受信するまで各エンドポイントに繰り返しリクエストを送信する必要があります。CH4KR4X2{P0D5_bl0ckch41n_br34ch}
このチャレンジは、ポート1337でFlaskサーバーを、ポート40000でudp_server.pyを実行します。
ビルド:
sudo docker build -t huup .
sudo docker network create -d bridge huup
実行:
sudo docker run -p 40011:40000/udp --detach --name huup --network huup huup:latest