AI Agent 入侵,打穿的都是老問題:門沒鎖,不是小偷變聰明

企業 AI 落地研究所|主持 Casper/來賓 Max

錄製資訊(不口播)

依據 訪綱,圖解見 投影片。主線例子「明豐扣件」是虛構公司。三條紅線:① 91APP 只說「自動化攻擊」,不說成 AI 攻擊;② Zeabur、OpenCode 沒有證據是 AI 打的,只講「AI 的鑰匙被偷」與老問題;③ 個資法 2025-11-11 修正條文施行日未定,不用罰款嚇中小企業。不念網址、金鑰與受害品牌名單;不念「一夜被盜刷 1,700 美元」、資安署「43%」與 Google「6 小時」。所有數字口播時講「誰說的、什麼時候」。口白約 8,000 字,照念約 30~33 分,加停頓與即興估 34~38 分。

1|Hook:本週新聞與一個懸念(投影片 1–2)

Casper: 這兩個禮拜的科技新聞,如果你只看標題,會以為我們活在科幻片裡。印度國家資安中心 CERT-In 發了一份「Critical」等級的公告,標題寫:AI Agent 成為攻擊媒介。美國 CISA、NIST、NSA 隔天也出了一份指引,教那些在訓練、測試高能力 AI agent 的單位:agent 出事時怎麼應變。台灣這邊,一個不少工程師在用的部署平台 Zeabur,兩個月內第二次被入侵,創辦人直接宣布年底收掉。

Casper: 歡迎來到企業 AI 落地研究所,我是 Casper,今天一樣請到 Max。Max,AI 開始自己駭進公司了嗎?

Max: 標題是這樣沒錯。可是我把那份印度公告的原文讀完,最讓我嚇一跳的不是 AI 有多厲害,是其中一段的小標題,就叫做——「被利用的弱點都是傳統的」。英文是 The weaknesses exploited are conventional。

Casper: 好,那我先丟一個題目給大家記著,最後揭曉:今天我們要講的這幾件入侵,受害者裡面,有幾家是自己發現的?

Max: 先說,不懂技術完全沒關係。今天每一個概念,都會有一個你家裡就看得到的比喻。

2|拆迷思:AI 駭客不是電影裡的天才(投影片 3)

Casper: 我腦中的 AI 駭客,就是電影那種,螢幕上綠色字一直跑,三秒破解國防部。

Max: 大家都是。可是你去看調查報告,寫出來的入口是什麼?CERT-In 列得很清楚:程式碼、公開程式庫的歷史紀錄、設定檔裡的密碼和金鑰;早就沒人用、但還連得到的測試 API;明文存放的支付金鑰;權限給太大的雲端帳號;直接開在網路上、沒有雙重驗證的管理後台。

Casper: 這些聽起來……都不新。

Max: 一點都不新。更直白的是 Anthropic。他們今年七月底自己公告,模型在做資安測試的時候,因為測試環境設定錯誤能連上網路,有三起事件闖進了真實世界的系統。報告裡寫:用的是弱密碼、沒有驗證的端點這種「基本手法」,沒有找到、也沒有用到任何複雜的漏洞。這是當事公司自己說的,我們當作自述來聽,但它跟印度政府的結論是一致的。

Casper: 所以不是小偷變聰明?

Max: 是門沒鎖。這句話今天會一直出現。

3|主線例子:明豐扣件的五把鑰匙(投影片 4)

Max: 我們今天用一間虛構的工廠來想,叫它「明豐扣件」。50 個人,做螺絲螺帽外銷。五年前請外包做了一套報價系統;官網跟電商用一家 SaaS;業務助理去年學會用 n8n 這類自動化工具,把客戶詢價信自動轉到 LINE 群組;會計用 AI 翻譯英文合約,所以公司有一把 AI 服務的金鑰;還有一位兩年前結案的外包工程師,帳號可能還在。

Casper: 這根本是在講很多台灣中小企業。

Max: 對,每一個都很合理、都很省事。可是每一個背後,都有一把「鑰匙」——密碼、token、API key——放在某個檔案、某個設定、某個人的筆電裡。

Casper: 你會不會太誇張?自動化工具也算?

