被盗的 AI API 密钥正在给扫描买单:如何锁住密钥

Bitsight 报道称,犯罪工具会用被盗的 OpenAI、Anthropic 和 Google 密钥跑扫描,账单记到所有者头上。本文列出发现滥用和锁定密钥的控制项。

用 Apifox,节省研发团队的每一分钟

被盗的 AI API 密钥正在给扫描买单:如何锁住密钥

免费使用 Apifox

相关推荐

最新文章

API

一体化协作平台

API 设计

API 文档

API 调试

自动化测试

API Mock

API Hub

立即体验 Apifox
目录

被盗的 AI API 密钥,现在会替别人的入侵买单。2026 年 10 月,Bitsight 威胁情报团队描述了在犯罪论坛上出售的工具 MONST3R-AI。它用被盗的 OpenAI、Anthropic 和 Google 密钥,运行自主渗透测试扫描。买家带上密钥,智能体负责扫描,账单记到密钥所有者头上。本文说明密钥如何泄露、如何发现滥用,以及各提供商今天提供的控制项。

要保护 OpenAI、Anthropic 或 Gemini 密钥:把它限定到一个项目或工作区,设置硬性月度花费上限,限制可调用的来源,设置过期或轮换,不要放进客户端代码和仓库,并打开带推送保护的密钥扫描。如果密钥泄露,先创建替代密钥并部署,再停用旧密钥并审计用量。

什么是 LLMjacking?

LLMjacking 是滥用被盗的大语言模型凭证(通常是 API 密钥)来跑推理,费用由密钥所有者支付。攻击者会转售访问权限、拿去跑自己的负载,或者按 Bitsight 的说法,用它驱动自主攻击智能体。受害者只能在自己账户上看到可计费用量。

Bitsight 关于 MONST3R-AI 发现了什么

下面的事实来自 Help Net Security 和 AI Weekly 对 Bitsight 研究的报道,发布于 2026 年 10 月 17 日。本文写作时,Bitsight 自己关于该工具的文章尚未公开。

  • 它是什么: 一个受限犯罪论坛上的卖家把 MONST3R-AI 宣传为「自主渗透测试平台」。
  • 用谁的密钥: 它运行在被盗的 OpenAI、Anthropic 和 Google API 密钥上。
  • 谁付钱: 买家把被盗密钥粘贴进工具面板,设一个预算上限,再把智能体指向目标列表。卖家不托管模型,所以推理账单落在密钥合法所有者身上。
  • 声称的结果: 卖家的仪表盘声称在 199 台被扫描主机上有 1,072 项发现。Bitsight 表示无法独立核实该数字,所以把它当成营销,而不是证据。
  • 更大的趋势: 2026 年 2 月到 8 月,16 个地下论坛上,关于 AI 智能体、间接提示注入和 Model Context Protocol 的提及上升了 67%。
MONST3R-AI 的计费流向:被盗密钥为扫描买单

泄露的密钥不再只是一张意外账单。它可以资助别人的攻击活动,而且每个请求看起来都像你的正常流量。

AI Coding 交流群

如果你也在用 AI 写代码,或者正在研究 Cursor、Claude Code 这些工具,欢迎加入以下交流群。群里平时会聊一些 AI 编程的实际用法、开发工作流,还有各种新工具和新玩法。

AI API 密钥如何泄露

大多数被盗密钥并不是被「攻破」的。它们是意外公开的。常见路径:

泄露路径 如何发生 处理
公开仓库 密钥提交进代码、.env 或笔记本 带推送保护的密钥扫描
客户端代码 密钥打进网页包或移动应用 只从后端调用模型
CI 日志 构建步骤回显环境变量或调试输出 掩码机密,不要在它们周围使用 set -x
容器镜像 .env 被复制进镜像层 使用 .dockerignore,在运行时注入
智能体和 MCP 配置 密钥被粘进 MCP 服务器配置或智能体设置,然后被同步或分享 引用环境变量,不要写明文密钥
聊天和工单 密钥被粘进 Slack、议题或支持工单 轮换任何离开密钥库的密钥

