2026 年 4 月 16 日,CISA 把 CVE-2026-34197 加入 KEV(已知被利用漏洞)目錄,強制美國聯邦民用機構必須在 4 月 30 日前完成修補。表面看它只是又一個 RCE:CVSS 8.8、無需認證的程式碼執行、影響 Apache ActiveMQ Classic 5.19.4 之前與 6.x 在 6.2.3 之前的版本。有趣的地方不在 CVE 本身,在它的背景故事。
一個等了 13 年的漏洞
Horizon3.ai 研究員 Naveen Sunkavally 在 4 月 9 日公開揭露了這個漏洞。根據他的報告,這個漏洞行為實際上在 ActiveMQ 裡已經存在近 13 年。攻擊路徑透過 Jolokia 進行——一個把 JMX 管理操作以 REST API 形式對外開放的 HTTP-to-JMX 橋接元件。攻擊者只要構造特定請求,就能讓 broker 去遠端抓取並處理一份 Spring XML 設定檔。每個吃過苦頭的企業開發者都知道,Spring XML 基本上等於「程式碼執行」。於是,無認證 REST 請求 → 強制拉遠端 XML → 在 broker 上跑任意程式碼。整整 13 年。Fortinet FortiGuard 在揭露後幾天觀察到數十次利用嘗試,高峰出現在 4 月 14 日。
一個 CVE,兩個教訓
每個有份量的 CVE 都帶一個教訓。這一個帶兩個。
第一個是經典教訓:老牌、廣泛佈署的企業中介軟體,本質上是「2013 年看來大概沒事」的假設集合墓場。Jolokia 的管理端點、預設監聽位址、老 XML 解析器——個別看都還算合理,湊在一起就是一把遠端程式碼執行的鑰匙。今天 ActiveMQ 仍在銀行、保險後端、關鍵基礎設施裡跑。沒有人用「這個特定組合」的角度去問這個特定問題——直到現在。
第二個教訓是新的、也比較有文化意義。Naveen 的公開揭露裡,明確把 Anthropic 的 Claude 列為審計的合作者。不是「AI 產出了這個發現」的工具,而是「研究員與一個能把大型程式碼庫全裝進上下文的 AI」一起推論 ActiveMQ 的行為、秤不同假設、沿著呼叫鏈走下去,最後把 HTTP 端點跟 Spring XML 執行接上。這不是「AI 找到了漏洞」,而是「一個有能力的研究員,搭配一個能承載完整 codebase 的 AI,找到了一個隱形 13 年的漏洞」。
我的看法:AI 改變的是資安的節奏
2024、2025 的產業爭論是:AI 會改變攻擊面比較多?還是防守面比較多?這個案例給出誠實答案——AI 改變的是雙方的節奏,而節奏才是資安的決定變數。
在攻擊面,一個研究員加一個 AI 合作者,現在可以用幾週的時間,做完以前專門團隊、幾個月的領域脈絡才做得到的審計工作。CVE-2026-34197 不會是 AI 協作揭露的最後一個 13 年老 bug,只會是開端。每一個廣泛佈署的開源中介軟體,都正在被「2013 年不存在的能力」重新審視一遍。
在防守面,營運含義殘酷。還相信「這個元件十年沒出過高危 CVE,所以它安全」的組織,跑的是過期的威脅模型。「十年沒 CVE」以前是成熟的徵兆,2026 年,同樣可能只是代表沒有人有運算時間認真看。如果你在跑 ActiveMQ,或任何長壽命的訊息 broker,正確姿態是:立刻升級到 5.19.4 / 6.2.3、不需要 Jolokia 就關掉、限制 broker 主機的對外流量讓它沒辦法拉遠端 XML、並把自己產品做一次 AI 協助的審計。
最有詩意的部分是:一個 AI,幫忙找出了一個比它自己誕生還早非常多年的漏洞。這種時間壓縮——人加上模型,一起把 13 年前漂走的 context 找回來——才是這整件事真正的故事。而且,它只會不斷重演。