
開源PHP單元測試框架PHPUnit存在高風險資安漏洞CVE-2026-24765,CVSS風險分數為7.8分,屬於高風險等級(High)。在特定條件下,若於啟用測試覆蓋率的PHPT測試執行情境中,攻擊者能事先寫入惡意測試覆蓋率資料,便可觸發不安全反序列化,進而執行任意程式碼。
PHPUnit是PHP生態系中廣泛使用的單元測試工具,常被整合至CI/CD流程,用於自動化測試與程式品質驗證。
PHPUnit維護團隊於1月27日發布安全公告,說明CVE-2026-24765漏洞成因出在PHPUnit於PHPT測試執行過程中,用於清理測試覆蓋率資料的cleanupForCoverage()邏輯。該流程會讀取並反序列化.coverage相關資料檔案,但未對其內容進行完整驗證,導致攻擊者只要能事先在系統中植入惡意序列化物件,就有機會在測試流程執行期間,觸發任意程式碼執行(RCE)。
根據PHPUnit團隊說明,雖然此漏洞的利用前提包含「可寫入特定檔案」的條件,但在實務環境中,CI/CD自動化流程、測試產物共享機制,以及未完全隔離的建置環境,往往放大了實際風險。例如,攻擊者可透過惡意Pull Request或供應鏈途徑,在原始碼庫或測試目錄中植入特製的覆蓋率檔案,當CI系統自動執行測試並處理覆蓋率資料時,便可能在建置節點上執行攻擊指令。
此外,若開發團隊在本地端或共享測試環境中使用PHPUnit進行測試,且檔案權限控管不足,也可能成為漏洞被濫用的條件之一。而這類攻擊模式的出現,也突顯測試工具本身的安全性很重要,因為已直接影響軟體供應鏈與部署流程的防護水準。
官方已釋出修補版本,涵蓋多個主流分支
此漏洞影響範圍涵蓋PHPUnit專案多個仍在維護的主要版本分支,維護團隊已發布8.5.52、9.6.33、10.5.62、11.5.50與12.5.8版予以修補,PHPUnit各主線分支中,早於上述修補版本的所有版本皆受影響。官方呼籲仍在使用舊版PHPUnit的開發團隊,應儘速升級,以避免測試流程成為潛在攻擊入口。
除了套件更新外,從該漏洞在CI/CD管線中的利用情境來看,開發團隊也應檢視是否允許未經審查的程式碼或測試產物觸發自動化測試,並強化CI runner的隔離與生命週期管理,以降低惡意檔案長期存在的風險。
熱門新聞
2026-02-02
2026-02-02
2026-02-03
2026-02-02
2026-02-01
2026-02-02
