Apache HTTP Server の脆弱性 CVE-2026-119618(mod_http2)の影響確認と対処手順
2.4.71へ更新
Apache HTTP Server の mod_http2 に競合状態によるRCEの脆弱性 CVE-2026-119618。2.4.55〜2.4.70が対象で、2.4.71で修正された。確認コマンド、環境別の更新手順、HTTP/2を止める緩和策、CISA KEVの状況まで解説する(2026年11月12日時点)。
2026年11月11日、Apache HTTP Server 2.4.71 が公開され、mod_http2 の競合状態によるヒープ破壊とリモートコード実行(RCE)の脆弱性「CVE-2026-119618」が修正された。Apache 自身の評価は最も高い critical で、影響は 2.4.55 から 2.4.70 まで。HTTP/2(h2・h2c)を有効にしている Web サーバーが対象で、HTTP/1.1 のみの構成は対象外と Red Hat は説明している。
本記事は2026年11月12日時点の Apache HTTP Server プロジェクトのセキュリティ情報、NVD、oss-security の告知、Red Hat・Debian のセキュリティ情報、CISA KEV、Docker 公式イメージの公開状況に基づく。確認できなかった点は「確認できていない」と書き、推測では埋めていない。同日分の他の脆弱性は11月12日の脆弱性まとめにまとめている。
3行でわかる要点
- 何が起きたか: Apache HTTP Server の mod_http2 に、複数スレッドが同じメモリを同期なしで扱う競合状態(CWE-362)があり、assign_headers() でヒープ破壊が起きて RCE につながり得る。Apache の重大度は critical。CVSS スコアは、NVD では2026年11月12日時点で未付与(Red Hat は独自に 9.8 としている)。
- 誰が対象か: Apache HTTP Server 2.4.55〜2.4.70 で HTTP/2 を有効にしているサーバー。mod_h2(GitHub 版)2.0.8〜2.0.42 も対象。2.4.54 以前と、HTTP/1.1 のみの構成は対象外とされる。
- 今日やること: ①自社の Apache の版と HTTP/2 の有効・無効を確認し、②2.4.71 かディストリビューションの修正パッケージへ更新して再起動し、③すぐ更新できなければ Protocols を http/1.1 だけにして HTTP/2 を止める。なお CISA の悪用確認済み脆弱性カタログ(KEV)には、本記事の確認時点で載っていない。
影響範囲の早見表
Apache のセキュリティ情報では、影響範囲は「2.4.55 から 2.4.70」と書かれている。ここでの「対象」は、その版で mod_http2 が組み込まれ、HTTP/2 が有効な場合を指す。
| 環境 | 影響バージョン | 修正版・状況(2026年11月12日時点) |
|---|---|---|
| Apache HTTP Server 本体(ソースビルド・公式配布物) | 2.4.55〜2.4.70 | 2.4.71(2026-11-11 公開) |
| mod_h2 単体(GitHub 版) | 2.0.8〜2.0.42 | 修正版の mod_h2 リリースは確認できていない。リポジトリは2026年6月にアーカイブ済み、最新は v2.0.42(5月29日)。2.4.71 同梱の mod_http2 を使う |
| Docker 公式 httpd イメージ | 2.4.70 以前のタグ | 2.4.71、2.4.71-alpine、2.4.71-alpine3.24、2.4.71-trixie のタグを確認 |
| RHEL 9 | 対象(Red Hat の重大度は Important) | mod_http2-2.0.26-7.el9_9.1(RHSA-2026:98981) |
| RHEL 10 | 対象(同 Important) | mod_http2-2.0.29-5.el10_3.1(RHSA-2026:98978) |
| RHEL 8 以前 | 対象外(Red Hat) | 不要 |
| Debian(bookworm・trixie・forky) | Debian の追跡ページで vulnerable | 本記事の確認時点で修正済みパッケージなし。sid のみ 2.4.71-1 で修正済み |
| Ubuntu | 確認できていない | Ubuntu のセキュリティページで確認 |
| 2.4.54 以前 | 対象外 | 不要(ただしサポート切れの古い版は別の脆弱性の問題がある) |
何が起きているのか — 仕組みを平易に
HTTP/2 は、ひとつの接続の中で複数のリクエストを同時にやり取りできる通信方式である。Apache では mod_http2 というモジュールがこれを担当し、同時に来た複数のリクエストを複数のスレッド(作業者)で並行して処理する。
Apache の公式情報は、原因を「共有リソースを不適切な同期で並行実行する問題」(CWE-362、競合状態)とし、assign_headers() という関数でヒープ破壊が起き、RCE につながり得ると説明している。Red Hat の説明はもう少し具体的で、「ワーカースレッドが、接続を担当するスレッドの持つメモリへ、ロックのない共有アロケータ経由で書き込む」ことが根本原因だとしている。ひとつの紙を2人が同時に書き換えて内容が壊れるようなものと考えるとよい。メモリが壊れた状態を攻撃者が狙って作ると、サーバーの動作を乗っ取れる、というのが RCE の意味である。
Red Hat の statement によれば、認証なしで外部から到達でき、公開研究では mod_http2 が有効な既定構成のサーバーへの安定した攻撃が示されたという。一方、RHEL 9・10 の mod_http2 はストリームごとに別のアロケータを使うため攻撃の難度が上がるとして、重大度を Important にしている。
CVSS スコアと悪用状況
NVD の記録では、CVE-2026-119618 は2026年11月11日に登録されたが、状態は「Received」のままで、CVSS スコアは2026年11月12日時点で付与されていない。Apache 側の CVE 情報には重大度 critical(Apache の評価)と CWE-362 が書かれている。Red Hat は独自に CVSS 3.1 のスコア 9.8(ネットワーク経由・認証不要・ユーザー操作不要)を付けている。スコアは機関ごとに異なる場合があるため、数値の比較よりも「認証なしで RCE に至り得る」という性質を重く見たい。
悪用状況については、CISA の KEV カタログ(known_exploited_vulnerabilities.json)に CVE-2026-119618 は載っていない(2026年11月12日に確認)。Apache のセキュリティ情報にも、悪用が確認された旨の記述はない。ただし Red Hat は、公開研究で攻撃が実証されていると述べており、「攻撃コードが存在し得る状態」と考えて対応するのが無難である。この状況は変わり得るので、KEV や各社の情報を継続して確認したい。
影響を受けるか確認する手順
手順1: Apache の版を確認する。 ディストリビューションによってコマンド名が異なる。
# いずれか動くもの(Debian / Ubuntu は apache2、RHEL 系は httpd)
httpd -v
apachectl -v
apache2 -v「Server version: Apache/2.4.xx」と出る。2.4.55〜2.4.70 なら対象の可能性がある。ただしディストリビューション版は、版番号が古くても修正だけが取り込まれていることがあるため、手順3のパッケージ情報も合わせて見る。
手順2: mod_http2 が読み込まれ、HTTP/2 が有効かを確認する。
# 読み込まれているモジュールに http2 があるか
apachectl -M 2>/dev/null | grep -i http2
# HTTP/2 を有効にしている設定(Protocols に h2 / h2c が含まれるか)
grep -rniE "^\s*Protocols" /etc/apache2 /etc/httpd 2>/dev/null
# 実際の応答でも確認できる(自分のサーバーに対してのみ)
curl -sI --http2 https://自社のドメイン/ | head -n 1http2_module が表示され、かつ Protocols に h2 または h2c が含まれていれば、HTTP/2 が有効と考えられる。curl の結果が「HTTP/2 200」なら実際に HTTP/2 で応答している。Protocols の行が見つからない、または http/1.1 だけの場合は、HTTP/2 は使われていない。設定は仮想ホストごとに書かれることもあるので、apachectl -S で有効な仮想ホストの設定ファイルを確認するとよい。
手順3: パッケージの版を確認する。
# Debian / Ubuntu
dpkg -l apache2 | tail -n 1
apt-cache policy apache2
# RHEL 系(mod_http2 は別パッケージ)
rpm -q httpd mod_http2
# Alpine
apk info -v apache2
apk info -v apache2-http2手順4: Docker の場合。 公式の httpd イメージを使っているなら、動いているコンテナの版を見る。
環境別の対処
Debian・Ubuntu
Debian のセキュリティ追跡ページでは、本記事の確認時点で bookworm(2.4.68-1~deb12u1、security の 2.4.67-1~deb12u3)、trixie(2.4.68-1~deb13u1、security の 2.4.69-1~deb13u1)、forky(2.4.69-1)が vulnerable となっており、修正済みは sid(2.4.71-1)だけだった。つまり、安定版(stable)向けの修正パッケージは、まだ出ていない。Ubuntu の追跡ページは、本記事の確認時点で該当ページを開けなかったため、状況を確認できていない。いずれも各ディストリビューションのセキュリティ情報で修正パッケージを確認し、出たらすぐに適用する。
RHEL 系(RHEL・Rocky・AlmaLinux など)
Red Hat によれば、RHEL 9・10 向けの修正は2026年11月11日に出ている(RHSA-2026:98981 は RHEL 9、RHSA-2026:98978 は RHEL 10)。RHEL 8 以前は対象外である。Rocky Linux や AlmaLinux などの互換ディストリビューションが同等の修正を出したかは、本記事では確認できていない。それぞれのアドバイザリで確認する。
Docker 公式 httpd イメージ・ソースビルド
イメージの中の httpd は、コンテナを再起動しても新しくならない。2.4.71 系のタグ(2.4.71、2.4.71-alpine、2.4.71-alpine3.24、2.4.71-trixie を Docker Hub で確認)でイメージを作り直してデプロイし直し、docker exec コンテナ名 httpd -v で版を確認する。ソースビルドの場合は、公式配布物の 2.4.71 でビルドし直す(修正コミットは 824beab)。Alpine 公式パッケージの修正状況は確認できていない。
mod_h2 単体・レンタルサーバー・リバースプロキシの場合
GitHub の mod_h2(2.0.8〜2.0.42)も対象だが、リポジトリは2026年6月にアーカイブ済みで、修正版の mod_h2 リリースは確認できていない。2.4.71 同梱の mod_http2 へ切り替える方向で公式情報を確認する。レンタルサーバーなどでは事業者の案内を確認し、なければ「CVE-2026-119618 への対応は済んでいるか」を問い合わせる。
CDN やロードバランサーが HTTP/2 を受け、オリジンの Apache とは HTTP/1.1 で通信する構成では、Red Hat の説明(Protocols で h2・h2c を有効にしたサーバーが対象)から、オリジン側で HTTP/2 を有効にしていなければ影響は小さいと読める。ただし公式の明記はなく、オリジンが外部から直接到達できるなら CDN を迂回される可能性がある。
更新できないときの緩和策
Apache の公式のセキュリティ情報には、更新以外の回避策は書かれていない。以下は、Red Hat が「HTTP/1.1 のみの構成は影響を受けない」と説明していることに基づく、暫定の対処である。修正ではないので、更新までのつなぎとして使う。
方法1: Protocols を http/1.1 だけにする。 設定ファイルの Protocols を、HTTP/2 を含まない形にする。
# 変更前の例(HTTP/2 を有効にしている)
# Protocols h2 http/1.1
# 変更後(HTTP/1.1 のみ)
Protocols http/1.1apachectl configtest
sudo systemctl restart apache2 # RHEL 系は httpd方法2: mod_http2 を無効にする。 Debian 系は sudo a2dismod http2、RHEL 系は LoadModule http2_module の行をコメントアウトし、いずれも再起動する。
副作用として、HTTP/2 が使えなくなり、ブラウザは HTTP/1.1 で接続する。サイトは動き続けるが、多数のファイルを読み込むページでは表示がわずかに遅くなる場合がある。HTTP/2 前提の通信(gRPC など)を Apache 経由で受けている場合は使えなくなる。更新後に元へ戻してよい。
時系列
| 日時 | 出来事 |
|---|---|
| 2026-10-26 | Anthropic の OSS Scanner(ANT-2026-MAPKT6MZ)が Apache のセキュリティチームに報告 |
| 2026-11-03 | Google Cloud Vulnerability Research の Anthony Weems 氏と Simon Scannell 氏が報告 |
| 2026-11-11 | 修正コミット 824beab を2.4系に適用。Apache HTTP Server 2.4.71 を公開(CVE-2026-106023、CVE-2026-109163 も同時に修正) |
| 2026-11-11 | oss-security に告知が投稿される。NVD に登録される(状態は Received、CVSS 未付与)。Red Hat が RHEL 9・10 の修正(RHSA)を公開 |
| 2026-11-12 | Docker 公式 httpd イメージに 2.4.71 系のタグが公開されていることを確認。Debian の安定版向け修正パッケージは未公開。CISA KEV には未掲載 |
今日やることチェックリスト
- 自社で Apache HTTP Server を動かしているサーバー・コンテナ・機器を洗い出した(Web サーバー、社内ポータル、開発・検証環境、NAS や複合機の管理画面も含めて)
- 各サーバーで httpd -v(または apache2 -v)の版を確認した
- apachectl -M | grep -i http2 と Protocols の設定で、HTTP/2 が有効かを確認した
- 2.4.55〜2.4.70 で HTTP/2 が有効なサーバーを、更新の優先度が高いものとして印を付けた
- 修正パッケージが出ているものは更新し、restart で再起動した(RHEL 9・10 は mod_http2 を更新)
- 修正パッケージが未公開のもの(Debian の安定版など)は、Protocols を http/1.1 にするか HTTP/2 を無効にして、更新の公開を待つ予定を決めた
- Docker は 2.4.71 系のタグでイメージを作り直し、デプロイし直した
- 更新後、httpd -v で 2.4.71 または修正パッケージの版になっているかを確認した
- 不審なアクセスやクラッシュの記録がないか、ログを確認した(下記)
ログの確認では、Apache の error_log に、子プロセスが異常終了したことを示す記録(segmentation fault、"child pid ... exit signal" など)が増えていないかを見る。メモリ破壊の攻撃は失敗するとクラッシュの痕跡が残ることがある。パッチ運用の全体像は、中小企業のパッチ・アップデート管理ガイドも参照。
HTTP/2 の脆弱性は繰り返し見つかる
HTTP/2 まわりの脆弱性は今回が初めてではない。Brotli の脆弱性 CVE-2026-111497も、HTTP/2 経由で悪用され得るとして話題になった。どのサーバーで HTTP/2 を有効にしているかを台帳に書いておくと、次の同種の問題で判断が速い。
よくある質問
HTTP/2 を使っていない(HTTP/1.1 だけ)の場合も、更新は必要ですか。
Red Hat は、HTTP/2(h2・h2c)を Protocols で有効にしたサーバーが対象で、HTTP/1.1 のみのサーバーは影響を受けないと説明している。ただし、設定を後から変えたり、仮想ホストの1つだけで HTTP/2 を有効にしていたりする場合もあるので、設定を確認したうえで、2.4.71 または修正パッケージへの更新は進めるのが安全である。
Debian や Ubuntu の安定版で、修正パッケージがまだ出ていません。どうすればよいですか。
本記事の確認時点で、Debian の追跡ページでは bookworm・trixie・forky が vulnerable で、修正済みは sid の 2.4.71-1 のみだった。Ubuntu は状況を確認できていない。修正パッケージが出るまでは、Protocols を http/1.1 だけにする、または mod_http2 を無効にして HTTP/2 を止める方法がある。修正が出たら更新し、緩和策は元へ戻してよい。
バージョンが 2.4.70 以下のままでも、修正済みということはありますか。
ある。ディストリビューションは、上流の新しい版に上げず、修正だけを古い版に取り込む(バックポート)ことがある。RHEL 9・10 のように、mod_http2 パッケージの版(2.0.26-7.el9_9.1 など)で確認する。パッケージの変更履歴(changelog)に CVE-2026-119618 が載っているかも判断材料になる。
攻撃はすでに始まっていますか。
CISA の KEV カタログには、本記事の確認時点(2026年11月12日)で載っていない。Apache のセキュリティ情報にも悪用確認の記述はない。ただし Red Hat は、公開研究で既定構成のサーバーへの安定した攻撃が示されたと述べている。悪用が確認されていない段階でも、認証不要の RCE として早めに更新するのが望ましい。
出典
- Apache HTTP Server 2.4 vulnerabilities(CVE-2026-119618・2.4.71)
- oss-security「CVE-2026-119618: Apache HTTP Server: mod_http2: heap corruption and RCE in assign_headers」(2026-11-11)
- Apache httpd 2.4.71 ChangeLog
- NVD: CVE-2026-119618
- Red Hat: CVE-2026-119618
- Debian Security Tracker: CVE-2026-119618
- Ubuntu Security: CVE-2026-119618
- CISA Known Exploited Vulnerabilities Catalog
- Docker Hub: httpd(公式イメージ)
- icing/mod_h2 リリース一覧(GitHub)
この記事に関連する無料ツール(登録不要・その場で結果)
お気軽にご相談ください
お問い合わせ