Apache HTTP Server 是很常見的網站伺服器軟體,不少公司官網、WordPress 主機和內部系統背後都是它在處理網頁請求。2026 年 5 月官方才修補過另一個 HTTP/2 相關、官方列為重要等級(important)的問題(CVE-2026-23918),這個月又出現新的一個。
這次是 CVE-2026-119618,出問題的是負責 HTTP/2 的 mod_http2 模組,Apache 官方標為 Critical,成功利用可能讓攻擊者遠端執行程式碼。官方在 2026-11-11 釋出 2.4.71 修補。我們來看看該先做什麼,以及怎麼確認自己有沒有中。
先做這件事:更新 Apache
最直接的做法:把 Apache HTTP Server 更新到 2.4.71 或更新的版本。
Apache 官方公告頁把這個漏洞列在「Fixed in Apache HTTP Server 2.4.71」底下,沒有提供設定上的解法,列出的處理方式就是升級。
如果 Apache 是用 Debian、Ubuntu、RHEL 這類發行版的套件管理器裝的,就等發行版推出修補套件再更新,不要自己下載原始碼覆蓋。版本號怎麼對照,看下一節。
怎麼確認自己的版本有沒有受影響
查 Apache 版本
在主機上執行下面的指令,看 Server version 那行:
httpd -v
Debian、Ubuntu 的執行檔通常叫 apache2:
apache2 -v
也可以用套件管理器查已安裝版本:
# Debian / Ubuntu
apt-cache policy apache2
# RHEL 系列
rpm -q httpd
對照受影響範圍
| 項目 | 內容 |
|---|---|
| 受影響版本 | Apache HTTP Server 2.4.55 到 2.4.70 |
| 已修補版本 | 2.4.71(2026-11-11 釋出) |
| 獨立版 mod_h2(GitHub) | 2.0.8 到 2.0.42 |
| 觸發條件 | 伺服器有啟用 HTTP/2 |
例如 Server version: Apache/2.4.58 落在 2.4.55 到 2.4.70 之間,有開 HTTP/2 就要處理;Apache/2.4.71 則已包含修補。
Apache 官方文件說明,HTTP/2 要靠 Protocols 指令啟用。設定檔裡有 Protocols h2 http/1.1 或 Protocols h2 h2c http/1.1 就代表有開。Red Hat 的 CVE 頁面也表示,只提供 HTTP/1.1 的伺服器不受影響。可以這樣搜尋(Debian 系設定檔多在 /etc/apache2,RHEL 系多在 /etc/httpd):
grep -R "Protocols" /etc/apache2 /etc/httpd 2>/dev/null
apachectl -M | grep http2
發行版的版本號要另外看
發行版會自己重新打包,套件版本號不一定和 Apache 官方同步,要回到發行版自己的安全追蹤頁確認。Debian Security Tracker 針對這個 CVE,撰稿時的狀態是:
| 發行版 | apache2 套件版本 | 狀態 |
|---|---|---|
| Debian trixie(security) | 2.4.71-1~deb13u1 | 已修補 |
| Debian sid | 2.4.71-1 | 已修補 |
| Debian bookworm(security) | 2.4.67-1~deb12u3 | 仍列為有漏洞,未列修補版本 |
RHEL 方面,Red Hat 表示 RHEL 9 與 10 受影響,嚴重度為 Important,RHEL 8 以前不受影響;撰稿時頁面上沒有看到修補 errata 資訊。Ubuntu 的 CVE 頁面我撰稿時沒有查到資料,使用 Ubuntu 的讀者請自行到 Ubuntu Security 查詢 apache2 的最新狀態。
漏洞內容
官方描述:mod_http2 的 assign_headers() 在存取共用資源時缺少適當同步(race condition),造成 heap 記憶體損毀,進而可能遠端執行程式碼。修補 commit 是 2.4.x 分支的 824beab。
雲端資安公司 Wiz 的文章補充:攻擊者從遠端發動、不需要驗證身分,程式碼會以網頁伺服器行程的權限執行;發文時(2026-11-11)沒有公開攻擊程式,也沒有在野外被利用的回報。Wiz 的資料顯示 64% 的雲端環境有受影響資源,51% 有對外公開的執行個體,不過這個比例沒有排除實際設定,不等於真正可被利用的比例。
以上統計與「尚未被利用」的說法出自 Wiz,截至撰稿時,Apache 官方公告沒有相關說明。有需要的讀者可以之後再到 Apache HTTP Server 官方安全公告頁查詢最新狀態。
官方記載的時間軸是:2026-10-26 回報給 Anthropic 資安團隊,2026-11-03 回報給 Google 資安團隊,2026-11-11 修補。發現者列的是 Anthropic 的 OSS Scanner,以及 Google Cloud Vulnerability Research 的 Anthony Weems 與 Simon Scannell。
暫時無法更新怎麼辦
先講清楚:Apache 官方公告沒有提供暫時緩解方案,正解仍是更新。
一時更新不了的話,Wiz 建議關閉 HTTP/2,改成只用 HTTP/1.1。做法在 Apache 官方 HTTP/2 說明文件裡:從 Protocols 拿掉 h2、h2c,或不載入 mod_http2 模組。
Protocols http/1.1
放在伺服器層級就是整台都不用 HTTP/2。官方文件示範過可以只在特定 VirtualHost 啟用 HTTP/2,所以每個 <VirtualHost> 裡的 Protocols 都要檢查,確保沒有留著 h2。改完要重新載入 Apache 設定才會生效。
這只是更新前的過渡做法,關掉後瀏覽器會改走 HTTP/1.1,載入效能可能受影響;更新到 2.4.71 後可以再改回來。
發佈留言