當保全公司被偷了所有客戶的鑰匙 — 從 Zeabur 資安事件看 AI 時代的安全認知

保管平台的資訊安全

去年有位行銷背景的講師,用 Vibe Coding 做了個 AI 小工具分享給學員使用,沒幾天就發現帳單暴增 — 原來 AI 生成的程式碼直接把他的 API Key 寫死在檔案裡,所有學員都在燒他的帳號。這件事在技術圈傳開後,成了不少工程師拿來挑戰 Vibe Coding 的經典案例。

萬萬沒想到,才過了不到一年,這個劇本竟然升級了。

8/27,雲端部署平台 Zeabur 證實發生資安事件,攻擊者取得了平台上部分使用者專案的環境變數紀錄。白話來說,就是使用者存放在 Zeabur 上的 API Key、資料庫密碼、各種 Token,可能全部被看光了。

而且不只是「被看到」— 官方已經實際觀察到 Anthropic、OpenAI、OpenRouter 的 API 憑證遭到盜用,有使用者的帳單一夜衝上平日近十倍,被盜刷的金鑰清一色在跑最貴的 Claude Opus。

咦!!!?? 這不就是去年那位講師的翻版,只是規模從「一個人的 key」變成「整個平台所有人的 key」嗎?

兩個案例,一條升級路線

讓我們把這兩件事擺在一起看:

案例一:Vibe Coding 講師案例二:Zeabur 平台
時間2025 年2026 年 8 月 27 日
當事人背景行銷背景,非技術出身新創公司,拿過 YC China 和 500 Global 投資
問題核心API Key 寫死在前端程式碼平台內部 AWS 管理憑證外洩,環境變數遭存取
影響範圍個人帳單暴增平台上所有使用者的 API Key、資料庫密碼、Token
外洩的 Key 類型單一 AI 服務OpenAI、Anthropic、OpenRouter、Gemini、GitHub、AWS、Cloudflare、Stripe…
社群反應「不懂技術就不要碰」「連平台都搞不定?」

第一案的教訓是:「使用者自己不懂安全」— 你不懂,你自己受害,某種程度上是可以理解的。

但第二案的意義完全不同。Zeabur 不是路人,它是一家以「幫你部署、幫你管理」為核心價值的 PaaS 平台。使用者把 Key 交給它,正是因為信任它會妥善保管。

簡單來說,這就像一家保全公司被偷了所有客戶的鑰匙 — 而且不是保險箱沒鎖好,是連進保全公司大門的那把鑰匙都被拿走了。

已確認的攻擊路徑

根據 Zeabur 後續公布的調查結果,攻擊路徑已經比較清楚了:

攻擊者取得了一組外洩的 Zeabur 內部 AWS 管理憑證,進入東京區域的 shared AWS cluster,接著取得 control-plane network 的 VPN 存取能力,最終連入 Zeabur 的主要資料庫,對使用者的環境變數進行查詢與匯出。

從查詢模式來看,攻擊者特別鎖定 AI API Key 與其他可以直接使用的憑證 — 這不是亂槍打鳥的腳本小子,而是有目標的行動。

官方先前提到 AI Hub 使用的 LiteLLM 出現可疑活動,目前仍在調查兩者是否相關。完整的 root cause 尚待第三方鑑識結果公布。

這不是 Vibe Coding 的問題

看到這類事件,社群裡總會有人急著喊:「看吧,又是 Vibe Coding 惹的禍。」

但如果你看攻擊路徑就知道,這次被打穿的是平台的內部管理憑證和基礎設施存取路徑。今天就算你的程式碼是三十年經驗的資深工程師一行一行手寫的,只要部署在同一個平台、把 API Key 放在平台的環境變數裡,一樣會被撈走。

把這件事簡化成「Vibe Coding 很危險」,反而模糊了真正值得討論的問題。

Ian Chen 的一篇貼文 對這件事做了非常扎實的技術面分析,包括環境變數的使用在軟體部署中本就是標準做法,以及 Secrets Management 其實是一個安全成熟度的分層問題。有興趣深入了解技術細節的朋友,推薦直接去看他的原文。

但這面鏡子照出了什麼?

如果這次事件的原因不在 Vibe Coding,那它對我們這些 AI 時代的開發者、使用者、學習者,到底有什麼意義?

我覺得最值得思考的,是兩件事。

第一件:你把鑰匙交出去的時候,真的知道對方怎麼保管嗎?

Zeabur 的使用者照著官方文件、用標準做法把 API Key 設在環境變數裡。從使用者的角度,他什麼都沒做錯。問題出在平台本身成為了安全邊界的一部分 — 而這個邊界被突破了。

在 AI 時代,我們會越來越頻繁地把各種 API Key 交給第三方平台:部署平台、AI Agent 框架、自動化工具。每一次交付,其實都是一個信任決策。而「方便部署」和「安全存放你的憑證」是兩件完全不同的事。

你不需要成為資安專家,但至少在把 Key 交出去之前,值得多想一秒:這家平台的安全架構,配得上「保管我鑰匙」這個責任嗎?

第二件:AI 能幫你做出東西,但「做出東西」跟「做對東西」之間的距離,比你以為的遠。

這裡的「做對」不是指程式碼有沒有 bug,而是你的方案的安全等級,有沒有配得上它要承擔的責任。

一個個人的 side project,安全做到基本就夠了。但如果你做的是一個會保管別人 API Key 的平台、會處理使用者付款資訊的服務、會接觸敏感資料的應用 — 那你需要的安全等級就完全不同。

AI 不會主動幫你判斷「現在這個場景應該用什麼等級的安全防護」,因為這個判斷的輸入不是技術知識,而是你對「自己正在蓋什麼、要承擔什麼責任」的理解。

你不問,它就不做。

API Key 就是你的信用卡號

不管事件的原因在哪,身為 AI 工具的使用者,有些事是現在就該做的基本自保:

設好消費上限、開啟帳單警報。API Key 外洩之後,不是產生一把新 Key 就好,舊的一定要 revoke — 新 Key 不會讓舊 Key 自動失效。正式環境和測試環境用不同的憑證。

這些不難,但很多人在出事之前就是沒做。


這次 Zeabur 的事件,某種程度上是 AI 時代的一面鏡子 — 它照出的不只是一個平台的安全問題,也照出了整個生態裡,從個人開發者到平台到社群,對安全認知的各種落差。

希望這面鏡子不用照太多次。不然大家的 API 帳單都快撐不住了~


參考資訊:

訂閱
通知
0 則評論