Apache Tomcat 修補多個漏洞:可繞過權限、也可把伺服器打掛

重點摘要

資安媒體 @The_Cyber_News 於 8 月 27 日轉述:Apache Tomcat 一次修了約十個漏洞,嚴重者可讓攻擊者繞過安全限制,或用拒絕服務把伺服器打到無法回應;修復版本為 11.0.25。帖文把受影響範圍寫成 11.0.0-M1 至 11.0.24,並點名 CVE-2026-65182。

Apache Tomcat 修補多個漏洞:可繞過權限、也可把伺服器打掛

資安媒體 @The_Cyber_News 於 8 月 27 日轉述:Apache Tomcat 一次修了約十個漏洞,嚴重者可讓攻擊者繞過安全限制,或用拒絕服務把伺服器打到無法回應;修復版本為 11.0.25。帖文把受影響範圍寫成 11.0.0-M1 至 11.0.24,並點名 CVE-2026-65182

來源真實性已驗證——漏洞本身是 Apache 官方披露,不是媒體杜撰。但帖文漏了關鍵一句:同一批問題亦打擊 10.1、9.0,部分更回溯 8.5/7.0。香港 GovCERT.HK 已於 8 月 26 日發出警報 A26-08-43,建議升級至 11.0.25、10.1.59、9.0.121。回覆區 @toolshed_labs 指「不只 11.x」,與官方 oss-security 一致。

截稿時未見「已被大規模利用」的官方確認,但仍屬優先補丁:Tomcat 是企業 Java Web、API 閘道、內部系統最常見的容器之一。

一、官方修了什麼

Apache 在 Tomcat 11 安全頁將本批列為 2026-08-18 修復、8 月 25 日公開,納入 11.0.25。媒體文章整理出的 CVE 包括以下幾類(嚴重程度用 Apache 自己的 Important/Moderate/Low,不是一律 Critical)。

CVE 官方級別 概要
CVE-2026-65182 Important 安全約束繞過:較長路徑規則排在較短、更嚴的子路徑之前時,限制可被略過
CVE-2026-68569 Important CLIENT-CERT/SPNEGO 在 DataSourceRealm 上可能「查找失敗仍當通過」(fail-open)
CVE-2026-65927 Important RewriteValve [N] 旗標 off-by-one,規則從第二條重跑,可繞過改寫/存取控制
CVE-2026-68525 (存取控制簇) FORM 登入轉向後,可用 GET 碰到本應只准 POST 的資源
CVE-2026-66422 (角色映射) security-role-ref 被誤當成 Realm 層角色別名
CVE-2026-68763 Important HTTP/2 stream reset 造成 backlog 追蹤分配洩漏,可耗盡資源做成 DoS
CVE-2026-66299 Moderate 隨附 WebSocket chat 範例無界緩衝;慢客戶可撐爆記憶體。已刪範例應用則不受影響
CVE-2026-65637 Moderate 早前 CVE-2026-32990(HTTP/2 嚴格 SNI)修補不完整,仍有 no-authority 繞過
CVE-2026-73180 Low HTTP session ID 變更後,已認證 WebSocket session 未按規範一併結束
CVE-2026-65183 Low Unix Domain Socket 設權限時的 TOCTOU 競態,本地未授權用戶或可接上 socket
CVE-2026-65905 Low DIGEST 認證在特定 nonceCount 條件下的有限重放

建議升級(官方/GovCERT.HK)

  • Tomcat 11.0.25
  • Tomcat 10.1.58/10.1.59(以官方 security-10 頁最終編號為準)
  • Tomcat 9.0.121
  • 8.5/7.0 已 EOL,官方仍註明受 65182 等問題影響,應遷出或自行評估補償控制

二、技術原理:為何「路徑排序」能拆掉授權

Tomcat 用 web.xml/註解裡的 security-constraint 決定哪條 URL 要登入、要哪個角色。實作按「最長前綴」匹配;若較長路徑的規則排在較短、更嚴的子路徑之前,舊邏輯可選錯約束,令本應擋下的請求通過。這不是遠端任意程式碼執行,而是 授權邏輯錯誤:攻擊者仍要夠到該 URL,但可能不再需要原定角色。

同一簇的 fail-open 認證(65182 以外的 68569)更刺眼:憑證或 SPNEGO 通過後,帳號在 Realm 裡根本不存在,系統仍當成已登入。這類缺陷在「看起來有雙因素/有客戶端憑證」的內網最容易被忽略。

