這是一篇關於 Apache HTTP Server 的 mod_http2 中一個可能導致遠端程式碼執行(RCE)的漏洞的解析。本文從防禦方的角度說明發生了什麼、誰受影響以及如何應對,不涉及攻擊步驟。
- CVE
- CVE-2026-119618(Apache HTTP Server: mod_http2: heap corruption and RCE in assign_headers)
- 嚴重度
- Apache 評級:critical(其最高階別)。Apache 的公告和 CVE.org 記錄中沒有 CVSS 評分(Red Hat 自行給出 9.8)
- 型別
- 在沒有適當同步的情況下併發使用共享資源(CWE-362);堆損壞導致 RCE
- 受影響
- Apache HTTP Server 2.4.55 至 2.4.70。GitHub 上的 mod_h2:2.0.8 至 2.0.42
- 修復
- Apache HTTP Server 2.4.71(2026年11月11日發布)
- 同時修復
- CVE-2026-106023(mod_md,important)、CVE-2026-109163(mod_vhost_alias,low)
- 利用情況
- 未見實際利用報告(Red Hat 稱已發表的研究展示了攻擊)。未列入 CISA KEV 的 11 月 10 日版本
- 臨時解決辦法
- Apache 的公告中沒有列出
僅看版本號是不夠的
Debian、Red Hat 等有時會在不改變版本號的情況下向後移植修復。在已打修補程式的系統上,apache2 -v 或 httpd -v 可能顯示舊版本。反過來,也不要僅憑版本號就覺得安全:請查看軟體包的變更日誌或發行版的公告。
這是什麼樣的漏洞
Apache 的公告稱,在 mod_http2 的 assign_headers() 中,在沒有適當同步的情況下併發使用共享資源,導致堆損壞,並可能導致遠端程式碼執行。它被歸類為 CWE-362。
- Apache 的公告沒有給出利用的詳細條件,本站也不作猜測。
- 它是透過兩份獨立的報告發現的。一家基於 AI 的程式碼分析工具的開發者於 2026年10月26日向 Apache 安全團隊報告,一家雲服務商的安全研究團隊於 11 月 3 日報告。
- Apache 於 11 月 11 日將修復合併到 2.4 分支,並於當天發布了 2.4.71。
- 在 GitHub 上發布的獨立 mod_h2 也受影響(2.0.8 至 2.0.42)。如果您是在 Apache 自帶的 mod_http2 之外單獨安裝的它,也請檢查。
受影響範圍
| 項目 | 詳情 |
|---|---|
| 產品 | Apache HTTP Server(mod_http2) |
| 受影響版本 | 2.4.55 至 2.4.70 |
| 修復版本 | 2.4.71 |
| 獨立 mod_h2(GitHub) | 2.0.8 至 2.0.42 受影響 |
| 嚴重度 | Apache:critical(無 CVSS)。Red Hat 自行給出 9.8 |
| 臨時解決辦法 / 緩解措施 | Apache 的公告中沒有列出 |
- 2.4.54 及更早版本不在公告的範圍之內。舊版本還積累了其他漏洞,因此無論如何都建議考慮更新。
- 公告沒有說只有啟用 HTTP/2 的配置才受影響。下一節的資訊來自 Red Hat。
2.4.71 中同時修復的另外兩個問題
| CVE | 說明 | Apache 評級 | 受影響版本 |
|---|---|---|---|
| CVE-2026-106023 | mod_md:空指標解引用導致子程序崩潰 | important | 2.4.30 至 2.4.70 |
| CVE-2026-109163 | mod_vhost_alias:1 位元組棧緩衝區覆蓋(CVE-2026-63292 修復後遺留的問題) | low | 2.4.69 和 2.4.70 |
更新到 2.4.71 即可修復這三個問題。
各發行版的狀態(截至2026年11月13日)
| 廠商 | 狀態 |
|---|---|
| Debian | 安全跟蹤頁面將 bookworm(12)列為已在 2.4.71-1 |
| Ubuntu | 所有版本均為“Needs evaluation”;未列出修復版本。優先順序:High |
| Red Hat | RHEL 9 和 10 受影響,評級為 Important。RHEL 8 及更早版本不受影響。操作步驟見 Red Hat 安全公告 RHSB-2026-017 |
- Red Hat 解釋說,RHEL 9 和 10 被評為 Important 而不是 Critical,是因為每個 HTTP/2 流都有自己的記憶體分配器(據 Red Hat 稱,從獨立的分配器為每個流分配記憶體會使利用更困難)。
- 此表是某一日期的檢查結果,之後會發生變化。請在各廠商的頁面上核實適用於您環境的最新情況。
如何確認自己是否受影響
檢查 Apache 版本
執行 apache2 -v(Debian 系)或 httpd -v(RHEL 系)。2.4.55 至 2.4.70 可能受影響。發行版軟體包可能在相同的版本號下帶有修復,因此請把軟體包的變更日誌與廠商的安全資訊對照。
檢查是否啟用了 HTTP/2
在配置中查詢 Protocols h2 或 h2c,並檢查是否載入了 http2 模組(apachectl -M 的輸出)。據 Red Hat,啟用了 HTTP/2 的伺服器受影響,僅使用 HTTP/1.1 的伺服器不存在漏洞。這是 Red Hat 的說法;Apache 的公告沒有作這種區分。
找出所有執行 Apache 的地方
除了 Web 伺服器,還要查詢內嵌了 Apache 的產品(管理控制台、網路裝置)。關於如何維護清單,見資產清單檢查表。
今天該做什麼
更新到 2.4.71 或發行版的已修復軟體包(最優先)
對於自行編譯的 Apache,請升級到 2.4.71。對於透過軟體包安裝的,請在廠商的頁面上查詢已修復的軟體包並更新。更新後重啟或重新載入 Apache,並先執行 apachectl configtest 以發現配置問題。
在尚未發布修復的地方,決定是否需要 HTTP/2
Apache 的公告沒有臨時解決辦法。作為本站自己的補充,在幾乎沒有理由使用 HTTP/2 的地方,一個選項是從 Protocols 設定中移除 h2 和 h2c,只執行 HTTP/1.1。這不是公告中提到的措施,可能影響效能和客戶端,因此請先測試再決定。可以更新之後再恢復。
梳理 Apache 前面有哪些元件
如果負載均衡器或 CDN 終止 HTTP/2,並以 HTTP/1.1 與後端通訊,後端的 Apache 可能根本不使用 HTTP/2。請檢查在您的環境中是哪一跳使用 HTTP/2。
檢查是否有異常
雖然未見實際利用報告,但請檢查更新之前是否發生過異常。查看 Apache 子程序是否反覆崩潰,以及是否有不熟悉的檔案或程序。見如何檢查網站或伺服器是否被入侵。
利用情況
- Apache 的公告沒有提到實際利用。
- 它未列入 CISA KEV 目錄的 11 月 10 日版本。
- CVE.org 記錄中沒有 CVSS 評分。唯一的嚴重度是 Apache 的評級(critical)。
- 報告分別在 10 月 26 日和 11 月 3 日收到,並於 11 月 11 日公布。發布之前是否被利用,無法從公開資訊中確認。
- Red Hat 稱,已發表的研究展示了針對預設配置下啟用 HTTP/2 的伺服器的可信攻擊(這不是實際利用的報告)。
- 無法確認關於實際攻擊規模或任何行為者的公開資訊。
資訊來源
- Apache HTTP Server Project — Apache HTTP Server 2.4 vulnerabilities(2.4.71 中的三項修復、受影響版本、報告和修復日期)
- CVE.org — CVE-2026-119618(2026年11月11日發布;CWE-362,嚴重度 critical,無 CVSS)
- Debian — Debian Security Tracker CVE-2026-119618(bookworm 和 trixie 的修復版本)
- Ubuntu — CVE-2026-119618(需要評估,優先順序 High)
- Red Hat — CVE-2026-119618(RHEL 9 和 10 受影響,Important)
- CISA KEV — Known Exploited Vulnerabilities Catalog(未列入該目錄的 11 月 10 日版本)
關閉 HTTP/2 是本站在此列出的通用措施,並非 Apache 公告中說明的臨時解決辦法。最後確認:2026年11月13日。
延伸閱讀
- 實務:漏洞響應實務手冊 / 資產清單檢查表
- 判斷:用 CVSS、EPSS、KEV 確定優先順序
- 檢查是否被入侵:如何檢查網站或伺服器是否被入侵
- 術語:什麼是 RCE? / 什麼是 CVSS?