Google 的 Gemini API 密钥说明 把客户端规则写得很明白:编译进网页或移动应用的密钥可以被用户提取,所以应运行后端代理来发起真正的调用。存储一侧可以看「如何存放 API 密钥」。

智能体配置需要额外小心:MCP 和智能体设置文件会出现在 dotfile 仓库、屏幕共享和缺陷报告里。

如何判断密钥正在被滥用

没有告警会说「有人正在用这个」。看用量和账单数据里的这些信号:

  1. 没有发布却花费跳升。 平稳的每日成本一夜翻倍,是最清楚的信号。
  2. 你不用的模型。 出现在产品从未调用的模型系列上。
  3. 非工作时间流量。 白天应用使用的密钥,在你时区凌晨 3 点仍有稳定请求。
  4. 不是你造成的速率限制错误。 别人正在消耗你的每分钟配额。
  5. 用量页上未知的密钥或项目。 Google AI Studio 的用量页把无法对应到具名密钥的请求归到「(unknown keys)」。

把密钥拆得足够细,让一次尖峰能指向一把密钥。

如何保护 OpenAI API 密钥

对照 OpenAI 开发者文档核对于 2026 年 10 月 28 日。

  • 硬性花费上限: 按花费上限说明,你可以为组织或单个项目设置月度上限,并打开「Enforce a hard limit」。已跟踪花费达到上限后,请求以 429 失败,代码为 organization_spend_limit_exceeded 或 project_spend_limit_exceeded。执行不是即时的,花费可能略微超过上限。
  • 花费告警: 告警会通知你,但不会停流量。两者一起用,把告警设在硬上限之下。
  • IP 允许列表: IP 允许列表 会拒绝来自其他 IP 的请求,即使密钥有效。最多 50 个地址或 CIDR 范围,可按项目或全组织生效。被拦截的调用得到 HTTP 401 和 ip_not_authorized。变更最多需要 15 分钟。
  • 每个应用和环境一个项目: 只有密钥按项目拆开,项目级上限和允许列表才有用。
  • 受限的密钥权限: OpenAI 的项目管理说明 列出用户自有密钥的 All(默认)、Restricted 和 Read Only 权限。每把密钥只给应用需要的权限。
  • 按项目限制模型: 在项目的 Limits 里,Model usage 选择该项目能调用的模型。被盗密钥就不能跳到你从未使用的更贵模型。

也可以看「OpenAI API 密钥指南」。

如何保护 Anthropic API 密钥

对照 Claude Platform 文档核对于 2026 年 10 月 28 日。

  • 工作区花费上限: 按工作区文档,你可以限制每个工作区的月度花费,并按阈值配置告警。默认工作区不能设置花费上限,所以把生产密钥放到自己的工作区。
  • 工作区速率限制: 为每个工作区限制每分钟的请求数、输入 token 和输出 token。
  • 密钥过期: 鉴权文档 允许创建时选择过期时间:3 小时、1 天、7 天、30 天、自定义时长或永不。之后不能修改。
  • 绑定身份的密钥: 个人密钥和服务账号密钥会在所有者被移除后失效。Anthropic 把工作区密钥称为旧方式,并建议在云平台和 CI 的生产环境使用 Workload Identity Federation。
  • 停用与删除: Disable 可逆,密钥显示为 inactive。Delete 是永久的。不确定时先停用。

也可以看「Anthropic API 密钥指南」。

如何保护 Google Gemini API 密钥

对照 Google 的 Gemini API 密钥文档 和计费文档 核对于 2026 年 10 月 28 日。

  • 授权密钥: 自 2026 年 5 月 28 日起,在 Google AI Studio 新建的密钥是绑定服务账号的授权密钥,默认限制为 Gemini API。Google 称其系统检测到泄露密钥时会快速执行限制。
  • 不再接受无限制密钥: Gemini API 拒绝来自无限制标准密钥的请求。在 AI Studio 里把旧密钥限制到 Gemini API,或迁移到授权密钥。
  • 应用限制: 在 Cloud 控制台的凭据页,把密钥限制到指定 IP 地址。
  • 项目花费上限: 在 AI Studio 的 Spend 页为每个项目设置月度上限。Google 将其标为实验性,并警告账单大约有 10 分钟延迟,期间可能超支。
