PHP 爆出兩個重大安全漏洞!

近期,熱門程式語言 PHP 被發現存在兩個重大安全漏洞,分別是 CVE-2026-109618 和 CVE-2026-109619。

這兩個漏洞相當危險,因為駭客不需要登入帳號或通過身分驗證,就有機會直接在使用 PHP 的伺服器上遠端執行惡意程式碼。

目前 PHP 開發團隊已針對所有仍受支援的版本發布安全更新。不過,值得注意的是,在官方修補程式正式推出之前,就已經有人開始嘗試利用這些漏洞發動攻擊。

這次的漏洞攻擊手法被命名為 PHP2Shell。


PHP 是非常普遍的網站開發語言,許多大型線上購物平台、電子商務網站,以及學習管理系統(LMS)都是使用 PHP 建置。

除此之外,像是 WordPress、Drupal、Joomla 等常見的內容管理系統(CMS),也都使用 PHP 作為核心技術,而這些系統被廣泛運用在全球各地的網站上。

這篇文章將深入介紹 CVE-2026-109618 與 CVE-2026-109619 這兩個漏洞,並說明企業該如何保護自己的伺服器與 IT 環境。

如果想進一步了解這次漏洞在官方修補程式發布前的發展經過,也可以參考 Securelist 專家的分析文章。

哪些 PHP 版本受到影響?

根據 PHP 官方網站公布的資訊,以下版本都受到 CVE-2026-109618 與 CVE-2026-109619 影響:

  • PHP 8.2.35 之前的版本
  • PHP 8.3.36 之前的版本
  • PHP 8.4.27 之前的版本
  • PHP 8.5.12 之前的版本

至於更舊的 PHP 版本,目前官方並沒有提供正式的修補更新。

另外,根據非官方消息,這兩個漏洞可能早在 PHP 5.4.0 版本就已經存在,代表受影響的範圍可能比想像中還要廣。


為什麼這兩個漏洞這麼危險?

CVE-2026-109618 和 CVE-2026-109619 在 CVSS 4.0 漏洞嚴重程度評分中,都拿到了 9.2 分,屬於重大安全漏洞。

這兩個漏洞主要與 PHP 的記憶體處理機制有關。

簡單來說,當 PHP 正在處理某個請求時,如果過程突然被中斷,例如伺服器記憶體不足,PHP 可能會在記憶體緩衝區留下無效資料。

當系統後續再次存取這些資料時,就可能產生安全問題,讓駭客有機會利用漏洞,在伺服器上執行惡意程式碼。

其中,研究人員已確認 CVE-2026-109619 的一種攻擊方式,是利用 PHP 的 session.upload_progress 功能。

這項功能主要用來追蹤檔案上傳進度,而且在 PHP 中預設就是啟用狀態,因此可能讓更多網站暴露在攻擊風險之中。

一旦駭客成功利用這些漏洞,就能在不需要任何帳號密碼或身分驗證的情況下,遠端執行程式碼,並取得與網頁伺服器處理程序相同的操作權限。

根據 PHP 開發團隊的說明,只要使用尚未修補的 PHP 版本來處理網站請求,就可能受到影響,包括:

  • PHP-FPM
  • Apache 搭配 mod_php
  • php-cgi
  • FrankenPHP
  • LiteSpeed

其中,使用 mod_php 的環境風險最高。

研究人員已經成功展示相關攻擊方式,證明駭客甚至可以在網站應用程式的程式碼開始執行之前,就透過未經身分驗證的請求觸發漏洞。

換句話說,即使網站本身有設計登入驗證機制,也不代表一定能擋住這類攻擊。


企業應該如何因應?

以下整理 PHP 開發團隊與卡巴斯基資安專家提出的幾項重要建議。

1. 儘快更新 PHP 版本

企業應優先將 PHP 更新至以下已修補的版本:

  • PHP 8.5.12
  • PHP 8.4.27
  • PHP 8.3.36
  • PHP 8.2.35

建議優先處理直接對外連線、可以從網際網路存取的伺服器,因為這些設備最容易成為駭客的攻擊目標。

