我昨晚凌晨一點在手機上閱讀了 Trend Micro 的報告,從那之後就無法停止思考這件事。整個時間線簡直荒謬。
2026 年 3 月。攻擊者利用 Context.ai 被入侵的基礎設施,滲透到一位 Vercel 工程師的 Google Workspace 帳戶。這位 Vercel 工程師使用其企業憑證註冊了 Context.ai 的「AI Office Suite」,並授予了廣泛的 OAuth 權限。一位 Vercel 工程師因為入門流程要求而將第三方 AI 工具存取權限授予了其公司 Google 帳戶,然後就點擊通過了。
4 月 19 日。Guillermo Rauch 證實了所有細節。非敏感環境變數已被存取和洩漏。一位名為 ShinyHunters 的威脅行為者正以 200 萬美元的價格出售這些數據,儘管實際的 ShinyHunters 組織聲稱他們並未參與。Vercel 在同一天發布了其事件公告。
好的,我需要更正我最初閱讀時犯的一個錯誤。我的第一反應是「他們將環境變數以純文本形式儲存嗎?」,但實際上並非如此。所有 Vercel 環境變數在靜態時都已加密。「敏感」複選框並不會切換加密的開關。它改變的是解密的方式。
非敏感變數可以由儀表板後端解密。您可以在 UI 中查看、編輯、複製它們。敏感變數只能在建置時解密。僅寫入。一旦設定,您就無法再次看到其值,只有應用程式可以在執行階段讀取它們。
因此,當攻擊者進入 Vercel 的內部系統時,他們可以存取解密非敏感變數的後端。敏感變數似乎是安全的。Vercel 表示他們沒有證據顯示敏感變數被存取。
這實際上比簡單的「純文本」疏忽更糟糕,因為它更隱蔽。加密是存在的。基礎設施也是存在的。但預設值被設定為保護性較弱的選項,而大多數開發者從未更改過,因為為什麼要更改呢?您看到一個文字欄位,貼上您的 API 金鑰,然後點擊儲存。沒有人會去尋找一個會改變環境變數解密範圍的複選框。您只會假設平台會處理好這一切。
Vercel 此後已將預設值更改為敏感。這等於承認舊的預設值是錯誤的。但在此變更之前建立的每一個環境變數仍然處於保護性較弱的狀態,除非有人手動逐一切換。
我已經觀察 AI 工具領域兩年了,有一個模式一直困擾著我。每一個 AI 生產力工具都需要廣泛的存取權限才能運作。這就是重點。它們需要您的文件、您的電子郵件、您的程式碼、您的工作空間。其價值主張就是這種存取權限。
您導入工作流程的每一個 AI 工具都是攻擊面倍增器。Context.ai 並非全面的驗證初始化加入以查看!。它是一家 Y Combinator 公司。企業客戶。據稱通過 SOC 2 合規。而一名員工在工作機上下載遊戲外掛,卻將整個事情變成了一個供應鏈武器。
閱讀這篇文章後,我審查了我去年親自授權的大約十幾個 AI 工具。其中九個擁有 Google Workspace OAuth 權限,包括讀取所有電子郵件和存取所有雲端硬碟檔案。九個。我授權了所有這些工具,而沒有閱讀權限,因為入門流程要求這樣做,而且我當時很趕時間。
實際上,我開始計算我總共授權了多少 OAuth 應用程式,數到 23 個就停下來了,因為這太令人沮喪了。我甚至不記得其中一半的功能是什麼。一個我在一月份只用過兩次的會議摘要工具仍然擁有完整的電子郵件存取權限。這是我個人的問題,但也是所有 OAuth 對話框的問題,因為它們都非常糟糕。
Vercel 的事件頁面稱「有限的客戶憑證」被洩露。BleepingComputer 稱攻擊者正在積極出售數據。加密貨幣開發者們正在焦頭爛額,因為錢包基礎設施通過 Vercel 環境變數運行。眼前的損害已經夠嚴重了。
但讓我不斷回想的是信任成本。現在 Vercel 上的每一個開發者都必須檢查他們設定過的每一個環境變數,找出哪些沒有標記為敏感,輪換每一個憑證,並決定他們是否仍然信任這個平台。這涉及到數十萬個專案。有些人報告說,僅僅是輪換一個專案的所有內容就花了他們 6 個小時以上。
將這個數字乘以活躍的 Vercel 使用者群體,您就會發現本週有數百萬個開發者小時花費在輪換憑證上。Vercel 的任何人都不希望現在有人做這樣的計算。
老實說?對大多數人來說,可能不會改變太多。我已經看過這種模式太多次了。發生了洩漏。寫了文章。金鑰被輪換大約一週。然後每個人都回到將密鑰貼到平台儀表板的文字欄位,因為這很方便,而替代方案需要實際的工作。
AWS Secrets Manager。HashiCorp Vault。SOPS + age。自託管基礎設施。真實的團隊使用的真實選項。所有這些都比文字欄位需要更多的設定。知道什麼是安全的和做到什麼是安全之間的差距完全由便利性來衡量。
我開始研究有多少 YC 公司發生了與...有關的安全事件,實際上那是另一個需要另發文章的兔子洞。
我唯一正在做出的改變是我稱之為「12 倍審計」。對於我授權的每一個 AI 工具,我花費的時間是過去點擊「允許」的 12 倍,用於實際閱讀它請求的內容。由於我之前大約只花費十秒鐘,現在大約需要兩分鐘。但兩分鐘本可以發現導致整個鏈條成為可能的確切權限模式。十秒鐘則不行。
一個 Roblox 遊戲外掛擊垮了網際網路上最大的部署平台之一。不是零日漏洞。不是國家級攻擊。一個 Context.ai 員工可能為他們的孩子下載的遊戲外掛。攻擊面並不複雜。它很方便。而便利性是整個 AI 工具行業實際銷售的唯一產品。
權限模型從設計上就是有缺陷的。這不是一個驚人的觀點,這只是 OAuth 的運作方式,當每個 AI 工具都需要「全部允許」才能運作時。
閱讀這篇文章後,我檢查了我的 Google 帳戶。撤銷了 7 個應用程式。其中三個擁有完整的電子郵件讀取權限,而我甚至不記得安裝過它們。其中一個是我在一月份只用過兩次的會議摘要工具。仍然擁有對所有內容的存取權限。
Google 需要停止將「此應用程式可以讀取您發送過的每一封電子郵件」藏在一個沒有人閱讀的可滾動權限列表中。
我剛檢查了我的 Vercel 儀表板。有 14 個環境變數未標記為敏感。包括我的 Stripe 秘密金鑰。
我從十月就設定了這些,從未想過那個複選框。為什麼我會想呢?我以為像這樣大的平台預設會加密所有內容。顯然不是。
現在我坐在這裡試圖弄清楚是應該輪換所有內容,還是這次的事件是推動我最終遷移的動力。問題是我的整個 CI/CD 都通過 Vercel 運行,而遷移感覺像是一個週末項目,實際上需要兩週時間。有人知道「敏感」標誌是否真的會在靜態時加密,還是只是在 UI 中隱藏值?Vercel 的文件對此並不清楚。
這整件事讓我重新思考我的設定,而我不喜歡我的想法的走向。
我是一個獨立開發者。我使用 Vercel 是因為在我的規模下它是免費的,而且開發者體驗很好。每個人都在說在 VPS 上使用 Docker 和密碼管理進行自託管,但我只有一個人。令人沮喪的計算是,Vercel 即使有其缺點,可能仍然比我自己設定的任何東西在一個 5 美元的伺服器上更安全。他們有 Mandiant 在電話裡,我只有一個祈禱。
在 2026 年,有誰是獨立開發者並且正在自託管而沒有發瘋的嗎?
您可以嘗試像 Coolify 這樣的部署工具來進行自託管和管理部署。
我正在一個大約 400 歐元的 VPS 上進行自託管,它有 32 GB 記憶體、8 個 CPU 核心和 400 GB 儲存空間(預付了兩年)。我只有兩個小型專案在 Vercel 上,我現在要將它們遷移。要妥善保護安全並不像 Vercel 剛剛降低了比較標準時那麼難。