PHP 官方開發團隊於日前正式釋出了 PHP 8.5.6 與 8.4.21 等雙版本更新。本次更新被官方明確定調為安全性更新(Security Release),涵蓋了核心引擎、DOM 處理、多字節字串(MBString)等多個基礎模組的重大漏洞修補與記憶體外洩(Memory Leak)問題。對於注重伺服器安全合規性與執行環境穩定度的系統維護團隊來說,強烈建議盡速將此更新排程上線。
資安修復重點(Security Fixes)
在資訊安全防禦層面,這次的版號升級封堵了數個高風險的 CVE 漏洞,主要包含以下幾個重點:
DOM / XML 解析漏洞 (CVE-2026-7263)
修復了 Dom\XMLDocument::C14N() 在設定屬性後可能導致重複宣告 xmlns 的問題。同時,官方將底層的 Lexbor 函式庫升級至 v2.7.0,一併解決了與之相關的 CVE-2026-29078 與 CVE-2026-29079 漏洞。
PHP-FPM 跨站腳本攻擊 (CVE-2026-6735)
修補了 FPM 狀態端點(Status Endpoint)中潛藏的 XSS 風險,避免伺服器監控介面成為攻擊破口。
MBString 記憶體越界與空指標提領 (CVE-2026-7259, CVE-2026-6104)
解決了在處理特定字串與正則表達式(如 mb_ereg_search_init)時,可能造成的應用程式崩潰或記憶體越界存取問題。
PDO_Firebird SQL 注入 (CVE-2025-14179)
防堵了攻擊者可能透過空位元組(NUL bytes)繞過引號字串過濾的進階 SQL 注入手法。
Uriparser 數值截斷漏洞 (CVE-2026-42371)
內建的 uriparser 升級至 1.0.1,修復了在文字範圍比對時發生的數值截斷安全疑慮。
核心引擎與 Opcache JIT 最佳化
在程式碼執行效能方面,Opcache 的 JIT(即時編譯)引擎是本次維護的核心區域。過去版本中存在的「COND 最佳化衰退(Optimization Regression)」以及 JMPNZ 智慧分支的除錯皆已完成修復。
此外,針對長時間執行服務最在意的記憶體外洩問題,官方修復了 OpenSSL 的 openssl_pbkdf2() 以及 Countable::count() 遺失 addref 所造成的記憶體異常占用。同時也排除了在 Windows 搭配 Clang 編譯環境下的 ZEND_API 錯位問題,大幅提升了核心引擎器處理大量資料時的可靠性。
社群災情追蹤與升級注意事項
回顧此次 PHP 8.5.6 的發布過程,在開發者社群中其實經歷了一番波折。根據 PHP 發布經理 Daniel Scherzer 與社群的追蹤,PHP 8.5.6 在正式推出前,罕見地經歷了三次發布候選版本(RC3),這主要是由兩個突發災情所引起:
Uriparser 漏洞突襲原本預計順利發布的排程,因為臨時發現 bundled uriparser 的 CVE-2026-42371 漏洞,迫使官方緊急打包了 RC2。
Windows DOM 模組編譯問題則是在 RC2 宣布之前,社群回報了一個災情,由於 Lexbor 函式庫從 PHP 8.4 向上合併(upmerge)至 8.5 時發生錯誤,導致 Windows 環境下的 DOM 擴充模組出現了編譯的問題瘓。因為這項錯誤會嚴重影響依賴 XML 處理的 Windows 伺服器,官方隨即攔截了發布並追加 RC3 來專門修復此問題。
CyberQ 建議,目前的 8.5.6 與 8.4.21 正式版已經排除了上述的 Windows DOM 災情。對於已經在使用 PHP 8.4 或 8.5 開發高效能 API 或整合 AI 處理工具的開發團隊,若近期曾遭遇 Opcache JIT 異常崩潰或不明的記憶體溢位,請務必將升級這兩個版本列為首要任務。






