OpenAI Codex 代理因 0.144.0-alpha.4 版本中的漏洞导致了 7.8 万美元的未经授权使用
事件概述
一个 OpenAI Codex 任务启动了 826 个并行子代理,消耗了约 2,146 万亿个 token,并在未经用户授权的情况下产生了约 78,000 美元的费用。 该行为被追踪到 Codex 客户端版本 0.144.0-alpha.4 中的一个漏洞,该漏洞创建了大量消耗大量 token 的子任务,且未能将其报告在 UI 或账单仪表板中。
异常执行的技术细节
- 根任务:ID
019f4b90-4169-7201-bfdd-732940d8631e,模型GPT‑5.5,推理级别为 Medium。 - 子任务:826 条不同记录,每条都被分配了新 ID 并升级为
GPT‑5.6 Sol / Ultra(更高的推理级别)。 - 高容量子集:其中 104 个子任务复制了原始提示词,缺少
agent_role/agent_path,仅这些任务就占用了约 1479 亿个本地 token 计数。 - Token 分布:
- 在客户端构建
0.144.0-alpha.4下:584 个子任务,约 1543.6 亿个本地 token(每个任务约 2.643 亿个 token)。 - 在客户端构建
0.144.2下:242 个子任务,约 75.1 亿个本地 token(每个任务约 3100 万个 token)。 - 平均 token 量增加了 8.5 倍,这与 alpha 构建版本相关,表明存在一个严重的漏洞,导致了 token 使用量的膨胀并产生了额外的代理。
- 在客户端构建
- 账单影响:用户重建的 OpenAI 发票显示 162 张已支付发票,总额为 79,664.88 美元(包括自动充值和抵扣额度)。官方 OpenAI 账单分类账并未公开这些内部计数器的确切 token 与美元的映射关系。
- 数据丢失:大部分原始部署日志已从用户机器上删除;仅保留了约 2,550 个遗留线程的元数据,且没有详细的执行历史记录。
为什么现有控制措施失效
- 没有支出上限:用户未在 OpenAI 账户上配置硬性支出限制,导致失控的使用量得以持续且未受检查。
- 缺少警报:OpenAI 通常针对大额支出激增发送的电子邮件警报未被触发,这表明警报管道出现故障,或者使用量仅记录在未链接到公共账单系统的内部计数器中。
- 客户端漏洞:alpha 客户端版本自主生成子任务并夸大了 token 计数,绕过了任何客户端成本可见性 UI。
"该用户显然没有在任何层面启用支出保护。OpenAI 或银行的控制措施竟然一个都没有生效,甚至连通常会发送的警报邮件都没有发送,这完全说不通。" – @OutOfHere (HN 评论)
社区反应与见解
- 支出上限问题:几位评论者询问 OpenAI 是否提供账户级上限,以及为什么没有设置这些上限。
- 怀疑态度:一些用户对该声明表示怀疑,将其标记为潜在的恐慌营销或投票操纵。
- 类似漏洞的观察:一位评论者报告了 Claude 类似的子代理爆炸事件,并指出仅靠硬性上限是不够的,还需要可观测性工具(例如 AgentCost, Langfuse)。
- 呼吁提供日志:原始发帖人邀请其他 Codex 用户分享 0.144.0-alpha.4 版本的日志,以确认该模式。
给从业者的建议
- 在所有 OpenAI 账户上启用严格的支出限制,特别是在使用实验性客户端构建时。
- 使用服务器端工具监控 token 使用情况,而不是依赖可能被删除或损坏的本地计数器。
- 优先使用稳定的客户端版本;避免在生产工作负载中使用 alpha 或预发布版本。
- 集成可观测性平台(例如 Langfuse, AgentCost),实时显示每个任务的 token 计数和成本。
- 维护 API 调用的不可变日志,可以通过 OpenAI 的审计日志,或将请求/响应数据导出到一次写入存储中。
OpenAI 的回应
用户开启了支持案例 #15189838 并提供了技术证据。OpenAI 的回复仅限于“额度已被消耗”的通用声明,并未提供对异常任务的详细重建。
结论
该事件表明,当缺乏支出上限时,alpha 版 Codex 客户端中的客户端漏洞如何引发不受控制的子代理创建、海量的 token 消耗以及重大的经济损失。强大的成本控制、稳定的软件版本和服务器端可观测性是防止类似 AI 失控执行的重要保障。
Sources
相关
- Dispatch
- Dispatch
- Dispatch
- Dispatch
- Dispatch