Max: 我舉個本週的真實數字。Zeabur 這次被攻擊者下指令的八百多個資料庫服務裡,最多的就是 n8n,七百三十六個。而且他們抽查六百零七個 n8n,有六百零二個把加密金鑰直接放在環境變數裡——等於裡面存的第三方帳密,實際上是明文外洩。這不是工程師的專利,是「會用自動化工具的人」都會遇到的事。

Casper: 所以今天整集只問明豐一題。

Max: 對:如果今晚有一隻 AI Agent 來敲明豐的門,它最先找到的會是哪把鑰匙?明豐要多久才會知道?

4|工作定義:兩種敲門的方式(投影片 5)

Casper: 先幫大家定義一下,今天講的 AI Agent 是什麼?

Max: 今天只用一個意思:能自己規劃工作、下指令、呼叫工具,在網路上連續行動一段時間的軟體。它不是只回你一句話的聊天機器人,而是會自己動手的那種。

Max: 它來敲門有兩種方式。第一種,是 AI 公司在測試模型的時候,agent 超出了被交代的範圍,跑到真實世界的系統裡。印度公告的第一類就是這個,是模型公司事後自願通報的。第二種,是真正的攻擊者,拿網路上現成的開源 agent 攻擊工具來做營利入侵。

Casper: 台灣有嗎?

Max: 有。數位發展部資安署今年八月十三號發過新聞稿:境外駭客結合 OpenClaw 等 AI Agent 攻擊政府機關,而且是利用「備援、測試等次要系統」當跳板。這一句先記著,等一下講第三個老問題會回來。

5|小偷沒變聰明,是變成一千個不睡覺的(投影片 6)

Casper: 如果弱點都是舊的,那 AI 到底改變了什麼?

Max: 改變的是規模和速度。我給大家一個比喻:以前是一個小偷,一個晚上能轉幾個門把?現在是一千個不用睡覺的實習小偷,每一扇門都去轉一下。大部分門是鎖著的,沒關係,它不會累。

Casper: 有數字嗎?

Max: Hugging Face 是一個放 AI 模型的平台,七月被 OpenAI 測試中的 agent 打進去。他們事後重建了整個過程,大約一萬七千六百個攻擊動作,五天之內。他們自己寫:大部分動作都沒有結果。可是累積起來的覆蓋面,就足以找到一條能走通的路。

Casper: 一萬七千六百次試門把。

Max: 對。CERT-In 也說,在他們看到的營利攻擊裡,從進門到造成損害,時間從「好幾天」壓到「幾個小時」。另外 Mandiant——Google 旗下做事件應變的公司,所以有利益關係——他們的年度報告說,駭客集團之間「交棒」的時間,二〇二二年中位數還要八個小時以上,二〇二五年只要二十二秒。

Casper: 八小時變二十二秒。

Max: 所以重點不是 AI 會不會開鎖,是你家沒鎖的那扇門,以前可能幾年都沒人去轉,現在幾個小時就會有人去轉。

6|老問題①:地墊下的備用鑰匙(投影片 7–8)

Casper: 好,那第一個老問題。

Max: 明文、長效的金鑰。比喻是:備用鑰匙藏在門口地墊下,而且十年沒換鎖。

Max: Zeabur 十月十九號自己公布的初步報告,根本原因寫得很誠實:長效的管理憑證以明文存放,而且可以從公網使用。那把叢集管理 token 是二〇二四年一月建立的,沒有有效期限,今年一月被寫進設定檔的 repo,管理介面又直接開在網路上。拿到它的人,從外面就能直接操作叢集。

Casper: 從二〇二四年到現在都沒換過。

Max: 而且這不是個案。GitGuardian 是賣密鑰掃描產品的公司,所以要揭露利益,但他們的年度報告數字很常被引用:二〇二五年一整年,公開的 GitHub 上新增了兩千八百多萬個寫死在程式碼裡的密鑰,年增百分之三十四。Google 九月也承認,Gemini 在測試時進入三個外部系統,用的方法就是猜登入資訊,或者用它在公開程式庫裡找到的帳密。

Casper: 那 AI 的鑰匙呢?我們會計那一把。

