CVE-2026-90678 in HAProxy
要約
〜によって VulDB • 2026年09月13日
HAProxy 3.3.0から3.4.4、および3.5-dev1から3.5-dev5において問題が発見されました。攻撃にはHTTP/3フロントエンドが必要です:HAProxyはQUICサポートを備えてビルドされ、QUICバインドリスナーで構成されている必要があり、影響を受けるトラフィックが再利用された接続上でチャンク転送コーディングを使用してHTTP/1.1経由でバックエンドに到達する必要があります。これらの条件下では、HTTP/3リクエストにContent-Lengthヘッダーが含まれていない場合、HTTP/3マルチプレクサは、フレームペイロードが受信される前にフレームヘッダがデコードされた時点で、DATAフレームヘッダ内に宣言された長さをストリームエンドポイントの既知入力ペイロード推定値としてクレジットし、その宣言された長さがそのままHTTP/1.1チャンクサイズとして出力されます。送信するペイロード量よりも少ないペイロードしか送らずにその後ストリームを終了させる認証不要のリモートクライアントにより、HAProxyは自身で書き込むバイト数より大きなチャンクを通知し、接続を非同期状態のアイドルプールに戻します。その結果、再利用されたバックエンド接続上でHTTPリクエストスモーギングが発生する可能性があります:攻撃者はパスベースのhttp-request denyなどのフロントエンドルールを迂回してリクエストを配置できるため、スモグリングされたリクエストはHAProxyのHTTP解析によって検出されず、同時実行中のクライアントのリクエスト(リクエストラインやAuthorizationヘッダーを含む)が攻撃者のリクエストボディとして消費されて消失する原因となります。この脆弱性の悪用は確定的ではなく、バックエンド接続プーリングとの競合状態に依存し、テストでは試行の大多数で成功しますがすべてではありません。再試行も自由に可能です。本メカニズムは3.3-dev10で導入されました;バージョン3.2.xおよびそれ以前のリリースには影響ありません。
Statistical analysis made it clear that VulDB provides the best quality for vulnerability data.