Apache 脆弱性 CVE-2026-119618 は、Apache HTTP Server の mod_http2 でヒープ破壊が起き、リモートコード実行(RCE)につながりうる問題だ。深刻度は Apache のセキュリティチームの評価で critical。対象は 2.4.55〜2.4.70 で、2026-11-11 公開の 2.4.71 で修正された。本記事は公式の一覧、CHANGES、修正コミットを読み、確認コマンドを Ubuntu の apache2 で実行して確かめた。

TIMELINE時系列

報告から16日で 2.4.71 を公開

  1. 2026-10-26

    Anthropic の OSS Scanner が Apache のセキュリティチームへ報告

  2. 2026-11-03

    Google Cloud の研究者も同じ問題を報告

  3. 2026-11-11

    2.4.x に修正が入り、Apache HTTP Server 2.4.71 を公開

  4. やること

    2.4.55〜2.4.70 で mod_http2 を使っていれば更新する

出典: Apache HTTP Server 2.4 vulnerabilities(httpd.apache.org・2026-11-12 確認)

30秒でわかる CVE-2026-119618(2026-11-12 時点)

  • ・何が起きるか:mod_http2 の競合状態からヒープ破壊。RCE につながりうると公式は書く
  • ・対象:Apache HTTP Server 2.4.55〜2.4.70。単体の mod_h2 は 2.0.8〜2.0.42
  • ・修正版:2.4.71(2026-11-11 公開)。同時に別の2件も修正
  • ・見つけたのは:Anthropic の OSS Scanner と、Google Cloud の研究者

まずやること

・自分でビルドして運用している人:apachectl -M で http2_module が出るかを見る。出て、版が 2.4.55〜2.4.70 なら 2.4.71 へ更新する
・OS のパッケージで入れている人:配布元のセキュリティ情報で、CVE-2026-119618 の修正が入ったパッケージの版を確かめて更新する。版番号が古いままでも修正済みのことがある
・ホスティングやマネージドの利用者:更新は事業者の作業になる。対応状況の告知を確かめる

依存先の脆弱性が自分のシステムに及ぶ構図はサプライチェーン攻撃とは|手口・防御ツール比較・npm 12の新機構まで実践解説にまとめている。

Apache 脆弱性 CVE-2026-119618 の時系列

公式の一覧にある日付を並べる。

日付 出来事
2026-10-26 Anthropic の OSS Scanner が、Apache のセキュリティチームへ報告
2026-11-03 Google Cloud Vulnerability Research の Anthony Weems 氏と Simon Scannell 氏が報告
2026-11-11 2.4.x ブランチに修正(コミット 824beab)
2026-11-11 Apache HTTP Server 2.4.71 を公開

最初の報告から公開まで16日。報告者は2組いて、AI による診断と人の研究者が、別々に同じ問題へたどり着いている。OSS Scanner の仕組みは OSS Scanner とは|Anthropic が無料で提供するAI 脆弱性診断の登録手順と、届くレポートの信頼度 に書いた。

何が起きたか:mod_http2 の競合状態

mod_http2 は、Apache HTTP Server で HTTP/2 を扱うモジュールだ。公式の説明は短い。

Concurrent Execution using Shared Resource with Improper Synchronization vulnerability in Apache HTTP Server’s mod_http2 in assign_headers() can lead to RCE.

共有している資源を、同期が不十分なまま並行して使ってしまう、という種類の問題だ。場所は mod_http2 の assign_headers() で、CHANGES の見出しは「heap corruption and RCE」となっている。

修正コミットは小さい。modules/http2/h2_request.c の1行を書き換えたもので、コミットの題は「mod_http2: assign_headers update table」。Apache は攻撃の手順を公開しておらず、どんなリクエストで起きるかは公式の文書からは読み取れない。本記事も推測しない。

2.4.71 は、この件を含めて3件を修正した。

THREE FIXES2.4.71 の修正

2.4.71 が直した3件と深刻度

  1. 1.CVE-2026-119618(critical)

    mod_http2 の assign_headers でヒープ破壊。RCE につながりうる。対象は 2.4.55〜2.4.70

  2. 2.CVE-2026-106023(important)

    mod_md の NULL ポインタ参照で子プロセスが落ちる。対象は 2.4.30〜2.4.70

  3. 3.CVE-2026-109163(low)

    mod_vhost_alias で1バイトのスタック上書き。対象は 2.4.69 と 2.4.70

出典: Apache HTTP Server 2.4 vulnerabilities「Fixed in Apache HTTP Server 2.4.71」。深刻度は Apache のセキュリティチームの評価
CVE 深刻度 モジュール 対象の版
CVE-2026-119618 critical mod_http2 2.4.55〜2.4.70
CVE-2026-106023 important mod_md 2.4.30〜2.4.70
CVE-2026-109163 low mod_vhost_alias 2.4.69・2.4.70

mod_md の件は、リクエストの処理中に NULL ポインタを参照して子プロセスが落ちる。mod_vhost_alias の件は、2.4.69 で直した CVE-2026-63292 の修正のあとに残った、1バイトのスタック上書きだ。

