2026 年 10 月 21 日,日本首相高市早苗在自己的 X 帳號上發文,請大家先把網站關掉。那一天日本的全國數位身分系統下線,維基百科背後的基金會停掉部分服務,連專門保存網路歷史的 Internet Archive 都短暫離線。
這些網站都不是被駭客打掉的,是自己先下線等修補。起因是 PHP 這個快三十歲的程式語言被開出兩個 CVE 漏洞,官方評分 9.2 分,而全世界大約七成的網站背後都靠它在跑。數位時代創新長黃亮崢 James 邀請 AWS 社群英雄蔣鐙緯 Ernest,從開發者這一端拆解那一晚全世界究竟在等什麼,以及接著發生的 Zeabur 收攤、Railway 金鑰外洩與 91APP 訂單資料庫被存取,為什麼全部指向同一個缺口。
聽完這集你可以學到
-
這次不是故障,是有洞躲在你家裡:Ernest 把去年的 AWS 大規模中斷歸類在故障,這次歸類在攻擊。故障可以回溯 log、定位哪一層出問題,修好就結束;攻擊像有人翻牆進屋後躲在床底下,你不知道他翻過哪些抽屜、還在不在。要處理的不是修東西,「壞了重開機就好」的架構也不保證他不會又進來。
-
七成網站還在用 PHP,是人性堆出來的結果:PHP 不是因為過時才危險,是因為太能用。1997 年前後它是架網站最快的選擇,LAMP 同捆包造就了一整代人的入門。Ernest 分析,系統留在線上的真正原因是「它會動,我現在不要去動它;動壞了責任在我手上」。
-
撐住七成網站的PHP基金會,其實只有一個正職員工:路透社在 10 月下旬訪問到 PHP 基金會執行董事,他親口說全職員工就只有他自己,其他 14 人幾乎都是兼職約聘,董事是無給職志工。Ernest 說這在開源世界不算新聞,很多語言都是從「因為愛、因為興趣」開始,最後靠基金會募款買核心開發者的時間。
-
更新到最新版,不等於沒事:把版本號更新上去是基本功,連發外包也得要求廠商做到。但官方不一定會發你用的那個版本:線上還有大量 PHP 7 甚至 PHP 5,舊版得自己從原始碼重新編譯。而且軟體是一層層疊的,漏洞常出在你跟上一層、下一層的相依性。
-
那一晚全世界在等的不是 PHP,是 Docker:官方版本臺灣時間接近晚上十點才放出來,但多數人跑在容器上,還要再等 Docker 包好的那一份。Ernest 形容當晚全世界在追「現在輪到誰」。他們臨時把一位資深 PHP 開發者加進有權限更新的名單,才做完分支測試、merge 回主線。
-
這一波被搶其中一項稀缺資源,是 能跑AI 的 API 金鑰:當年挖礦搶的是運算資源,現在搶的是大型語言模型的 API key。Ernest 判斷 Zeabur、Railway 這類「二房東」手上剛好有一大堆,因為他們服務的客戶是會 Vibe Coding 卻不懂部署的初次開發者,很容易把金鑰直接放進平台,整個平台就成了有目的性的攻擊目標。
-
刪除不等於撤銷:你在程式或平台後台把金鑰拿掉,只是把自己手上那把丟掉,小偷早就打好了備份鑰匙。要真的換掉,得回到發鑰匙的那一方,到 OpenAI、Anthropic 的後台把那把 API key revoke 掉再重新申請。Railway 要換掉的不只模型金鑰,還有資料庫密碼與金流憑證。
-
91APP 被摸進去的,是一台「租來的吊車」:攻擊起點不是主系統,是內部自己在用的小工具。Ernest 用歐洲老房子打比方:樓梯太窄換不了沙發,只能租一台吊車直通三樓,窗戶全開。這種工具天生權限很大,又常不在資安盤點清單上;等人調職,吊車還停著、窗戶還開著。
這次事件真正的斷點不是漏洞,而是維護能力的落差。兩個 CVE 編號、官方 9.2 分,技術上只是又一次嚴重的記憶體洩漏。但 PHP 已經是一種基礎建設:很多公司的官網、政府單位的網站、部落格、活動報名頁都靠它,連 WordPress 與 Drupal 底層也是。偏偏維護它的是一個只有一位正職的基金會。使用量與維護編制之間的落差,才是這次全球同步停機的真正原因。
AI 把攻守雙方都加強了,先改變的卻是攻擊的失敗成本。Ernest 強調只要有攻擊就會有防守,AI 增強的是兩邊。但攻擊方多了一樣東西:極低的失敗成本。過去開一套系統要走完流程、找一組工程團隊,週期是三個月甚至三年;現在用 AI coding 做出七八成堪用的版本只要三小時,攻擊者可以做十個版本挑一個,在三分鐘內把所有路徑試過,第一台打不下來就換組合。
91APP 報告裡那個 AI 自主滲透工具ARTEX,差別在它會迭代。傳統掃描工具有一張固定清單,能確保人家不再用舊方式走進來,這種保護是有效的。新的工具加上思考,會一直測試、一直換策略,把過程摸成一張地圖,知道哪裡有弱點、哪裡不用再打。對照時間線:10 月 3 日發現訂單資料庫被非法存取,到 14 日晚間才完全阻斷,因為攻擊者拿的是合法鑰匙,從監控系統看就像一個有權限的人在查資料。
三起事件的共同點,是金鑰管理還留在「重打鑰匙很貴」的年代。Ernest 說這不是技術問題,是處理成本的認知沒有更新。過去打一把鑰匙、交到別人手上都費事,所以思路是把鑰匙好好收著,要授權才拿得到。但現在重打鑰匙已經很便宜,交換方式也更安全,新的做法是要用的時候才臨時申請,平常根本進不去。Zeabur 的金鑰長度足夠拖住攻擊者很久,卻放在一個跟其他房間互通的工具間,長度就失去了意義。
防守的解法不是更大的系統,而是四件基本功。第一是盤點:全面掃描,知道自己有幾把鑰匙、放在哪、隔離得夠不夠,連設定檔、容器、同事的電腦、聊天軟體的對話紀錄都要掃。第二是權限剛剛好:負責更新試算表的那一隻 AI agent 就只給試算表權限。第三是給憑證設壽命,讓它自然過期,能縮多短就縮多短。第四是觀念:看不到敵人時不要放鬆警戒,程式送出前能檢查就檢查。
留給聽眾的功課
Ernest 用《葬送的芙莉蓮》打比方:芙莉蓮教費倫的多半是基礎魔法,而基礎魔法擋得住很多攻擊手法。他也提醒一個已經過期的假設:「我們太小,不會被針對吧?」當攻擊成本變得這麼便宜,就算你裡面沒什麼東西,也可以被當成跳板。James 則留下一個今天就能回去問的問題:你們家現在還在用的那一把最老的憑證,是什麼時候發的?很多老闆連自己家的門禁是誰在管都不知道。但你需要一張盤點表,因為接下來 AI 會每天來找你。
//
🚀 亞洲最大創新創業嘉年華 𝗠𝗘𝗘𝗧 𝗧𝗔𝗜𝗣𝗘𝗜 來了!
𝙁𝙤𝙪𝙣𝙙𝙚𝙧𝙨 𝙤𝙛 𝙏𝙤𝙢𝙤𝙧𝙧𝙤𝙬 ✨ 11.19-11.21 圓山花博
免費入場,立即報名 👉🏻 https://pse.is/9t7erg
Powered by Firstory Hosting