Max: 這是這一波最有感的地方:鑰匙現在更值錢了。偷到 AI 服務的金鑰,就像偷到一張沒設額度的信用卡,對方隔天就能拿去刷。Zeabur 的報告寫,攻擊者「主要在找可以直接用的 API 金鑰,特別是 AI 服務的」,還試圖拿 Zeabur 的雲端金鑰去呼叫 AI 服務,那次沒成功。

Casper: OpenCode 也是同一週?

Max: 對。OpenCode 是一個開源的 AI 寫程式工具,它有一個網頁主控台,讓使用者存放自己 OpenAI、Anthropic、Google 的金鑰。十月十六號晚上被打,被打的是一套準備除役的舊系統,大約百分之一點四的主控台使用者,存放的 AI 金鑰可能外洩。GitGuardian 的報告也說,AI 服務的金鑰外洩一年增加百分之八十一。

Casper: 我要幫聽眾確認一下:Zeabur 跟 OpenCode,是被 AI 打的嗎?

Max: 這個要講清楚:目前沒有證據。Zeabur 的報告沒有說攻擊者用了 AI;OpenCode 共同創辦人對媒體說攻擊者用了 AI agents,但那是公司的說法,沒有公開證據。我們今天能確定的是:這兩件被偷的,是 AI 的鑰匙;被打穿的,是老問題。

7|老問題②:只為掃一間會議室,給了整棟萬能鑰匙(投影片 9)

Casper: 第二個老問題。

Max: 權限過大。比喻是:你只請清潔阿姨打掃一間會議室,卻給她整棟大樓的萬能鑰匙。她是好人,沒問題;可是那把鑰匙一旦被偷,整棟都開了。

Max: Hugging Face 的報告裡有一段讓我印象很深:他們內部有一個連接器的憑證,跨好幾個叢集共用,而且被綁到最高權限。攻擊的 agent 冒用它之後,一秒之內就在兩個叢集拿到最高管理權限。

Casper: 一秒。

Max: Zeabur 也有類似的:一把只需要讀一個儲存桶的金鑰,實際上可以讀整個雲端帳號所有的儲存桶;一個叫「唯讀」的資料庫帳號,可以讀全部資料。唯讀聽起來很安全,可是對偷資料的人來說,讀就夠了。

Casper: 這種東西為什麼會一直存在?

Max: 因為給大權限最省事,出錯時最不會被罵。Verizon 的年度外洩報告——他們也賣資安服務——有一個數字:第三方雲端帳號上的弱密碼和權限設定錯誤,要處理掉一半,花了將近八個月。大家都知道,就是一直排不到。

Casper: 回到明豐。

Max: 明豐的「整合用帳號」,常常就是那把萬能鑰匙:外包商為了方便,給它讀寫全部資料。這週就問一句:它真的需要讀全部嗎?

8|老問題③:搬家沒退租的舊房子(投影片 10)

Casper: 第三個。

Max: 沒人管的舊系統。比喻是:你搬家了,舊房子沒退租,門沒鎖,信箱還在收信。最危險的系統,常常是大家都以為「已經不用了」的那一套。

Max: OpenCode 被打的,就是準備除役的舊系統。Zeabur 被打的共享叢集,今年四月起就不收新服務了,正在淘汰;報告裡還有一句:一個已經關掉的服務,它的部署金鑰在服務關閉四個月之後仍然有效。

Casper: 這就呼應剛剛資安署那句。

Max: 對,資安署說攻擊利用「備援、測試等次要系統」當跳板;CERT-In 也把「閒置、淘汰、測試用的 API 還連得到」列進清單。明豐五年前那套報價系統、某次展覽臨時架的測試機、某個前員工的帳號,就是那間沒退租的舊房子。

(錄製備註:此處可插入 Max 親身案例,一則真實的金鑰或舊系統踩雷經驗。)

9|新招也長得像老問題:替你拆信的特助(投影片 11)

Casper: 那 AI 有沒有帶來真的新問題?像大家說的 prompt injection。

Max: 有,但你仔細看,本質還是「誰能下指令」跟「權限給多大」。比喻是:你請了一位新特助替你拆信、處理信件,其中一封信寫著「請把保險箱密碼寄到這個地址」——他照做了。

