「HTTP/2 Bomb」と呼ばれる新たなDoS攻撃、1分以内にWebサーバをクラッシュ

Image

「HTTP/2 Bomb」と名付けられた新たなサービス拒否(DoS)攻撃が発見されました。この攻撃は、1台のマシンから仕掛けてWebサーバを数秒以内でダウンさせることが可能です。

この手法は、NGINX、Apache HTTP Server、Microsoft IIS、Envoy、Cloudflare Pingoraなど、主要WebサーバのデフォルトHTTP/2設定に対して有効です。

HTTP/2 Bombは、攻撃的セキュリティ企業Califの研究者の指導のもと、OpenAIのCodexソフトウェアエージェントによって発見されました。この攻撃手法は、既知のHTTP/2 DoS手法を2つ組み合わせたものです。具体的には、HPACK圧縮増幅と、HTTP/2のフロー制御ストールによるSlowlorisスタイルのリソース保持です。

これらを組み合わせることで、100Mbps回線の1クライアントから数秒以内に数十ギガバイトのRAMを枯渇させることができます。サーバにメモリを確保させたうえで、その解放を阻止する仕組みです。

「100Mbpsの回線につながった家庭用コンピュータ1台で、脆弱なサーバを数秒以内にアクセス不能にできます。Apache httpdとEnvoyに対しては、1クライアントが約20秒で32GBのサーバメモリを消費・保持することが可能です」と研究者たちは述べています

HTTP/2 Bomb DoS攻撃は、HTTP/2プロトコルがヘッダ圧縮に使用するHPACKメカニズムを悪用します。HPACKの動的テーブルにヘッダを挿入し、1バイトという非常に小さなインデックス表現を使って繰り返し参照することで攻撃を成立させます。

その結果、攻撃者が送信した1バイトで、サーバ側に数千バイトのメモリ割り当てが発生します。EnvoyとApache httpdは最悪の比率を示しており、それぞれ5,700:1と4,000:1に達しています。

攻撃の第2段階では、リクエスト完了後もメモリが解放されないようにします。これは、フロー制御ウィンドウをゼロバイトとして通知することで実現します。サーバはレスポンスを送信する代わりに、タイムアウトを回避するために小さなWINDOW_UPDATEフレームを定期的に送り続けます。

この状態ではリクエストが完了せず、確保されたメモリは解放されないまま増え続けます。

Califの研究者によると、この手法はデコード済みヘッダの合計サイズ制限といった既存の防御策を回避できます。攻撃に使用するヘッダ値は非常に小さく、増幅はヘッダごとの内部管理処理とメモリ割り当てによって生じるためです。

4つの主要WebサーバでこのDoS攻撃手法をテストしたところ、以下の結果が得られました。

  • Envoy 1.37.2:約10秒で32GBのRAMを枯渇
  • Apache httpd 2.4.67:約18秒で32GBのRAMを枯渇
  • nginx 1.29.7:約45秒で32GBのRAMを枯渇
  • IIS(Windows Server 2025):約45秒で64GBのRAMを枯渇

HTTP/2 Bomb DoS攻撃の詳細な技術情報は、今月後半に開催されるReal World AI Securityカンファレンスにて、研究者Quang Luong氏によるプレゼンテーションで公開される予定です。

ただし、この新たな攻撃手法の概念実証(PoC)エクスプロイトはすでに公開されています

Image

影響と対策

Califの研究者は、攻撃を構成する各手法自体は特段新しくはないものの、2つの技術を組み合わせることで大きな影響をもたらすと強調しています。

HPACKアルゴリズムの仕様はメモリ増幅リスクに言及しているものの、攻撃者がHTTP/2フロー制御を通じて確保済みメモリを無期限に保持した場合の挙動については規定されていないと研究者たちは指摘しています。

ただし、一部のプラットフォームにはすでにパッチが提供されており、すべてのWebサーバが「HTTP/2 Bomb」に脆弱なわけではありません。また、カスタム設定によっては、この攻撃に対する間接的な保護が得られる場合もあります。

たとえば、CDNやリバースプロキシの背後で動作するシステムは、脆弱なHTTP/2エンドポイントを直接公開しないため、攻撃対象にしにくい構成です。また、カスタムのヘッダ数制限、WAF、リバースプロキシを導入済みの環境や、HTTP/2を無効化している環境もあります。

この問題はnginxバージョン1.29.8で修正され、max_headersディレクティブが追加されました。Apache httpdのmod_http2 2.0.41でも修正が行われており、CVE-2026-49975という識別子が割り当てられています。

執筆時点では、IIS、Envoy、Pingoraに対するパッチはまだ提供されていません。これらのWebサーバには、可能であればHTTP/2を無効化し、厳格なヘッダ数制限を適用するプロキシやファイアウォールを前段に配置することが推奨されます。

検証のギャップ:自動ペネトレーションテストが答える問いは1つ。あなたには6つ必要です。

自動ペネトレーションテストツールは確かに価値をもたらしますが、「攻撃者がネットワーク内を横断できるか」という1つの問いに答えるために設計されています。コントロールが脅威をブロックできるか、検知ルールが機能するか、クラウド設定が堅牢かといった点はテストの対象外です。

本ガイドでは、実際に検証すべき6つの攻撃対象領域を解説しています。

今すぐダウンロード

翻訳元: https://www.bleepingcomputer.com/news/security/new-http-2-bomb-dos-attack-crashes-web-servers-in-under-a-minute/

ソース: bleepingcomputer.com