嚴重的 PHP 缺陷:你需要知道的事
PHP2Shell,即 CVE-2026-109618 與 CVE-2026-109619,可以在未登入的情況下於未修補的 PHP 工作程序上執行程式碼。已修復版本為 8.5.12、8.4.27、8.3.36 與 8.2.35。
最後更新:2026年10月23日
PHP 有兩個嚴重缺陷,編號 CVE-2026-109618 與 CVE-2026-109619,被稱為 PHP2Shell。遠端呼叫者可以在未登入的情況下,於受影響的 PHP 工作程序上執行程式碼。
PHP 是網站上很常見的伺服器端語言,在已知伺服器端語言的網站裡,常被估計約佔 70%。線上商店、公司網站和 WordPress 都在其中。實際影響的是該網站,以及這個 PHP 程序讀得到的檔案,並不是一把能打開網路上每台機器的鑰匙。
這段短片說明影響範圍:
1. 發生了什麼
PHP 專案在 2026 年 10 月 21 日發布緊急版本。原本協調披露的目標是 10 月 22 日,細節提前流出去之後,修補就提前了。
兩個問題都在請求處理裡。一個是 PHP 還在組裝請求時記憶體用盡,後來的清理去碰了尚未完成的狀態。另一個是嚴重錯誤打斷清理,留下過期指標。攻擊者不需要網站帳號。
PHP 專案把 Apache 搭配 mod_php 的部署視為風險最高。PHP-FPM、php-cgi、FrankenPHP 和 LiteSpeed 也受影響。能否穩定利用仍取決於程序的佈局,但未經驗證的程式碼執行,就是各廠商正在修補的問題。
2. 要更新哪些版本
完整的修復是換上已修補的 PHP。升級之後要重啟 PHP 工作程序,讓正在服務流量的是新的程式。
- PHP 8.5:8.5.12 已修復。受影響的是 8.5.0 到 8.5.11。
- PHP 8.4:8.4.27 已修復。受影響的是 8.4.0 到 8.4.26。
- PHP 8.3:8.3.36 已修復。受影響的是 8.3.0 到 8.3.35。
- PHP 8.2:8.2.35 已修復。受影響的是 8.2.0 到 8.2.34。
PHP 8.1 及更舊的版本,包括 7.x,以及這條線上 5.4 以後的版本,上游沒有為 CVE-2026-109618 提供二進位發行版。部分 Linux 廠商提供了自己的套件。如果對外的伺服器仍停在生命週期已結束的 PHP,而且今天沒有廠商修補可裝,就先把該站從網路上拿下來,直到能換到已修補的版本。
AWS、Red Hat 和 Ubuntu 都發布了自己的說明。報導也說 NSA 已提醒營運者盡快修補。改設定不能代替升級。
3. 這些缺陷怎麼被找到
OpenAI 的 Patch the Planet 參與了這次應對。Calif 用 GPT-5.6 Sol 找到其中一個缺陷。Wiz 也獨立回報了這些問題。修復和發布由 PHP 的維護者主導。
因為細節提前流出,修補成了緊急發布,而不是等到原定的披露日。細節一公開,針對未修補伺服器的掃描就開始了。
4. 現在該做什麼
- 升級到 8.5.12、8.4.27、8.3.36 或 8.2.35,或安裝 Linux 廠商或主機商提供的修補套件,然後重啟 PHP。
- 清點每一處正在跑的 PHP,包括設備,以及自帶 PHP 的軟體,不要只看你為商店安裝的那一個版本。
- 如果伺服器還在 PHP 8.1 或更舊的版本,而且沒有廠商套件,在你安排遷移之前,不要讓它繼續留在公開網路上。
一家只靠一堆 PHP 外掛堆起來的商店,還會再遇到這樣的日子。修補仍然是第一件事。接下來要做的,是不要讓下一次緊急事件長成同一個樣子。
5. FatLeon Commerce
FatLeon Commerce 是專有源代碼,部署在你自己的 AWS 帳戶裡。這家商店不跑在 PHP 上,所以這次 PHP 版本不會修它,這個缺陷也不在它裡面。
一套程式碼,兩種授權。購買是一次性的。Paddle.com 是紀錄商戶。
- Standard: 你自己經營的商店。https://fatleon.com/product/fatleon-standard-license
- Agency: 你也為客戶建立的商店。https://fatleon.com/product/fatleon-agency-license
壓縮檔裡的授權文件管轄使用方式。訂單問題寄到 info@fatleon.com。
