# 高市早苗為什麼要大家今晚就處理？一次看懂 PHP2Shell 漏洞

> 最多網站使用的後端程式語言 PHP，爆出兩個不必登入就可能在伺服器上執行程式的漏洞 PHP2Shell。受影響版本最早可追溯到十四年前，研究人員借助 AI 找出漏洞；修補公布前消息外流，Cloudflare 在公布後兩小時內觀察到數十萬次攻擊嘗試。用一般人聽得懂的話，講清楚發生什麼事、日本首相為什麼出面，以及你需要做什麼。

- Author: Paul Kuo（郭曜郎）
- Date: 2026-10-22
- Pillar: 智能與秩序 / Intelligence & Order
- Tags: PHP2Shell, PHP 漏洞, AI 資安, 漏洞揭露, 高市早苗, WordPress, Cloudflare
- Canonical: https://paulkuo.tw/articles/php2shell-patch-tonight/
- Site index for LLMs: https://paulkuo.tw/llms.txt

---

> **TL;DR**：PHP 是最多網站使用的後端程式語言，研究人員借助 AI 在裡面找到兩個嚴重漏洞，受影響的版本最早可追溯到十四年前，攻擊者不必登入就可能在網站伺服器上執行自己的程式。修補公布前消息外流，攻擊嘗試也已經出現，日本首相高市早苗在 X 上請大家當晚處理，來不及修補的話，暫時停站也是辦法之一。一般使用者不用驚慌；有自己網站的人，要確認主機上的 PHP 已經更新。