CVE-2026-119618 への対策:2.4.71 への更新と対象の見分け方

対策は更新だ。公式の一覧に、設定変更などの回避策は載っていない。

WHO IS AFFECTED対象の見分け方

版の範囲と mod_http2 の2点で見る

CVE-2026-119618 の対象

  • Apache HTTP Server 2.4.55〜2.4.70
  • mod_http2 を読み込んでいる
  • GitHub 版 mod_h2 の 2.0.8〜2.0.42
  • 配布元の修正がまだ入っていない

対象から外れる

  • 2.4.71 以降へ更新済み
  • 2.4.54 以前(この CVE の範囲外)
  • mod_http2 を読み込んでいない
  • 配布元が修正を取り込んだパッケージ
出典: 版の範囲は Apache 公式。モジュールの有無は apachectl -M で確かめる。配布元のパッケージは版番号だけでは判定できない

入れ方によって、見る場所が変わる。

入れ方 修正の入り方 確かめる場所
公式のソースからビルド 2.4.71 へ上げる apachectl -v の版
OS のパッケージ(apt・dnf など) 配布元が修正を取り込む。版番号は上がらないことがある 配布元のセキュリティ情報
GitHub の mod_h2 を別に組み込み 2.0.8〜2.0.42 が対象 mod_h2 のリリース
コンテナイメージ イメージの作り直しが要る ベースイメージの版

GitHub の mod_h2(icing/mod_h2)は、2026-11-12 に確かめた時点で最新のタグが v2.0.42 だった。対象の範囲の上限と同じ版で、修正を含むタグは確認できなかった。単体の mod_h2 を組み込んでいる場合は、リリースを待つか、本体付属の mod_http2 に戻すことを検討する。

すぐに更新できない場合、HTTP/2 を止めれば mod_http2 のコードは動かなくなる。Debian・Ubuntu では a2dismod http2 のあとに再起動する。ただしこれは Apache が示した回避策ではなく、HTTP/2 を使う利用者への影響もある。更新までのつなぎと考える。

自分のサーバーを確認するコマンド

見る点は2つ。版と、mod_http2 を読み込んでいるかだ。次の2行は Ubuntu 24.04 の apache2 で実行して確かめた。

apachectl -v
apachectl -M 2>/dev/null | grep -i http2

mod_http2 を有効にしたサーバーでは、次のように出た。

Server version: Apache/2.4.58 (Ubuntu)
Server built:   2026-10-16T01:03:15
 http2_module (shared)

mod_http2 を無効にした状態では、2行目は何も出さず、終了コードは 1 だった。RHEL 系はコマンド名が httpd になる(httpd -v、httpd -M)。こちらは本記事では未検証。

HTTP/2 をどこで有効にしているかは、有効な設定だけを対象に Protocols を探すとわかる。

grep -RnE '^\s*Protocols\b' /etc/apache2/apache2.conf /etc/apache2/mods-enabled /etc/apache2/conf-enabled /etc/apache2/sites-enabled

これは構成の確認で、脆弱性の判定ではない。この結果だけでは、対象とも対象外とも言えない。上の例の 2.4.58 は数字のうえでは対象の範囲に入るが、配布元が修正を取り込んでいれば影響しない。逆に http2_module が出なくても、別の設定ファイルから読み込む構成や、前段の別のサーバーまでは見ていない。最終的な根拠は、公式の 2.4.71 か、配布元の修正パッケージに置く。

影響範囲と、まだわかっていないこと

影響を受けやすいのは、HTTP/2 を有効にしてインターネットに公開している Apache だ。Ubuntu の apache2 では、mod_http2 を有効にすると Protocols h2 h2c http/1.1 が既定で入ることを確かめた。HTTPS のサイトで HTTP/2 を使う構成は珍しくない。

わかっていない点もある。

・悪用の有無:公式の一覧と CHANGES に記載は無い
・攻撃の条件:認証が要るか、どんなリクエストで起きるかは公開されていない
・単体の mod_h2 の修正版:公式は対象の範囲だけを示している

Web サーバーの HTTP/2・HTTP/3 の実装では、メモリ破壊の修正が続いている。NGINX の例は NGINX HTTP/3 の Use-after-Free|CVE-2026-42530・1.31.2 で修正 に、圧縮ライブラリ側の例は HTTP2Shell とは|node2shellの正体は上流Brotliの問題、HTTPでBrotliを展開する多くのライブラリに波及 に書いた。前段に置くサーバーは、アプリより先に更新の順番を決めておきたい。

参照ソース

・Apache HTTP Server 2.4 vulnerabilities(Apache HTTP Server Project)
・Changes with Apache 2.4.71(Apache 公式配布サイト)
・修正コミット 824beab「mod_http2: assign_headers update table」(apache/httpd)
・CVE-2026-119618: Apache HTTP Server Remote Code Execution Fixed in 2.4.71(SecurityOnline)