https://activity.twcert.org.tw/2026/index.htm
https://activity.twcert.org.tw/2026/index.htm

新聞

PHP2Shell 遭實際利用!Brotli 弱點 HTTP2Shell 同步延燒,PHP、.NET 緊急更新

2026 / 10 / 27
編輯部
PHP2Shell 遭實際利用!Brotli 弱點 HTTP2Shell 同步延燒,PHP、.NET 緊急更新
美國網路安全暨基礎設施安全局(CISA)於美國時間 10 月 26 日,將 PHP 的「PHP2Shell」弱點 CVE-2026-109618 與 CVE-2026-109619 列入已知遭利用弱點目錄(KEV),確認已有實際利用。另一方面,Google 開源壓縮函式庫 Brotli 的解碼器弱點 CVE-2026-111497(又稱「HTTP2Shell」)影響範圍持續擴大,PHP 基金會與微軟先後釋出緊急更新,涵蓋 PHP Windows 版與 .NET。

CISA 列入 KEV,蜜罐驗證遠端執行

兩項弱點的 CVSS 評分均為 9.2,可讓攻擊者在未經身分驗證下遠端執行程式碼(RCE)。CVE-2026-109618 為記憶體損毀弱點,CVE-2026-109619 源於過時的內部請求狀態。資安人先前已報導,PHP 於 10 月 21 日釋出緊急更新。

Perplexity 偵測與應變負責人 Adel Karimi 於 10 月 24 日證實,其蜜罐(Honeypot)系統出現成功的遠端執行。Karimi 表示:「這是已確認的遠端執行程式碼,並伴隨可用的記憶體洩露,而非只是當機後出現可疑程序。」他也說明,證據僅限於刻意選擇有利條件的單一工作程序 mod_php 設定,不代表其他環境的攻擊可靠度。

PHP 已於 10 月 21 日釋出 8.5.12、8.4.27、8.3.36 與 8.2.35 修補,美國聯邦機關須於 10 月 29 日前完成更新。網路資產掃描業者 Censys 估計,仍有逾 3,251 萬個 PHP 服務執行受影響版本。

相關文章:PHP2Shell 弱點 CVSS 9.2!資安署與 Sophos 籲企業盤點並儘速修補

PHP Windows 版因 Brotli 弱點再度更新

PHP 基金會(PHP Foundation)於 10 月 26 日重新打包 PHP 8.2 至 8.5 的官方 Windows 版,編號為 8.5.12-1、8.4.27-1、8.3.36-1 與 8.2.35-1,以修補 CVE-2026-111497。新版沿用 10 月 21 日的 PHP 原始碼,PHP2Shell 修補仍然有效,並改為內含已修補的 Brotli 1.2.1。

PHP 說明,當 cURL 擴充功能啟用 HTTP 回應自動解壓縮時,攻擊者可透過惡意壓縮回應觸及有弱點的解碼器。cURL 預設未啟用此功能,但應用程式與 HTTP 用戶端函式庫可自行開啟。外媒分析指出,PHP 的 HTTP 用戶端函式庫 Guzzle 預設會讓 cURL 接受所有壓縮格式,沿用預設設定的應用程式可能符合觸發條件,但該媒體並未實測。

PHP 版本號不變,執行 php -v 無法分辨新舊版本,須以檔名中的「-1」及下載頁面的 SHA-256 雜湊值辨識。PHP 公告未提供無法更新時的替代緩解措施。

「HTTP2Shell」波及多個生態系

CVE-2026-111497 又稱 Broccoli2Shell 與 Node2Shell,最初在 Node.js 被發現,後續確認同一缺陷影響多個生態系。弱點出在 Brotli 解碼器的邊界外寫入(Out-of-bounds Write):特製壓縮串流觸發無效的區塊切換,解碼器誤判為需要更多輸入,持續寫入八位元組的內部緩衝區,造成鄰近記憶體損毀。外媒報導指出,該弱點由 OpenAI 研究人員發現。

受影響版本為 Brotli 1.0.3 至 1.0.9、1.1.0 與 1.2.0,Google 已於 1.0.10、1.1.1 與 1.2.1 修補。Node.js 修補版本為 22.23.4、24.22.1 與 26.12.1,即資安署 10 月 22 日呼籲更新的版本。Python 的 Brotli 與 brotlicffi 套件分別修補於 1.2.1 與 1.2.1.0。

相關文章:Node.js 與 Go 同步釋出緊急安全更新 資安署籲公私部門儘速修補

微軟於 10 月 25 日(週日)發布公告並釋出 .NET 緊急更新,版本為 8.0.33、9.0.22、10.0.14 與 .NET 11 RC3。使用 ASP.NET Core 要求解壓縮、HttpClient 自動回應解壓縮或 Brotli API 的應用程式可能受影響,這些功能預設未啟用,須手動開啟。在非預設設定下,攻擊者可遠端提升權限。

資安業者 Imperva 已證實可藉此達成遠端執行,概念驗證(PoC)程式碼也已公開,但外媒報導目前尚無實際利用。

修補與緩解建議

  • 盤點 PHP(含 Windows 版)、Node.js、Python 與 .NET 環境,並留意自帶 Brotli 副本的軟體。
  • 升級至上述修補版本,PHP 對外系統優先處理,更新後檢視系統日誌與異常存取紀錄。
  • 修補後須重啟受影響程序,容器映像須重建並重新部署;僅更新系統的 Brotli 函式庫,無法涵蓋自帶副本的應用程式。
  • 無法立即更新者,可在代理伺服器或防火牆阻擋進站 Brotli 壓縮請求,或停用 Brotli 解碼,但惡意 HTTP 回應路徑仍然存在。OpenAI 建議關閉 HTTP 用戶端的自動 Brotli 解壓縮,並提醒僅移除 Accept-Encoding 標頭中的 br,無法阻止伺服器送出 Brotli 資料。

本文參考 The Hacker News、BleepingComputer 等外媒報導編譯。