> 皆様に、今夜に対応して頂きたい大至急のお願いです。
>
> 多くのウェブサイトで使用されているPHPに関し、PHPのセキュリティチームが、重大な２件の脆弱性に関する注意喚起を行っています。
>
> 公開しているウェブサイトでPHPを使用しているか確認し、今夜、10月21日午後11時（日本時間）に公開される修正パッチについて、可及的速やかに適用できるよう準備をお願いします。
>
> 修正パッチを速やかに適用することが困難な場合は、例えばウェブサイト等を一時的に停止させることも、リスクを低減させるための有効策の一つと考えられます。
>
> 国家サイバー統括室のXアカウントでも関係する情報を発信していますので、そちらも参考にして下さい。
> 国家サイバー統括室(注意・警戒情報)（[@cyber_forecast](https://x.com/cyber_forecast)） / X

> 有件事非常緊急，想拜託各位今晚就處理。
>
> 關於許多網站都在使用的 PHP，PHP 的資安團隊針對兩個重大漏洞發出了警示。
>
> 請確認各位對外公開的網站有沒有使用 PHP，並做好準備，讓今晚 10 月 21 日晚上 11 點（日本時間）公布的修補程式，能夠盡快套用。
>
> 如果很難馬上套用修補程式，例如暫時讓網站停止運作，也可以算是降低風險的有效做法之一。
>
> 國家網路統括室的 X 帳號也在發布相關資訊，請一併參考。
> 國家網路統括室（注意・警戒資訊）（@cyber_forecast）/ X

上面是日本首相高市早苗在日本時間 2026 年 10 月 21 日晚上 9 點 55 分（台灣時間 8 點 55 分）發在 [X](https://x.com/takaichi_sanae/status/2112890642590564386) 上的全文。

台灣時間 10 月 22 日下午一點半，我在 X 的推薦頁滑到這則貼文，看到的是系統自動翻成中文的版本。畫面顯示它已經發出 16 小時，按讚數 32 萬。

一國首相用自己的帳號，要大家「今晚」處理一個程式語言的漏洞，這種新聞並不常見。日本科技媒體 [ITmedia](https://www.itmedia.co.jp/news/article/2610/22/2000002483/) 也說，首相直接在 X 上針對個別軟體漏洞喊話，是罕見的做法。

我把截圖丟給 AI，請它先查我經手的網站有沒有中，再把整件事從頭查一遍。這篇是查完的整理，寫給不寫程式、但每天都在用網站的人。

## PHP2Shell 是什麼？為什麼兩個漏洞能讓各國網站停機

PHP2Shell 是 PHP 裡的兩個漏洞，編號 CVE-2026-109618 和 CVE-2026-109619。攻擊者不需要帳號密碼，只要對網站送出特製的請求，就可能在網站的伺服器上執行自己的程式。

PHP 是寫網站用的程式語言。你逛的部落格、下單的網路商店，很多背後都是它在跑，最有名的例子是 WordPress。依 [W3Techs](https://w3techs.com/technologies/details/pl-php) 的統計，在能辨識後端語言的網站裡，有 69.3% 用 PHP，接近七成。

這個名字拆開來看，就是從 PHP 拿到 shell。shell 是伺服器的指令視窗，拿到它，就能用網站程式的身分在那台機器上下指令；能做到多大程度，要看網站的權限怎麼設定。

兩個漏洞的嚴重度都被 PHP 團隊評為 9.2 分（滿分 10 分）。資安研究員 Kevin Beaumont 認為，這會引發一大波資安事件，是這幾年最大的漏洞之一。

依 [Wiz](https://www.wiz.io/blog/php2shell-php-rce) 和 [Calif](https://calif.io/php2shell/) 的說法，研究人員找到最早受影響的是 2012 年的 PHP 5.4，從那時一直到修補前最新的 8.5.11，每個版本都至少受其中一個漏洞影響。算起來，最老的問題在 PHP 裡至少存在了十四年。

## 這兩個漏洞是怎麼回事？用餐廳廚房來比喻

把網站想成一間餐廳。你在網頁上按下按鈕，就像遞出一張點菜單；PHP 是廚房，照著單子做出你看到的頁面。每張單，廚房都在一個工作台上處理，做完收乾淨，再接下一張。

第一個漏洞出在「做到一半沒料了」的時候。PHP 處理請求時，如果記憶體用完被迫中斷，有些資料只填了一半；負責收拾的程式卻把這些填一半的資料當成完整的，照著處理下去。攻擊者可以故意製造這種中斷，讓收拾的程式照著他動過手腳的半張單做事。

第二個漏洞出在「上一張單沒收乾淨」。一個請求處理完，那塊記憶體已經釋放，PHP 卻還留著指向它的線索；同一個工作台接下一張單時，又拿這條過期的線索去用。研究人員利用這個縫隙做到遠端執行程式。

研究人員也示範了，這組漏洞能把伺服器記憶體裡殘留的東西讀出來，裡面可能有密碼、登入憑證和 API 金鑰（[Qualys 的整理](https://blog.qualys.com/vulnerabilities-threat-research/2026/10/20/php-announces-critical-security-release-for-two-vulnerabilities)）。

[PHP 官方公告](https://www.php.net/archive/2026.php#2026-10-21-5)也指出，在 Apache 搭配 mod_php 的架設方式下，攻擊可以在網站自己的程式開始執行前就觸發，官方把這種架設方式列為風險最高。網站程式寫得再小心也沒用，問題出在廚房的設備上。

![四格漫畫：高市早苗為什麼要大家今晚就處理？一次看懂 PHP2Shell 漏洞，把網站想成一間餐廳。你在網頁上按下按鈕，就像遞出一張點菜單；PHP 是廚房，照著單子做出你看到的頁面。每張單，廚房都在一個工作台上處理，做完收乾淨，再接下一張。第一個漏洞出在「做到一半沒料了」的時候。問題出在廚房的設備上。](/images/articles/php2shell-patch-tonight/02-kitchen.svg)

## AI 怎麼找到 PHP 裡藏了多年的漏洞？

8 月 11 日，資安測試公司 Calif 和 OpenAI 在同一天，分別向 PHP 回報了同一個根本問題。Calif 參加的是 OpenAI 的「Patch the Planet」計畫，用的是 OpenAI 的模型 GPT-5.6 Sol。8 月 24 日，Google 旗下的資安公司 Wiz 也獨立回報，用的是自家的 AI 代理 Wiz Atlas，搭配 [Gemini 4 Argon](/articles/gemini-4-argon-dashboard-admission/) 和 GPT-5.6 Sol（[PHP 基金會說明](https://thephp.foundation/blog/2026/10/21/todays-php-security-release-and-how-were-strengthening-php-security/)、[TechCrunch](https://techcrunch.com/2026/10/21/php-armageddon-openai-googles-wiz-find-ancient-holes-panicking-the-internet/)）。

他們走的是資安界的標準流程「負責任揭露」：先私下通知 PHP 團隊，給對方時間準備修補，再約好一個時間點，讓修補程式和漏洞細節一起公布。這次原本約定的公布時間，是 UTC 10 月 22 日 14 點。據 [Fortune](https://fortune.com/2026/10/21/ai-tools-discovered-the-php-vulnerability-that-could-take-down-70-of-the-internet-now-the-race-is-on-to-patch-it-before-ai-powered-hackers-attack/) 報導，OpenAI 在公布前還找了 Cloudflare 等業者和幾個美國政府單位一起準備。

這個漏洞也不是完全沒人碰過。PHP 基金會說，早在 2024 年，就有受基金會委託的核心開發者發現第一個漏洞背後「記憶體不足」問題的最初跡象；當時有人推想它可能被拿來攻擊，但沒找到具體的攻擊方法。修補方案有好幾個，各有取捨，工作停了又重來，拖了好幾個月。基金會自己承認，這段延誤是結構性的失敗，原因出在安全團隊的決策流程和人手不足；直到 8 月的通報讓問題的嚴重程度變清楚，修補才成為第一優先。

過去要把一個漏洞做成能在不同版本和設定下都奏效的攻擊程式，需要不少專業功夫。Wiz 在部落格裡說，前沿 AI 模型大幅降低了這道門檻，讓一個存在多年的漏洞變成能用的攻擊程式。OpenAI 也提醒，能找出漏洞的能力，同樣能幫攻擊者更快寫出攻擊工具。

## 修補還沒出來，攻擊就先到了？外流與幾小時的賽跑

保密沒有完全守住。10 月 20 日，有人在科技論壇 Hacker News 發文，搶先講出兩個漏洞的編號，還說嚴重度是滿分。貼文後來刪了，資安公司很快確認這兩個漏洞確實存在（[Infosecurity Magazine](https://www.infosecurity-magazine.com/news/critical-php-vulnerabilities-leaked/)）。[PHP 基金會事後說明](https://thephp.foundation/blog/2026/10/21/todays-php-security-release-and-how-were-strengthening-php-security/)，外流的是編號，附帶的公布時間和評分都是錯的（正式評分是 9.2），技術細節並沒有外流。外流之後，PHP 團隊把公布時間提前一天，改在 UTC 21 日 14 點，也就是台灣時間 21 日晚上十點、日本時間晚上十一點。

後面又出了兩個破口。幾個小時後，發現漏洞的 Calif 不小心公開一段示範影片，畫面顯示他們的攻擊示範程式在多個目標上奏效，也多透露了一些有限的細節。21 日下午（台灣時間），資安業者 Chainguard 又沒等約定時間，就搶先發布含有修補的程式版本；基金會說，從這時起，攻擊者已經能研究修補的內容，其他 PHP 使用者卻還在等正式版本。

更早的跡象在 Amazon 的誘捕系統裡。Amazon 架了一批專門引駭客上門的假伺服器，叫 MadPot。[根據 Amazon 的報告](https://aws.amazon.com/blogs/security/amazon-threat-intelligence-identifies-php2shell-exploitation-prior-to-public-disclosure-in-madpot/)，MadPot 在 10 月 17 日就記錄到一次針對這個漏洞的攻擊嘗試，比公開早了四天；對方怎麼提前拿到資訊，Amazon 也還不清楚。Amazon 也記錄到，台灣時間 21 日上午十點左右，已經有多份攻擊示範程式出現，離正式公布還有十二個小時；Amazon 也說，還無法確定這些嘗試在真實系統上能不能得手。PHP 團隊則表示，正式公布時，還沒有確認到能實際運作的攻擊程式。

Cloudflare 執行長 Matthew Prince [在 X 上公布](https://x.com/eastdakota/status/2113079352682570051)他們網路上看到的數字：公布前十個小時，有幾千次攻擊嘗試；公布後 45 分鐘，跳到幾萬次；兩小時內，幾十萬次；到他發文時，已經是幾百萬次。

Amazon 的報告裡有一句話：「保密期能保護防守方，只到別人也找到同一個漏洞為止。」他們建議，碰到這種對外開放的重大漏洞，修補時程要以小時計算。

![時間軸：研究人員找到最早受影響的是 2012 年的 PHP 5.4，問題至少存在十四年；2026 年 8 月，研究人員借助 AI 找到漏洞並回報 PHP；10 月 17 日 Amazon 誘捕系統記錄到攻擊嘗試，比公開早四天；10 月 20 日漏洞編號外流；10 月 21 日晚上十點（台灣時間）修補公布；公布後兩小時內，Cloudflare 看到幾十萬次攻擊嘗試。資安的勝負從誰先找到，移到誰先改好。](/images/articles/php2shell-patch-tonight/01-timeline.svg)

> **📊 關鍵數據**
> - **受影響版本**：研究人員找到最早的是 PHP 5.4，一直到 8.5.11（每個版本至少受其中一個漏洞影響）
> - **嚴重度**：兩個漏洞皆為 CVSS v4.0 9.2 分
> - **修補版本**：8.5.12／8.4.27／8.3.36／8.2.35
> - **最早攻擊嘗試**：2026 年 10 月 17 日，公開前四天（Amazon MadPot）
> - **公布後兩小時**：數十萬次攻擊嘗試（Cloudflare）

## 為什麼日本首相要出面？停站就像放颱風假

日本負責網路安全的政府單位「国家サイバー統括室」在 X 上發出警示，高市早苗也在日本時間 21 日晚上 9 點 55 分發文，請大家參考統括室的資訊；一小時後的晚上 11 點，修補程式公布。

從 21 日下午到深夜（日本時間），日本許多服務主動停機。網路開店平台 BASE 在說明頁寫明，是因為使用的 PHP 有重大漏洞，把原本晚上十點的維護提前到下午三點五十分；Cygames 的《賽馬娘》等遊戲，也以 PHP 漏洞為由緊急維護。插畫社群 pixiv、影音網站 niconico 和札幌市政府官網同一晚也暫停服務，不過公告裡沒有點名 PHP（[整理自 Webセキュリティ診断センター](https://websec-center.com/blog/kokunai-kigyou-taiou/)）。金融業也跟進，[路透社報導](https://www.thestar.com.my/tech/tech-news/2026/10/22/cloudflare-sees-millions-of-exploit-attempts-after-php-disclosure)三菱 UFJ 金融集團暫停部分網路服務，財務省也暫停了部分網站內容。高市早苗自己的官網，[也從當晚停掉](https://www.nikkei.com/article/DGXZQOUA221J60S6A021C2000000/)，隔天中午前後處理完才重新開放。

ITmedia 整理了工程師的反應：首相親自發言，讓企業高層也意識到風險。ITmedia 也分析，停機會影響營運，修補常被往後推；首相把暫時停站說成降低風險的有效做法之一，可以推經營者一把，下決心停機。

這個道理，台灣人應該不陌生，就像颱風假。颱風還沒登陸，縣市政府就宣布停班停課，為的是在災情發生前先把人留在安全的地方。日本那一晚的停站潮，就是網路世界的颱風假。

隔天 22 日，東京股市的資安股跟著上漲。[Investing.com 報導](https://jp.investing.com/news/stock-market-news/article-1720674)，市場預期資安服務的需求會增加；終場趨勢科技漲 8.69%，FFRI 漲 9.62%。做企業郵件和郵件資安的 [サイバーソリューションズ](https://www.cybersolutions.co.jp/)（Cyber Solutions，代號 436A）收在 2,000 日圓，漲 20.85%，成交量約 627 萬股，是前一天的 8.7 倍（[株探收盤資料](https://kabutan.jp/stock/kabuka?code=436A)）。這家公司 10 月 6 日宣布為 AI 郵件資安服務舉辦推出紀念活動，同一天股價收漲 21.38%，那天 FFRI 和趨勢科技也分別漲了 6.38% 和 2.76%；截至 22 日下午，官網沒有針對 PHP2Shell 的公告，22 日這一波比較像整個資安族群一起被買上去。（揭露：我持有這家公司的股票。這段只整理市場反應，不構成投資建議。）

![長條圖：2026 年 10 月 22 日東京股市收盤，趨勢科技漲 8.69%，FFRI 漲 9.62%，サイバーソリューションズ漲 20.85%。資料：株探。](/images/articles/php2shell-patch-tonight/security-stocks-1022.svg)

其他國家也有動作。美國網路安全暨基礎設施安全局（CISA）[呼籲立即修補](https://www.cisa.gov/news-events/alerts/2026/10/21/critical-vulnerabilities-php-require-immediate-patching)；英國國家網路安全中心（NCSC）[呼籲英國企業立刻更新](https://www.bleepingcomputer.com/news/security/php-ships-emergency-patches-for-critical-php2shell-flaws/)，做不到就先讓系統下線；路透社也報導，歐洲有政府網站暫時下線。

台灣這邊，數位發展部資通安全署在 22 日[發布新聞稿](https://moda.gov.tw/ACS/press/news/press/21134)，請使用 PHP 的機關、學校和企業盡快確認版本並完成更新，更新後也要檢查系統紀錄，看有沒有異常存取。

## 我的網站有沒有中？我怎麼確認的

回到我自己。AI 花了幾分鐘，從外面把我經手的幾個網站檢查一輪：對每個網站要求 PHP 常用的網址，看伺服器怎麼回應，也翻網頁原始碼，找 WordPress 這類系統留下的痕跡。結果都沒有看到 PHP。以 paulkuo.tw 為例，頁面是事先產生好的靜態檔案，放在 Cloudflare 的邊緣網路上，會員登入這類需要後端運算的功能交給 Cloudflare Workers。

我[之前寫過一次安全稽核的經驗](/articles/ai-security-audit-ground-truth/)：AI 說修好了不算，要用 curl 從外面實際敲過才算。這次判斷的依據，也是伺服器實際回傳的東西。

我沒中的原因只有一個：用的架構裡沒有 PHP 這個零件。換成下一個漏洞出在我用的元件上，我一樣得回答同一組問題：我知不知道自己的網站跑了哪些軟體？出事的時候，能不能在幾小時內修好？

## AI 讓漏洞藏不住之後，資安比的是什麼？

把時間軸攤開來看。最老的問題在 PHP 裡至少存在了十四年，今年八月被借助 AI 的研究人員找出來；修補公布前十二小時，已經出現攻擊示範程式；公布後兩小時，攻擊嘗試達到幾十萬次。

AI 讓漏洞藏不住了，資安的勝負從誰先找到，移到誰先改好。

改得快，要靠平常的準備。你得知道自己的網站跑了哪些軟體，出事時要有人有權限立刻更新，必要時也要有人敢說先停站。這三件事都得在平常就安排好，等警報響了才找人，就來不及了。

高市早苗在日本時間 22 日下午一點（台灣中午）發的[第二則貼文](https://x.com/takaichi_sanae/status/2113118173818224932)，講的也是這件事。她說自己的官網前一晚由事務所聯絡網站和伺服器的管理者，先關站處理，處理完才重新開放，也說視情況暫時停站，也是重要的做法。她提到，有些網站經營者遇到需要半夜處理的狀況，未必能馬上看到警示；如果公司裡負責網站的人，或受委託的網站和伺服器管理者先察覺，就能盡早動手。她認為，這些管理者如果都追蹤日本政府發布資安警示的 X 帳號 [@cyber_forecast](https://x.com/cyber_forecast)，應該能更快應對（[ITmedia 報導](https://www.itmedia.co.jp/news/article/2610/22/2000002512/)）。

以西結書第 33 章講過守望者的責任：守望的人看見刀劍臨到，就要吹角警戒百姓；聽見角聲卻不理會的，後果自己承擔；守望的人看見了卻不吹角，責任就落在守望的人身上。

高市早苗那天晚上做的，就是吹角。隔天那則貼文，則是告訴大家下次該去哪裡聽角聲。

## 角聲響過之後

如果你只是用網站的人，這幾天看到常用的服務在維護，不用慌，那多半是經營者照著警報在做事。你能做的，是別在不同網站重複用同一組密碼，也小心這段期間打著「資安更新」名義寄來的信。

如果你有自己的部落格或網路商店，問主機商一句話：主機上的 PHP 更新到修補版了嗎？修補版是 8.5.12／8.4.27／8.3.36／8.2.35，依你用的分支擇一。還在用 PHP 8.1 或更舊版本的，官方已經不提供一般更新，只針對 7.4 到 8.1 釋出最小修補；最穩的做法是升級到仍有支援的版本，來不及就先把網站停掉。PHP 官方在公告裡寫：「沒有完整的緩解措施，更新是唯一安全的選擇。」

下一次角聲響起，未必有首相提前一晚提醒。到時候，你的組織裡有沒有人知道該修什麼，又有沒有人敢喊停？

想看更多 AI 怎麼改寫秩序的討論：[智能與秩序](/topics/ai/)。
