大叔自由人
一把钥匙与一次点头:OpenCode 爆雷背后,AI 编程工具真正的攻击面
技术分享

一把钥匙与一次点头:OpenCode 爆雷背后,AI 编程工具真正的攻击面

一觉醒来账单爆炸,这种恐怖故事本周真实上演了。先是零星几个程序员在网上晒离谱的 API 账单——睡了一觉,后台 Token 调用量垂直拉升,余额直接归零,还触发了自动充值。有人 Anthropic 账号被刷走 400 美元,更惨的一位一夜 1700 多美元,还有人的 Google Cloud 账单莫名破千。

出事的是 OpenCode——GitHub 上二十多万 Star 的开源 AI 编程工具。官方很快实锤:约 1.4% 的 Console 用户受影响,他们保存在工作区里的 OpenAI、Claude、Gemini「御三家」API Key 可能已经暴露。Anthropic 负责人 Lydia Hallie 随即回应:疑似泄露的 Claude API 密钥已全部强制注销。最讽刺的是,连 OpenCode 联合创始人 Dax Raad 的个人账号都没能幸免,他留下一句话:「这波 AI 自动化黑客攻击,真是打开了一个全新的世界。」

案情:一个还没来得及下线的老系统

漏洞源头说出来让人无语:被攻破的不是什么核心系统,而是一套**「正准备下线的旧版老系统」**——还没关停,先被偷了家。OpenCode Console 的卖点是让开发者在一个云端控制台里集中管理多家模型的调用,少配几遍密钥;代价是平台替你保管了所有钥匙,云端一旦失守,就是一锅端。

安全公司 StepSecurity 事后给出的排查建议很能说明问题:不仅查模型供应商账户、撤销密钥、核对调用记录,企业用户还要确认其他开发环境有没有复用同一套凭证——钥匙串上挂着几把锁,一把失守把把遭殃。

更冷的细节:你的 Key 在替别人「炼丹」

如果只是盗刷转卖,这还只是一起普通的安全事故。真正的冷点在于黑客的用法:他们拿这些 Key 猛刷顶级模型,是为了把输出攒成训练数据,蒸馏自己的模型。

把小模型喂聪明,最贵的燃料就是海量高质量的思维链和代码生成数据。直接买 OpenAI 和 Anthropic 的 API 来生成这些数据,动辄数百万甚至上千万美元,而且各大厂的服务条款明令禁止用自家输出训练竞品,后台还布着风控。于是攻击者换了个思路:**攻破一个第三方聚合平台,一次拿到成百上千个真实开发者的 Key,每一分消耗都记在受害者账上。**这就是「大规模蒸馏攻击」的经济账——成本转嫁,效率最高。有行业观察者说得直白:使用中小型第三方 AI 服务商,正变得前所未有地危险。

第二道软肋:攻击「人类点头的那一瞬间」

两道软肋

同一个星期,新加坡国立大学团队的论文《From Approval to Abuse》(arXiv: 2610.22987)从另一头捅破了窗户纸。编程智能体为了缓解「审批疲劳」会鼓励用户批准 allow-rule(允许规则),而不可信的仓库内容可以诱导智能体请求一条「看似合理、实则过宽」的规则——在生产平台上的诱导成功率高达 58%。规则一旦被点头,生命周期远长于当前任务,未来的恶意操作就能静默通过。

同一天,Claude Code 发布 2.1.304,加入 decider: person(强制人工审批)等 5 项权限收紧机制——厂商开始补这个环节,说明论文戳中的是行业通病。

把两件事叠起来看,结论很清楚:**AI 编程工具的攻击面不在模型,在人间。**模型本身很难被打穿,但两样东西很软——一是凭证托管(你把钥匙交给了谁),二是授权习惯(你在为什么点头)。攻击者永远打最便宜的环节,而这个环节从来是人。别忘了 OpenCode 自己在 GitHub 安全政策里就写着:Agent 可以执行终端命令、操作文件、访问网络,默认没有真正的沙箱隔离,有隔离需求的用户建议自己套 Docker 或虚拟机。

自查五步

收到预警邮件或纯当防身的,按这个顺序来:

  1. 到签发密钥的官方平台吊销并重配 Key——改登录密码不等于撤销 Key,只在工具里删配置、把本机程序关掉,都无法让已经流出的凭据失效;
  2. 核对近期用量与账单,保留异常调用记录、消费时间和通知,向服务商申请调查和费用处理;
  3. 排查其他环境是否复用了同一凭证(包括公司同事的配置);
  4. 给依赖旧密钥的应用同步换钥,别让正常业务跟着一起断;
  5. 顺手审计一遍你的 allow-rule——过宽的先收掉,宁可多点几次确认。

再往前一步的防御习惯:Key 按环境隔离、每个 Key 设消费限额、敏感项目跑在容器里。这三件事的成本,都远低于一张 1700 美元的账单。

写在最后

给学生上实训课的第一课,过去是装环境写 hello world,现在得改成管好你的 Key——这一代开发者的第一课已经是密钥卫生了。我们自己在给学生和单位开实验环境时,如今一律密钥按人隔离、限额封顶,出事也烧不到隔壁。


参考来源