相關原始碼可以從 PHP 官方網站下載。

如果企業使用的是 Linux 發行版提供的 PHP 套件,或是由網站主機商提供 PHP 環境,建議先確認是否已有更新套件可以安裝。

部分 Linux 發行版與長期支援(LTS)服務供應商,已經提前取得修補程式。

如果伺服器是交由主機代管業者管理,也應儘快聯繫對方,要求協助安裝安全更新。


2. 舊版 PHP 使用者要特別注意

PHP 8.1 及更早的版本,已經不再獲得 PHP 官方專案的安全更新支援。

如果企業目前仍在使用這些舊版本,建議先向 Linux 發行版供應商或 LTS 技術支援廠商確認,是否有提供適用的回溯修補程式(Backport)。

如果沒有,最好儘快規劃升級至仍受官方支援的 PHP 版本。

另外,針對 PHP 7.4、8.0 與 8.1,開發團隊也準備了最低限度的原始碼修補內容,讓有需要的管理人員可以自行編譯套用。

相關檔案可以在 PHP 官方網站找到。


3. 更新後,記得重新啟動服務

安裝完 PHP 安全更新後,還需要重新啟動 PHP-FPM 或網頁伺服器,才能確保系統實際載入修補後的程式碼。

完成後,可以使用以下指令確認 PHP 版本:

php -v

不過要特別注意,如果 PHP 是透過 Linux 發行版套件安裝,供應商可能會將安全修補程式套用到原本的版本,而不直接更改版本號碼。

因此,即使看到的 PHP 版本號碼沒有變,也不代表一定沒有修補。

建議同時檢查套件的更新紀錄(Changelog),確認相關漏洞是否已經修復。


4. 檢查伺服器紀錄,確認是否遭到攻擊

企業應特別檢查從 10 月 20 日開始的伺服器紀錄,確認是否出現可疑活動。

例如,原本只負責處理網站請求的伺服器程序,卻突然開始執行不應該出現的操作,包括:

  • 啟動系統命令列或 Shell
  • 執行 curl 指令
  • 執行 wget 指令
  • 出現其他不符合正常網站運作的異常行為

這些情況都可能是駭客正在嘗試利用漏洞,甚至已經成功入侵的警訊。

卡巴斯基的資安防護方案,也能協助企業及早發現相關惡意活動。

例如:

Kaspersky Next EDR Expert

可以協助偵測 Linux 與 Windows 設備上,針對這次遠端程式碼執行(RCE)漏洞的攻擊行為。

Kaspersky Anti Targeted Attack(KATA)

搭配 NDR(網路偵測與回應)模組,則能從網路流量中偵測利用 PHP2Shell 漏洞的攻擊活動。

透過端點與網路層級的監控,企業就有機會更早發現異常,降低系統遭到入侵的風險。


如果沒辦法立即更新,該怎麼辦?

要真正解決這兩個漏洞帶來的安全風險,最有效的方式仍然是儘快安裝官方安全修補程式。

不過,如果企業因為系統相容性、營運需求,或其他技術限制,暫時無法立即更新 PHP,也建議先採取臨時性的防護措施,降低遭到攻擊的可能性。

PHP 開發團隊已經針對這兩個漏洞,分別提供詳細的應變步驟與操作說明。

企業 IT 管理人員可以參考 PHP 官方安全公告,依照目前的系統環境採取適當措施。

重點整理: 這次 PHP2Shell 最需要注意的地方,就是駭客可能不需要登入網站,就能直接利用 PHP 漏洞在伺服器上執行惡意程式碼。由於 PHP 被廣泛使用在電商平台、企業網站及各種內容管理系統中,因此影響範圍可能相當大。對企業來說,應優先確認 PHP 版本、安裝安全更新,並檢查伺服器是否已經出現異常活動,避免漏洞成為駭客入侵企業內部系統的突破口。

資料來源: PHP2Shell: How to Protect Your Server | Kaspersky official blog

Comments are closed.

Up ↑