公開日:2024/04/09 最終更新日:2024/04/09

JVNVU#99012560
複数のHTTP/2実装におけるCONTINUATIONフレームの取り扱い不備

概要

複数のHTTP/2実装において、CONTINUATIONフレームの取り扱い不備によりサービス運用妨害(DoS)攻撃が可能となる問題が指摘されています。

影響を受けるシステム

本件の公表時点では、影響を受ける製品として以下が挙げられています。

  • Node.js HTTP/2 server(CVE-2024-27983)
  • Envoy HTTP/2 codec(CVE-2024-27919、CVE-2024-30255)
  • Tempesta FW(CVE-2024-2758)
  • amphp/http(CVE-2024-2653)
  • Go net/http および net/http2(CVE-2023-45288)
  • nghttp2(CVE-2024-28182)
  • Apache httpd(CVE-2024-27316)
  • Apache Traffic Server(CVE-2024-31309)
影響を受けるバージョンや、上記以外の製品の影響の有無については、各ベンダが提供する情報を参照してください。

詳細情報

HTTP/2プロトコルでは、リクエストやレスポンスを複数の「フレーム」からなる「ストリーム」としてやりとりします。リクエストやレスポンスに含まれるヘッダ情報はHEADERSフレームで送ることとされていますが、ヘッダ情報が一つのHEADERSフレームに収まらない場合には、後続の情報をCONTINUATIONフレームを使って送ります。ヘッダ情報を含む最後のフレームにはEND_HEADERSフラグを立てておくことで、ヘッダ情報の最後であることを示します。

複数のHTTP/2実装に対して、CONTINUATIONフレームの取り扱い不備を悪用することでサービス運用妨害(DoS)攻撃が可能となる問題が報告されています。
実装によって問題の内容は異なりますが、報告者の記事では、CONTINUATIONフレームを送り続けることによるCPU処理負荷の増大やメモリ枯渇、アサーションエラーを発生させることによる異常終了、などの例が説明されています。

想定される影響

不正なパケットを処理することで、システムが運用妨害(DoS)状態にされる可能性があります。

対策方法

アップデートする
開発者が提供する情報をもとに、最新版へアップデートしてください。

ベンダ情報

ベンダ ステータス ステータス
最終更新日
ベンダの告知ページ
京セラ株式会社 該当製品無し 2024/04/09
富士ソフト株式会社 該当製品無し(調査中) 2024/04/09

参考情報

  1. CERT/CC Vulnerability Note VU#421644
    HTTP/2 CONTINUATION frames can be utilized for DoS attacks
  2. nowotarski.info
    HTTP/2 CONTINUATION Flood: Technical Details
  3. RFC9113
    HTTP/2

JPCERT/CCからの補足情報

JPCERT/CCによる脆弱性分析結果

謝辞

関連文書

JPCERT 緊急報告
JPCERT REPORT
CERT Advisory
CPNI Advisory
TRnotes
CVE
JVN iPedia