HTTP/2 的 68763 則是經典資源洩漏:客戶反覆開 stream 再 reset,伺服器追蹤結構只加不減,最後記憶體或連線額度耗盡。對已開 HTTP/2 的公開站,這是可用性問題,不一定先偷資料。

66299 提醒一個老教訓:範例應用不該出現在生產環境。官方多年建議刪掉 examples;沒刪的,這次多一個可被慢連線撐爆的 WebSocket chat。

三、對企業 Java 堆疊的影響

香港大量銀行週邊、政府外判、電商與內部 ERP 仍跑 Spring/Jakarta 應用,底下常見就是 Tomcat 或內嵌 Tomcat 的 Spring Boot。補丁優先級應按曝光面排:

  1. 對互聯網開放、有自訂 security-constraint 或 RewriteValve 的 9/10/11
  2. 開了 HTTP/2 的 API 閘道
  3. 仍用 CLIENT-CERT/SPNEGO+DataSourceRealm 的內網 SSO
  4. 容器映像仍打包 examples 的舊 CI 產物

嵌入式 Tomcat(Spring Boot)不會因為「我們沒單獨安裝 Tomcat」而免疫,要核對 starter 帶上來的 Tomcat 版本,而不是只掃虛擬機套件清單。

GovCERT.HK 已定性影響為「拒絕服務或安全限制繞過」,建議跟官方版本升級。這與「已被在野利用」是兩回事;沒有 KEV 不等於可以排到下季。

四、日常應用場景

1. 開發與維運團隊

先盤點:獨立 Tomcat、Docker 基底映像、Spring Boot 內嵌版本、雲端 marketplace 映像。CI 把最低版本鎖在 11.0.25/10.1.58+/9.0.121。刪除 examples、關掉不需要的 RewriteValve、檢查 constraint 排列是否「短路徑更嚴的規則被寫在後面」。

2. 企業與合規行業

金融、醫療、政府外判要把這次當變更窗口:修補、回歸登入與權限測試、記錄 Realm 類型。憑證登入若走 DataSourceRealm,應驗證「Realm 裡不存在的主體不會被當成已認證」。

3. 一般網站營運者

若只是託管商代管的 Java 站,問清楚 Tomcat/內嵌容器版本;不要假設 PaaS 已代補。範例應用、預設管理員、舊 DIGEST 設定一併清掉。

4. 香港視角

本地警報已出。中小企常把 Tomcat 放在「能開就不要動」的狀態,這次繞過與 DoS 同時存在,互聯網面站應在本週完成。需要人盤點映像、改 Spring Boot 父 POM、補零信任入口卻請不起全職資安工程師時,可交香港遠端開發團隊按配額處理補丁與回歸,而不是把生產機直接暴露在自動掃描器下碰運氣。

五、專業評價

成立的部分

  • 官方披露、有 CVE、有修復版本,媒體標題沒有憑空造漏洞
  • 65182 的「最長前綴約束被排錯」是真實授權邏輯缺陷
  • HTTP/2 資源洩漏與範例 App DoS 分開處理是負責任的分類

帖文需要補正

  • 受影響不限 11.x;9/10 仍在支援期,必須一併升級
  • 「十幾個漏洞」嚴重程度不一,不是每一個都能遠端接管整機
  • 66299 只打範例聊天室
  • 暫無公開大規模在野利用證據,但自動化掃描器很快會跟 CVE 編號

操作原則
升級優於只改設定;升級後做登入、角色、HTTP/2、WebSocket 回歸;EOL 的 7/8.5 應列入淘汰而不是無限熱修。

結語

這批 Tomcat 漏洞的核心不是新的零日神話,而是授權排序、認證 fail-open、HTTP/2 資源會計與不該留在生產的範例程式。官方解法清楚:升到 11.0.25、10.1.58/59 或 9.0.121。香港機構已有 GovCERT 警報,缺的是把映像與內嵌容器真正掃一遍。

如需在香港由遠端團隊協助盤點 Java/Tomcat 版本、安排補丁與回歸測試,或把對外系統收進可審計的私有環境,可了解 YSK Limited 的開發者外判與雲端安全服務:https://ysk.hk/services/outsourcing


參考來源

延伸閱讀 · 相關服務與產品