Vercel 这次不是页面宕机,也不是构建慢了几分钟,而是更麻烦的事:它承认内部系统被黑,部分客户数据被拿走,攻击入口来自 Context AI 旗下一款应用与员工谷歌企业账号的 OAuth 连接。黑客随后接管了这名员工账号,进一步进入 Vercel 内部系统,还碰到了“未加密的凭证”。
核心信息很简单。受影响的不是 Next.js 和 Turbopack 代码库本身,而是部分客户的应用数据和密钥。Vercel 已通知相关客户,CEO Guillermo Rauch 也建议轮换那些在部署中被标记为“non-sensitive”的密钥。问题就在这句轻描淡写里:如果都已经要轮换了,它对攻击者显然就不是“不敏感”。
Vercel 说清了入口,没说清代价
按 Vercel 的说法,攻击链条是这样的:员工下载了 Context AI 的应用,连上公司 Google 账号;黑客利用这层 OAuth 授权接管账号,再横向进入 Vercel 内部系统。Context AI 也承认,3 月其 Office Suite 消费者应用发生过入侵,攻击者“很可能”窃取了一部分用户的 OAuth 令牌。
眼下能确认的事实有三点:
- Vercel 客户数据确实被拿走了;
- 黑客声称出售 API key、源代码和数据库数据;
- 可能受影响的不只 Vercel,自身通报里就提到“跨很多组织的数百名用户”。
不能确认的也很关键:到底有多少客户中招、被盗数据覆盖到什么层级、攻击者是否就是挂名 ShinyHunters 的那批人。ShinyHunters 已向外媒否认参与。换句话说,锅是谁背,暂时还乱;但火已经烧到用户身上,这一点很实在。
真正的问题,是 OAuth 被行业当成了“默认信任”
我更在意的不是某个员工装了哪款应用,而是这条行业惯性:SaaS 和 AI 工具为了增长,最爱卖“几秒接入 Google/Slack/GitHub/Notion”,至于这条授权链之后能摸到多少企业资产,往往写在没人细看的权限页面里。古话说“祸起萧墙”,今天很多安全事故,起点不是防火墙被正面打穿,而是你自己把门卡递了出去。
这也是近几个月供应链攻击越来越难看的原因。它不像传统入侵那样硬碰硬,而是专挑软件关系网最松、最方便、最少人复核的地方下手。此前云厂商、数据库服务商连续出事,路径都差不多:先拿下一家边缘工具,再顺着身份、令牌、集成关系往核心资产里钻。技术上不一定最炫,商业上却最划算。用一句老话,天下熙熙,皆为利来。黑客也会算 ROI。
Vercel 这类公司尤其尴尬。它服务的大量是开发团队、初创公司、线上业务,客户常把部署、环境变量、API key、预览环境、数据库连接都绑在一套流畅工具链里。平时这叫开发体验;出事时,这就变成了单点蔓延器。对开发团队最现实的影响不是“感到震惊”,而是今天就得做几件脏活:轮换密钥、审计 OAuth 应用、检查日志、确认源码和数据库是否外流,必要时还得重签第三方访问策略。采购和安全负责人也会重新问一句:那些方便接入的 AI 小工具,到底该不该进企业账号体系?
Context AI 的沉默,比漏洞本身更难看
还有一层不太体面。Context AI 说 3 月就发生过入侵,当时只通知了一名客户;现在看,影响面很可能更大。其创始人 Henry Scott-Green 在团队被 OpenAI acqui-hire 后已加入 OpenAI,但截至报道时未回应置评请求。这里最不好看的,不是一家创业公司被打,而是出事后披露是否过窄、过慢、过于“先按最小影响口径处理”。
这类公关套路,历史上太常见了。铁路时代出了事故,先说个别车厢;互联网时代泄露数据,先说少量账户;AI 工具时代丢了令牌,先说单一客户。形式在变,遮羞布没变。凯恩斯说过一句常被拿来形容市场的话:长期看我们都死了。放到安全披露上也成立——你不能指望靠拖延,把已经扩散的风险拖没。
接下来最该盯两个变量。一个是 Vercel 是否给出更具体的受影响范围和数据类型;另一个是 Context AI 当初为什么没有更广泛披露 OAuth token 风险。如果这两个问题继续含糊,那这就不只是一次安全事件,而是一次治理失职。
