PHP2Shell 修復版本已推出,但未修補的伺服器仍面臨風險
重點速覽
- •PHP 已於 10 月 21 日發布修補版本 8.5.12、8.4.27、8.3.36 與 8.2.35,伺服器擁有者必須手動安裝更新並重新啟動 PHP,防護才會生效。
- •Cloudflare 觀察到攻擊嘗試從數千次攀升至數百萬次,而 Amazon 的誘餌伺服器更在漏洞公開揭露前四天、即 10 月 17 日,記錄到一次攻擊嘗試。
- •德國 BSI 與日本政府均未回報經證實的成功入侵,截至 10 月 22 日,也沒有加密貨幣交易所公開回報與 PHP2Shell 相關的入侵事件。
- •PHP 基金會將這項 2024 年即首次偵測到的漏洞之所以延遲解決,歸因於安全團隊決策流程與資源上的結構性失敗,並表示今後將改以多數決方式決策。
- •約有 884,000 個對外主機執行不再獲得官方修復的 PHP 版本,包括 Wikimedia、32 項英國政府服務與荷蘭醫院在內的組織曾暫時將網站下線。

PHP 於 10 月 21 日發布的安全版本仍是 PHP2Shell 的唯一修復方案;這是一對可讓未經身分驗證的攻擊者控制受影響伺服器的漏洞。修補程式只有在伺服器擁有者安裝並重新啟動 PHP 後,才能發揮保護作用。
Cloudflare 執行長 Matthew Prince 表示,該公司網路上的攻擊嘗試從數千次攀升至數百萬次。德國聯邦資訊安全局(BSI)與日本政府均表示,尚未證實任何成功入侵事件。資助 PHP 本身開發工作的 PHP 基金會指出,早在 2024 年便首次發現其中一項漏洞的跡象,並將延遲解決形容為「一場結構性失敗」。
這些進展發生在兩項 PHP 漏洞促使政府與組織將網站下線的隔天。網路使用者最直接的疑問是:現在正常瀏覽網頁是否安全?簡短的答案是,網路本身並未崩壞,大多數使用者面臨的風險來自所造訪的網站,而非自己的手機或電腦。然而,仍有許多伺服器需要修補。
PHP 是一種開源伺服器端語言,在約 70% 已知伺服器端程式語言的網站幕後運作。正因為如此廣泛的覆蓋範圍,PHP 本身的漏洞會演變成全網性的修補事件,而非單一公司的問題。這兩項漏洞合稱 PHP2Shell,可讓陌生人在未登入的情況下控制受影響的伺服器。
PHP2Shell 修好了嗎?
根據 PHP 的版本發布說明,PHP 已於 10 月 21 日發布 8.5.12、8.4.27、8.3.36 與 8.2.35 等版本。發布說明指出:「目前沒有任何完整的緩解措施,更新是唯一安全的選擇。」截至 10 月 22 日,PHP 尚未發布後續修補程式。
修補程式的出現並不代表每個受影響的網站都已完成防護。PHP 不自行更新,因此主機代管公司、IT 部門與個別網站擁有者都必須在自己的伺服器上安裝相關版本,並重新啟動軟體才能使變更生效。實務上,防護是隨著伺服器維護的腳步擴散,而非在發布當下即時生效,因此仍有多少伺服器暴露在風險中,將取決於營運者完成部署的速度。
PHP 8.1 及更早版本已不再獲得官方版本更新,使較舊的伺服器成為特別脆弱的一環。不過 PHP 安全團隊確實為 7.4、8.0 與 8.1 版本發布了最基礎的修補程式,供自行編譯軟體的使用者使用。
是否有伺服器遭到入侵?
攻擊者很快便開始探測存在漏洞的系統。Prince 表示,Cloudflare 在公開公告前的 10 小時內觀察到數千次攻擊嘗試,公告後的 45 分鐘內增至數萬次,兩小時內達到數十萬次,之後更攀升至數百萬次。
https://x.com/eastdakota/status/2113079352682570051?ref_src=twsrc%5Etfw
Amazon 表示,其誘餌伺服器在漏洞公開揭露前四天、即 10 月 17 日,便記錄到一次攻擊嘗試。Amazon 資訊安全長 CJ Moses 寫道,「目前仍不清楚該行為者如何在揭露前取得漏洞利用資訊」,並表示 PHP2Shell「目前在野外已被廣泛利用」。
Amazon 在一篇安全部落格文章中表示,該活動在公開揭露之前即已被觀察到。
不過,各國政府當時尚未回報任何經證實的成功入侵。德國聯邦資訊安全局(BSI)副局長 Thomas Caspers 表示,該機構已觀察到攻擊,但沒有漏洞被成功利用的情況。他補充:「實際利用起來似乎比預期來得複雜一些。」日本內閣官房長官木原稔也同樣表示,未證實任何利用這些漏洞的攻擊。
攻擊嘗試與成功入侵是兩回事。攻擊嘗試可能高達數百萬次,同時卻尚未確認任何入侵得手,而且成功的入侵往往是事後才被發現,而非即時察覺。對追蹤此事的讀者而言,這意味著關於入侵事件的確切消息(如果有的話),將透過後續調查與官方揭露而來,而非即時公告。
為什麼問題沒有更早被修復?
PHP 基金會表示,其 2024 年的安全工作「發現了 CVE-2026-109618 背後 OOM 問題的最初跡象」,指的是其中一項漏洞核心的記憶體耗盡(out-of-memory)錯誤。
根據該基金會對這次安全發布的說明,團隊提出了「數種相互競爭的」,但「難以在其中做出選擇,並擔心部署錯誤選擇所帶來的後果」。基金會表示,正是因為其資金挹注,才有可能讓多人全職處理這個問題。
基金會寫道:「我們不會假裝沒這回事:這次延遲是一場結構性失敗,既源於安全團隊的決策過程,也源於資源的缺乏。」該基金會表示,安全團隊過去需要達成共識才能決策,如今將改以多數決方式進行。
基金會還表示,支撐大半網路運作的這套軟體,其安全工作「仍然依賴一小群由基金會資助的開發者以及些許志工協助」。
為什麼有些網站仍然無法存取?
修補需要時間,而無法立即套用修復的組織所獲得的官方建議是將系統下線。英國國家網路安全中心在其指引中建議組織考慮「將系統離線,直到能夠完全緩解為止」。
根據 TechRadar 的報導,10 月 21 日受影響的網站與服務包括 Wikimedia 服務、Orange 在數十個國家的網站與應用程式、32 項英國政府服務、荷蘭的醫院,以及德國聯邦 IT 供應商 ITZBund。
英國預算責任辦公室與愛丁堡市議會網站在 10 月 22 日前已恢復上線。據 DutchNews 報導,其他服務(包括荷蘭匿名犯罪通報網站 Meld Misdaad Anoniem)在週四上午仍處於離線狀態。
使用者應該更改密碼嗎?
至少就目前所知的資訊而言,並不需要僅因為 PHP2Shell 而更改密碼。目前尚無任何經證實的資料外洩與這些漏洞相關,而且在網站伺服器尚未修補的情況下,更換所有密碼也無法提供保護。
標準的安全措施仍然有用:為每個帳戶使用獨一無二的密碼、啟用雙因素驗證,並在未來幾週留意公司關於可能外洩的通知。如果某家公司證實發生外洩,使用者應更改受影響的密碼,以及任何重複使用該密碼的帳戶。
網站擁有者則有更多工作要做,因為套用修補程式關閉了漏洞,卻無法顯示攻擊者是否早已侵入。安全公司 Tag1 建議擁有者檢查是否出現自己未上傳的 PHP 檔案、新的排程任務與新建立的帳戶,並建議對任何執行過受影響版本的對外伺服器輪替資料庫密碼與 API 金鑰。Tag1 的指引可於此處查閱。
PHP2Shell 對加密貨幣使用者意味著什麼?
Binance 創辦人趙長鵬(Changpeng Zhao)在 X 上警告使用者:「Call me paranoid, but be extra careful visiting ANY web site in the next few days.」
https://x.com/cz_binance/status/2113029289155178716
遭入侵的網頁伺服器可能顯示某個合法站的假版本。在加密貨幣領域,這類頁面可能要求使用者連接錢包並批准一筆將錢包清空的交易。區塊鏈網路本身可能不受影響,而提供存取入口的網站卻已遭入侵。
使用者應仔細確認自己簽署的內容、將常用網站加入書籤而非點擊連結,並在有的情況下使用硬體錢包。截至 10 月 22 日,尚未有任何加密貨幣交易所公開回報與 PHP2Shell 相關的入侵事件。
現在上網安全嗎?
整體而言,目前瀏覽網頁的安全性與前一週大致相同,只是沒有任何網路活動是零風險的。主要的風險暴露在於尚未修補的伺服器。安全公司 Mallory 統計,約有 884,000 個對外主機執行不再獲得官方修復的 PHP 版本。
Amazon 呼籲防禦者不應假設公開揭露日就是最早被利用的日期。該公司表示:「Defenders should not assume the public disclosure date is the earliest date of exploitation.」任何自 10 月 17 日起曾執行受影響 PHP 版本的伺服器,都應接受調查,而不只是修補而已。