深蓝色背景上的抽象技术插图:左侧是一台已退役的服务器机柜,处于半拆解状态,一缕由钥匙形状字形组成的细长琥珀色丝线从机柜外壳的缝隙中逸出,飘向远处一排模型端点;其中少数钥匙字形亮着,其余则已暗淡。画面中不出现文字、人物或组织标志。OrcaRouter 标志合成在右下角。
AI Safety Incidents

OpenCode 已停用的控制台泄露了用户的 AI 提供商密钥——而且部分账单已经被花掉了

作者

Gideon Frost

发布日期

最新模型 · 20查看全部模型 →
基准测试:Artificial Analysis · 每日更新
返回全部文章

由 Anomaly(前身为 SST)开发的开源编码代理 OpenCode 于 2026 年 10 月 17 日披露,一个未经授权的第三方曾访问其正在停用的旧版 Console 系统,并且存储在某些用户工作区中的第三方 AI 提供商密钥“可能已经泄露”——其中包括 OpenAI、Anthropic 和 Google 的凭据。OpenCode 表示,此次泄露影响了约 1.4% 的 Console 用户,具体是“一部分已关联外部提供商的用户”,并且已向每个受影响账户发送了电子邮件。该公司将此次事件描述为“大规模蒸馏攻击。”不到一天,具名用户就向记者表示这些密钥已被使用:Dealroom 报道称,281 美元被记在一名用户的 OpenAI 密钥上,另有168 美元记在同一用户的 Anthropic 密钥上,超过 700 美元记在另一个账户上,另有1,700 美元记在第三个账户上。

那道鸿沟——一边是公司关于一个百分比的声明,另一边是拿着发票的用户——正是这份记录的全部故事。披露很短,技术层面的说明缺失,而财务层面的说法来自那些被开票的人。

OpenCode 自己是怎么说的

该公司的公开帖文由三句话组成。根据 Hacker News 和 OfficeChai 引用的文本,帖文写道:“昨晚我们发生了一起安全泄露事件,与一次大规模蒸馏攻击有关,影响了 1.4% 的 OpenCode Console 用户。”“我们今天上午已通过电子邮件通知了所有受影响用户。如果你没有收到电子邮件,就说明你没有受到影响;受影响的是那些关联了外部提供商的用户子集。”

OpenCode 团队发布、并在 Hacker News 上转载的一则稍长的社区通知,按公司目前所描述的范围补充了这一机制:“我们发现对一个正在退役的旧系统存在未经授权的访问。保存在你工作区中的第三方提供商密钥(例如 OpenAI、Anthropic)可能已泄露。请通过相关提供商的仪表板撤销并替换这些密钥,更新任何使用这些密钥的应用程序,并检查近期使用情况是否有异常活动。对此我们深表歉意,后续如有任何更新我们将跟进说明。”

HTML card titled 'What OpenCode disclosed, and when', subtitled 'Statements dated 17 and 18 October 2026, quoted as reported'. The left column, headed 'The disclosure', gives the three-sentence public post of 17 October 2026 verbatim, and the longer community notice naming unauthorized access to a legacy system being decommissioned and warning that third-party provider keys saved in workspaces may have been exposed. The right column, headed 'What the company did not say', lists that no root cause, entry point or dwell time was published; no count of affected accounts behind the 1.4 percent figure; no total financial loss; no reimbursement policy; no evidence supporting the distillation framing; and no post-mortem, as of 19 October 2026. A footer reads 'Sources: OpenCode posts of 17 October 2026 as quoted by Hacker News, OfficeChai, CyberSecurityNews and Step Security.'

公司没有公布的内容与它公布的内容同样重要。截至2026年10月19日,仍然没有根本原因,没有说明是如何访问到遗留系统的,没有说明入侵者访问了多长时间,没有给出1.4%这一数字背后受影响账户的绝对数量,没有总损失数字,没有报销政策,也没有事后复盘。OpenCode当时表示:“事件仍在进行中,因此我们目前无法分享更多细节。”CyberSecurityNews指出了同样的缺失,并补充说,OpenCode没有提供任何技术证据来将泄露的凭据与蒸馏活动联系起来。

时间线,以及各报道出现分歧之处

OpenCode 的帖子日期为 2026年10月17日,并将此次入侵称为发生在“昨晚”,这意味着入侵发生在10月16日至17日夜间。该公司声明在 Hacker News 上的提交时间戳为10月17日18:01 UTC。两天后,联合创始人 Dax Raad表示,攻击者“过去48小时一直在不停地试图攻击我们的系统”,并且“我的个人账户现在也正遭到攻击”,他称这是一个“由 AI 驱动的黑客攻击的全新世界”(OfficeChai)。

