OpenCode 密钥泄露:先吊销密钥,再查账单
OpenCode 承认旧系统被入侵,1.4% 用户存在工作区里的 API 密钥可能外泄,已有人被扣 400 美元。这篇给一份两小时内能做完的止损清单,也说清哪类人其实不用慌。
很多人对 API 密钥的处理方式,和对待一张快递单差不多:复制一次,粘到某个地方,然后彻底忘掉。
问题在于,它更像一张不设密码的信用卡。谁捡到,谁就能刷,账单最后寄到你手上。
10 月 18 日早上,一家 AI 编程工具的披露让这件事变得具体:有人的密钥真的被刷了,四百美元。
一、发生了什么
按 OpenCode 自己的说法,事情出在当地时间 10 月 16 日晚上。10 月 17 日上午,他们给所有受影响用户发了邮件。北京时间 10 月 18 日早上,IT之家 报道了这件事。
把官方口径拆开看,有四个关键点:
- 范围:影响 1.4% 的 OpenCode Console 用户。官方没有公布对应的绝对人数,所以"1.4%"到底是多少人,目前算不出来。
- 对象:只有"关联了外部服务提供商"的那部分用户受影响。如果你从没在工具里填过别家的密钥,理论上不在其中。
- 原因:有人未经授权进入了一个正在走停用流程的旧系统。这句来自用户晒出的通知邮件,不是正式的事故报告。
- 后果:存放在工作区里的密钥,比如 OpenAI、Anthropic 的,可能已经泄露。拿到密钥的人可以用你的名义调用模型,费用记在你账上。
损失不是假设。报道里提到几位用户的实际情况:一位的 Anthropic 账户出现 400 美元未授权扣费,按报道汇率约 2679 元;另一位在谷歌服务上花了约 200 欧元,约 1505 元,项目还因为"过度滥用"被暂停。还有人先收到了 OpenAI 或 Anthropic 的用量提醒,之后才收到 OpenCode 的邮件——也就是说,账单比通知来得更早。
OpenCode 表示正在和 Anthropic、OpenAI、谷歌一起处理,细节暂时不公开。这意味着赔付方案、漏洞细节、是否会再次发生,现在都还没有答案。
二、跟你有什么关系
只在官方 App 里聊天的人:这件事和你无关。你在对话框里打字,不会产生可被复制的 API 密钥,也没有按量计费的账单。
把密钥粘进过第三方工具、插件、中转站的人:你是这次的高危人群。风险不在于"账号被盗",而在于"账单被刷"——攻击者不需要登录你的账户,只要拿着密钥发请求,钱就出去了。
自己搭工作流的小团队:麻烦更大。一个密钥往往同时躺在脚本、定时任务、CI 配置、共享文档和某台同事的笔记本里。泄露一处,等于全部暴露,而你又很难说清是哪一处先漏的。
这里有个容易被忽略的差别:普通账号被盗,平台通常会给你异地登录提醒;API 密钥被滥用,不会有任何登录记录可查。你唯一能看到的信号,是用量和账单。
三、今天就能做的五步
读到这儿,可以顺路看 印度也报告失控智能体:这次是多家一起 印度 CERT-In 披露,多家模型提供商的智能体在测试中进入印度机构系统,读到个人信息和商业机密。入口不是漏洞,是没人管的凭据和过宽的云权限。顺序别调,先止损再排查。
- 查邮件,包括垃圾箱:搜 "OpenCode"。官方说没收到邮件就没受影响,但邮件可能被拦、也可能发到了你早就不用的邮箱。别把一封邮件当成安全证明。
- 先去三家后台看用量,不要先看 OpenCode:OpenAI 的 Usage、Anthropic 控制台的用量页、Google Cloud 的账单页。按天看,重点找 10 月 16 日之后的异常尖峰,尤其是深夜时段的调用。
- 吊销旧密钥,重新生成:在各自后台 revoke,不是在工具里删掉那一行。新密钥只放一个地方——系统环境变量或密钥管理服务。别写进代码,别贴进聊天窗口,别为了省事发到群里。
- 给新密钥设上限:OpenAI 和 Anthropic 都支持设置项目级或月度预算。这一步比换密钥更值钱:它把"被刷爆"变成"被刷停"。没有限额的密钥,等于一张没有额度的信用卡。
- 清理残留:本地
.env、shell 配置文件、CI 的 secrets、在线文档、演示截图、录屏。很多人换了新密钥,旧的那一串还躺在半年前的项目里,等于没换。
如果账单已经出现异常,先截图保存时间和金额,向模型平台提交申诉并说明是第三方泄露,再同步给 OpenCode。能不能退,取决于平台政策,没有默认答案。
顺带一句:这类事故的入口常常不是密钥本身,而是你让某个工具"随便读网页"。原理可以看 提示词注入:为什么不能让 AI 随便读网页,思路是相通的——凡是能把外部内容带进你工作区的东西,都是潜在入口。
四、三个别信的说法
"没收到邮件就是没事。" 这是官方给的口径,可以当参考,不能当结论。邮件会进垃圾箱,也可能发到了旧邮箱。真正能自证的是用量曲线,不是收件箱。
"密钥泄露最多被盗刷几块钱。" 这次的报道里,已经有 400 美元和 200 欧元的实例。密钥没有额度上限时,攻击者几小时内就能把你的余额跑完,而且用的是你自己的配额。
"改个密码就好了。" 泄露的是密钥,不是登录密码。改密码不会让旧密钥失效,必须显式吊销。很多人做完这一步就以为安全了,实际上那张"信用卡"还在别人手上。
五、一句话结论
API 密钥要按信用卡管:能吊销、能限额、只放一个地方。这次事件里最该记住的不是 1.4%,而是"账单比通知来得早"。
延伸阅读:
信息来源
- IT之家《OpenCode 遭攻击:部分用户 OpenAI、Anthropic 等 API 密钥外泄》,2026-10-18:https://www.ithome.com/1/014/434.htm
本文基于公开信息整理,受影响范围、处理进展与赔付方案以 OpenCode 官方公告为准。
每周一封,只发新教程和可复制模板。不发广告,随时退订。