密钥控制对比:OpenAI、Anthropic、Gemini

对每个提供商都适用的锁定清单

你拥有的每把密钥都做一遍:

  1. 盘点。 列出每把密钥、使用它的应用,以及存放位置。
  2. 拆分。 每个应用和环境一个项目或工作区,让尖峰能指出来源。
  3. 设上限。 设置硬性月度限额,并更早触发告警。
  4. 限制来源。 出口地址固定时,使用 IP 允许列表或应用限制。
  5. 过期或轮换。 提供商支持时用短过期;不支持时排轮换计划。
  6. 扫描。 GitHub 的密钥扫描模式 包含 OpenAI、Anthropic 和 Google Gemini API 密钥,OpenAI 密钥支持推送保护。本地可运行的扫描器可以看「检查泄露的 API 密钥」。
  7. 优先使用短生命周期凭证。 Anthropic 和 OpenAI 都为生产环境记录了工作负载身份联合。

策略一侧可以看「API 密钥管理实践」。

泄露后的第一个小时做什么

速度比根因重要。按顺序:

AI API 密钥泄露后的第一个小时
  1. 创建替代密钥,放在新的项目或工作区。
  2. 部署它 到需要它的应用。
  3. 停用泄露的密钥。 Google 的泄露清单说,为避免停机,应在新密钥验证之后再停用旧密钥。如果花费升得很快,先停用,接受中断。
  4. 降低受影响项目的花费上限,同时调查。
  5. 审计用量,按模型、小时和密钥查看泄露以来的窗口。
  6. 找出泄露路径,用上面的表,并从 git 历史中清除。
  7. 联系提供商,在有了时间线之后说明欺诈用量。

用测试核对密钥处理

通往 OpenAI、Anthropic 或 Gemini 的后端代理,是密钥处理容易出错的地方:它接受未鉴权调用,或在错误响应体里回显提供商密钥。让编码智能体为它编写并运行测试,测试定义里不要放机密。

值得断言的行为:没有 Authorization 头返回 401,错误令牌返回 401,有效令牌返回 200,并且任何响应体都不包含 sk- 或 AIza。令牌从环境变量读取,不要写进规范或仓库。

原文给出了来源产品 CLI 的安装和运行命令。Apifox 是否提供同名 CLI,待核实,因此不照搬。同一条检查可以放进 CI。

常见问题

什么是 LLMjacking? 它是使用被盗的 LLM 凭证(通常是 API 密钥)来跑推理,费用由所有者支付。攻击者转售访问权限,或者像 MONST3R-AI 那样用它驱动攻击智能体。

被盗的 AI API 密钥真的能给黑客工具买单吗? 是的。Bitsight 报道,MONST3R-AI 的买家把被盗的 OpenAI、Anthropic 或 Google 密钥粘进面板,卖家不托管模型,所以受害者付钱。卖家声称的结果未经核实。

花费上限能挡住被盗密钥吗? 硬上限会在上限处停止花费,但不是立刻。OpenAI 和 Google 都提到,限制传播期间会有少量超支。只有花费告警永远不会停流量。

可以把 OpenAI API 密钥放进前端代码吗? 不能。发到浏览器或移动应用的任何东西都可能被提取。从后端调用模型。

GitHub 能发现泄露的 AI 密钥吗? GitHub 密钥扫描能检测 OpenAI、Anthropic 和 Google Gemini API 密钥模式。打开推送保护,让带密钥的提交在公开之前被拦住。

HiFox :将 Agent 变成真正的队友

另外,我们也在思考,AI 如何从个人提效走进团队协作。

HiFox 是一个让人和 AI Agent 在同一个工作现场协作的平台:你可以像给同事分派任务一样指派 Agent,在任务看板中跟踪进度、查看结果,让 Agent 成为团队里的队友。

👉 立即体验 Hifox:https://hifox.com

AI Coding 交流群

如果你也在用 AI 写代码,或者正在研究 Cursor、Claude Code 这些工具,欢迎加入以下交流群。群里平时会聊一些 AI 编程的实际用法、开发工作流,还有各种新工具和新玩法。