通知时间点是公开报道唯一存在分歧的地方。OpenCode 表示已于“今天上午”通知受影响用户。Startup Fortune 报道称,Anomaly 于10月17日通过电子邮件通知了受影响用户,但指出消息来源对于通知是在17日上午还是18日上午发出存在分歧;OfficeChai 将 OpenCode 和 Raad 的帖子都定在10月17日,却把社区声明和电子邮件定在10月18日上午。Startup Fortune 还报道称,用户被告知要查看可追溯至10月17日的账单和使用日志——这个截止日期很重要,因为一些用户报告在首次通知到达之前出现了无法解释的收费。

存储了什么,以及它为何重要

此次暴露仅限于 OpenCode Console,也就是托管仪表板,账户、订阅和关联的提供商凭据都存放在那里——而不是单独的开源 CLI。Dealroom 报道称,Console 将用户的提供商密钥存储在 OpenCode 的服务器上,并且 OpenCode 支持来自 75 多家提供商的模型,由用户提供自己的私有 API 密钥。正是这种设计,使得对一个内部系统的入侵,变成了对同时存放在三家不同 AI 实验室的凭据的入侵。

Abstract illustration on a dark navy field: a cluster of small amber key glyphs passes through a translucent barrier into a fan of thin cyan request lines aimed at three distinct geometric model endpoints on the right; each endpoint shows a faint rising cost bar. No text, people or organisation logos appear. The OrcaRouter logo is composited in the bottom-right corner.

OpenCode 点名 O​penAI、A​nthropic 和 G​oogle 为其密钥在范围内的提供商,并表示正与这三家合作“以修复该问题”。迄今为止报道的唯一提供商侧行动来自二手消息:Dealroom 报道称,A​nthropic 表示已撤销受影响的 C​laude API 密钥。在为本文查阅的报道中,O​penAI 和 G​oogle 均未被直接引述,也没有任何提供商发布自己的声明。

用户称已收到的账单

财务损失并非来自 OpenCode 的披露——该公司未公布任何损失数字——而是来自接受记者采访的个别用户。Dealroom 于 10 月 18 日发布的报道点名了三个人:

• Colin Parsons,用该媒体的话说,其 OpenAI 密钥被“狂刷”了281 美元,而其 Anthropic 密钥被扣了168 美元。

• 普雷斯顿·泽勒,其报告损失为$1,700。

• Francisco Giancarelli,他在停止使用前产生了超过 700 美元的 OpenAI 使用费。

HTML card titled 'The reported charges, and the gaps around them', subtitled 'Figures as reported by Dealroom on 18 October 2026; OpenCode has published no loss total'. A three-row list gives Colin Parsons at 281 US dollars on an OpenAI key plus 168 US dollars on an Anthropic key, Preston Zeller at 1,700 US dollars, and Francisco Giancarelli at more than 700 US dollars of OpenAI usage before he stopped it. A lower panel headed 'Not disclosed by OpenCode' lists the number of accounts behind the 1.4 percent figure, the total loss, whether victims will be reimbursed, whether the keys were used for anything other than paid inference, and what the queries were or produced; beneath it, a note records that Cryptobriefing described bills 'climbing into the hundreds of dollars' and said the source material does not say how unauthorized charges will be handled. A footer reads 'Individual figures are user-reported and relayed by Dealroom, not confirmed by OpenCode, OpenAI, Anthropic or Google.'

Cryptobriefing 未点名具体个人,其称账单金额“攀升至数百美元”,并明确指出原始材料并未说明未经授权的查询所产生的费用将如何处理。两天过去,情况依然如此:尚未公布任何退款承诺。

还有两类伤害被指称但未得到证实。《Startup Fortune》报道称,一名用户表示 G​oogle 在该事件后暂停了其 G​oogle Cloud 项目,另一名用户则表示 O​penAI 因与该事件相关的条款违规删除了其账户——该媒体称这些是 X 上的个人帖子,无法核实。另外,OpenCode 自己的 GitHub 问题跟踪器上载有用户提交的报告,这些报告与公司“如果你没有收到邮件,你就没有受到影响”的说法难以吻合。10月18日提交的 Issue #56833 来自一名订阅者,其称自己的工作区从未保存过 O​penAI、A​nthropic 或 G​oogle 密钥——只有一个 OpenCode Go 密钥——但其密钥却在未设置到期日期的情况下被撤销,并且该用户要求一项尚未公布的补偿政策。同日提交的 Issue #56703 报告称,有工作区自10月17日起显示“Workspace access restricted”,该用户表示自己没有收到任何泄露通知邮件。这些是未经确认的用户报告,而非公司声明,但它们表明补救措施波及了收到邮件的那部分之外的账户。

“蒸馏攻击”:这个短语在起什么作用

OpenCode 的说法是一种关于动机的主张,而不是对漏洞的描述,并且该公司没有发布任何内容来支持这一说法。Cryptobriefing 将表面目的描述为收集高质量的模型输出,这些输出可用于训练竞争模型,而无需为算力或原创研究付费,并指出 A​nthropic 曾在 2026 年 2 月描述过类似的蒸馏方法。这是对意图的一种合理重构。它并不能证明是谁做了这件事,也不能证明他们运行了什么。