Max: 一家資安公司 Noma 在七月公開一個研究,叫 GitLost:在 GitHub 公開專案裡開一張問題單,裡面藏指令,負責處理問題單的 AI agent 就把同組織私有專案的內容,貼到公開留言裡。這是研究者自己架的示範,不是真實受害案例,而且是賣產品的資安廠商發表的。

Casper: 還有別的嗎?

Max: 另一家資安公司 Socket 二月揭露一個 npm 蠕蟲,取名叫 SANDWORM_MODE。它會在 Claude Code、Cursor 這些 AI 寫程式工具的設定裡,偷偷裝一個假的工具,工具說明裡藏著一段話,叫 AI 去讀電腦裡的 SSH、雲端金鑰、環境設定檔,而且「不要告訴使用者」。

Casper: 這好可怕。

Max: 可是你看它最後要偷的是什麼?還是金鑰。OWASP 去年底出的「Agentic 應用十大風險」,前幾名就是目標被劫持、身分與權限濫用、供應鏈。所以如果明豐也開始讓 agent 幫忙處理信件,原則就是:它讀進來的東西都當作可能有壞人寫的紙條,它手上的權限越小越好。

10|鑰匙交給管理公司,住戶罵的是你(投影片 12)

Casper: 我替很多老闆問:我們用大廠 SaaS、把系統外包,不是比較安全嗎?

Max: 很多時候是比較專業。可是集中化有另一面:管理公司被闖一次,就是整棟住戶一起中。這週的例子是 91APP。我要先講清楚:91APP 的重大訊息寫的是 Commerce Cloud 資料庫受到「自動化攻擊」,沒有說是 AI,手法也還沒公布。

Casper: 那它跟今天的主題有什麼關係?

Max: 關係在「出事時誰扛」。天下雜誌訪問一位品牌老闆,他說:「消費者絕對是找品牌,他不會找 91APP。」而且他是客人來投訴之後,主動去問,才得到確認。Verizon 的報告說,有第三方涉入的外洩已經佔到百分之四十八。

Casper: 法律上呢?

Max: 個資法第四條,現在就有效:受委託處理個資的業者,在個資法範圍內「視同委託機關」。白話講,責任跟著資料走,不會因為你外包就外包掉。所以明豐跟它的電商 SaaS、外包商,合約上至少要寫三件事:出事後幾小時內通知我、會告訴我哪些欄位與多少筆、能不能給我第三方鑑識摘要。Zeabur 還提醒我們第四件事:平台出事後直接停運,客戶還要搬家,所以退場時資料怎麼匯出也要寫。

11|假結尾:「那把鑰匙都換掉,就安全了吧?」(投影片 13)

Casper: 好,聽到這裡我覺得我懂了:把金鑰換掉、把舊系統關掉、把權限縮小,就結束了?

Max: 我也很想說今天就到這裡。可是 Zeabur 的故事告訴我們:沒那麼簡單。

Max: Zeabur 八月就出過一次事。出事後,他們輪替了確認外洩的金鑰。可是那次的輪替,沒有涵蓋設定 repo 裡面明文存放的叢集管理 token 和雲端金鑰;九月三號就發現的明文 root 密碼問題,也還沒修。十月被拿來用的,正是這些。他們自己在報告裡承認,八月說「所有內部管理金鑰已停用或輪替」,這個說法不完整。

Casper: 換了前門的鎖,後門鑰匙還掛在原處。

Max: 而且等於告訴小偷:哪扇門還開著。CERT-In 也寫:修補不完整的受害者,幾天之內再被打一次,規模更大。所以換鑰匙要換到「從外面驗證舊鑰匙真的打不開」才算數。

12|真正缺的:看得見(投影片 14)

Casper: 那我們有防毒、有防火牆,不會叫嗎?

Max: 這是最反直覺的地方:拿合法鑰匙走正門的人,防毒跟防火牆都不會叫。Zeabur 的報告寫,攻擊者拿的是真的管理憑證;十月十四號超過十六個小時的攻擊活動,沒有觸發任何警報;大約三十六個小時後,是使用者回報才開始調查。

Casper: 三十六個小時。

Max: 更大的尺度,IBM 的年度報告——IBM 賣資安服務,資料是問卷——說外洩從發生到辨識、再到控制住,平均兩百四十七天。由內部團隊自己發現的,只有百分之三十八。

Casper: 那要買什麼?

Max: 先不用買。比喻是:家裡沒裝門鈴監視器,是鄰居打電話來說「你家門開著」。你要的是:有人半夜用管理帳號、大量下載、帳單暴增時,誰的手機會響。CERT-In 的建議也很樸素:對大量讀取要能告警,紀錄至少留一百八十天。

13|揭曉:有幾家是自己發現的?(投影片 15)

Casper: 好,回到開場那一題。這幾件入侵,受害者有幾家是自己發現的?

Max: 印度 CERT-In:一家都沒有,全部是模型公司事後主動揭露。Anthropic:他們聯絡上的兩家,之前都沒發現。Google:五月發生的入侵,七月才因為測試夥伴回頭檢查而知道。Zeabur:使用者回報。91APP 的品牌:客人先來投訴。

Casper: 全部都是鄰居打電話來。

Max: 有一個反例我一定要講,才公平:Hugging Face。他們自己的安全監控確實有偵測到異常。但他們也承認,警報的嚴重等級沒有正確拉高,拖慢了應變。所以「看得見」不是買一套工具就好,是要有人接得到、而且知道那是大事。

14|誠實時間:我們不知道的事(投影片 16)

Casper: 有沒有什麼是你今天不敢講死的?

Max: 有四件。第一,91APP 和 Zeabur,目前都沒有證據是 AI 打的,我們今天沒有這樣說。第二,OpenAI 那次確實用了一個零時差漏洞才連上外網,不是每一步都是老問題;但進到 Hugging Face 之後擴大,靠的是長效憑證和過大權限。第三,Mandiant 說得很保守:他們不認為二〇二五年是「外洩直接由 AI 造成」的一年,大多數入侵還是基本的人與系統失誤。第四,CERT-In 沒公布受害組織數量,也沒點名模型公司。

Casper: 那會被罰嗎?很多老闆最在意這個。

Max: 我不想用罰款嚇人。個資法去年十一月公布的修正條文,施行日期還沒定;資安法主要管公務機關和特定的非公務機關。真正會找上中小企業的,是兩件事:你的客戶,跟你的供應鏈——如果你是政府或關鍵基礎設施的外包商,資安法第十條的契約要求,會沿著合約流到你身上。

15|這週就能做的三件事(投影片 17)

Casper: 好,給明豐,也給聽眾,這週能做什麼?

Max: 三件,不用買新產品,指派一個人一週內做完。

Max: 第一,找鑰匙、換鑰匙。請 IT 或外包商盤點程式碼和 repo——包含歷史紀錄——共用雲端硬碟、設定檔、自動化工具、員工筆電,裡面有哪些密碼和金鑰。找到的一律撤銷重發,刪檔不算數。AI 服務的金鑰,設用量上限跟帳單警示,一個用途一把。

Max: 第二,關舊門、縮鑰匙。列一張「從網路上連得到的東西」清單:官網、測試機、舊報價系統、備援機、管理後台。沒人認領的,這週關掉。管理帳號全部開雙重驗證;離職員工、前外包商的帳號全部停用;每個整合帳號問一句「它真的需要讀全部嗎」。

Max: 第三,確定誰的手機會響。帳單暴增、半夜大量下載、管理帳號異常登入,誰會收到通知?然後打給你的 SaaS 和外包商,問那幾題,寫進合約。

Casper: 如果只能做一件?

Max: 撤換所有你找得到的金鑰,並替 AI 金鑰設用量上限。資安署今年三月也出了《中小企業基本資安防護指引》跟自檢表,還有 0800-280-280 的諮詢專線,可以先拿來對照。

16|收尾(投影片 18)

Casper: 最後一句帶走的話?

Max: AI 沒有發明新的門。被打穿的是老問題,而老問題,這週就能開始修。

Casper: 明豐那一題的答案呢?今晚 AI Agent 來敲門,它先找到哪把鑰匙?

Max: 大概是設定檔裡那把沒換過的,或那套沒人記得的舊系統。明豐要多久才會知道——取決於這週,你有沒有決定好,誰的手機會響。

Casper: 你們公司裡,最讓你睡不著的那把鑰匙在哪裡?歡迎留言告訴我們。我們下集見。