这一说法立即引发了研究者和用户的怀疑。《Startup Fortune》援引研究者Nathan Lambert的话,询问“蒸馏”是指训练下游模型,“还是某种其他古怪可疑的手段,用来使用非法获取的令牌”,并援引一位用户的反驳:“客户密钥遭到泄露。推测是用于蒸馏?这不是蒸馏攻击。”在 Hacker News 上,评论者提出了同样的观点——这种说法来自一家公司,而该公司的供应商全年都在主张蒸馏是一种生存性商业威胁,并且没有公布任何查询日志、流量分析或归因。对于日后查阅记录的人来说,这一区别很重要:凭证泄露已得到确认;其背后的目的则只是被断言。

披露之后发生了什么变化?

OpenCode 对受影响用户的指示是:通过 OpenAI、Anthropic 和 Google 的控制台撤销并替换所有已关联的提供商密钥,更新所有使用这些密钥的应用程序,并检查提供商的使用情况和账单是否存在异常活动。Startup Fortune 报道了通知中的另一条建议:不要使用泄露通知邮件中的链接,而应直接访问提供商的控制台。它还报道称,用户被告知要检查可追溯至 10 月 17 日的账单日志,并设置支出限额,以限制密钥被盗带来的风险敞口。

在 Console 侧,可见的补救措施一直是撤销和限制,而非披露。用户报告密钥从账户中消失、工作区被锁定;OpenCode 尚未公布其在旧系统中更改了什么、该系统现在是否已完全关闭,或者它是如何检测到此次访问的。安全厂商 S​tep Security 在一天内发布了响应指南——包括开发人员机器上记录关联提供商的本地凭据文件路径——同时指出,其工具可以识别 CLI 安装,但无法确定开发人员是否拥有 Console 账户,也无法确定哪些提供商与其关联。这一限制本身就是一项发现:无法从客户端侧重建影响范围。

哪些是已确立的,哪些不是

根据 OpenCode 自身的声明以及多份独立报告,已确认:一个未经授权的第三方进入了旧版 Console 系统;OpenAI、Anthropic 和 Google 的第三方提供商密钥可能已泄露;约 1.4% 的 Console 用户(即已关联外部提供商的那部分用户)已收到电子邮件通知;该公司正在与这三家提供商协调;据 Dealroom 报道,Anthropic 已撤销受影响的 Claude 密钥;并且有具名用户报告了数百至数千美元不等的未经授权扣费。

尚未确定:1.4%代表多少个账户;入侵者是如何进入的;其拥有访问权限持续了多久;所有泄露的密钥是否都被使用过;这些查询的目的是什么;除提供商密钥外是否还有其他数据被窃取;总损失是多少;以及是否有人会获得赔偿。OpenCode尚未发布事后分析报告,其称该事件“仍在进行中”的声明也尚未被正式撤回。

这里的佐证范围广泛,但在一个特定方面并不深入。在48小时内,该披露被 CyberSecurityNews、OfficeChai、Startup Fortune、Notebookcheck、Dealroom、Cryptobriefing、The420.in、TOKENPOST、FourWeekMBA、BigGo Finance 和 S​tep Security 报道,并且OECD.AI Incidents and Hazards Monitor将该事件列为发生于2026年10月17日,将危害归类为经济/财产类,并将受影响的 AI 原则归类为鲁棒性与数字安全。这佐证的是:该披露确实发生过,其措辞与报道一致,并且财务损害得到了他人的认真对待。它并未独立核实 OpenCode 对此次入侵的内部说法,因为似乎没有任何媒体机构获得了这一说法。记录中既没有监管机构的通知,也没有来自 O​penAI 或 G​oogle 的供应商公告。

档案如何将其归档

档案将此记录为一起 事件——一个已实际发生的 AI 相关事件,而非预测——严重程度为 高,置信度评级为 A,real_harm 记录为 true,且 无争议。类型标签为 CRED 和 INFRA:一个 agent 平台基础设施的凭据泄露。无争议标志针对的是事件本身,而不是蒸馏框架;档案不将 OpenCode 的动机主张视为已定结论,读者也不应如此。

有两件事使这份记录除了其美元数字之外仍值得保留。第一是架构层面的:一个代理平台将客户通往三家相互竞争实验室的密钥存储在自己的服务器上,把原本会由每个客户各自承担的风险集中起来,而停用一套系统并不会停用其中的凭据。第二是证据层面的:公司自己的说法是一个百分比、一套遗留系统和一个动机,而发票由用户提供。这份记录比事件严重程度所要求的更为单薄,而这仍是大多数此类披露所呈现的形态。

本记录与以下档案中其他有记录的智能体事件并列:AI 事件档案,其中每条记录都带有自己的来源、严重程度、置信度等级和争议标记。