48小时“烧光”56万!三人创业团队濒临破产,仅因Gemini API密钥被盗:“AI账单远超我们的银行余额”

48小时“烧光”56万!三人创业团队濒临破产,仅因Gemini API密钥被盗:“AI账单远超我们的银行余额”

整理 | 苏宓

出品 | ZEEKLOG(ID:ZEEKLOGnews)

「仅过了 48 小时,一笔 8.2 万美元的天价费用凭空出现,较这家小型初创公司的正常月费暴涨近 46000%。」

这不是假设的虚幻故事,而是一家墨西哥初创公司正在经历的真实危机。

近日,一位名为 RatonVaquero 的开发者在 Reddit 发帖求助称,由于他的 Gemini API 密钥被盗用,原本每月仅约 180 美元(约 1242 元)的费用,在短短 48 小时内暴涨到 82,314.44 美元(约 56.8 万元)。对于这家只有三名开发者的小型创业团队来说,这笔突如其来的账单,几乎等同于灭顶之灾。

“我现在整个人都处在震惊和恐慌之中。”RatonVaquero 在帖子开头这样写道。

初创公司遭遇“天价账单”

根据 RatonVaquero 在 Reddit 上的描述,他的 Google Cloud API 密钥在 2 月 11 日至 12 日之间被泄露了,具体是怎么泄露的,他也不知道,也没有在软件中发现明显的错误。

随后,有未知攻击者利用该密钥疯狂调用 Gemini 3 Pro 的图像和文本接口,最终在短短两天内累计产生了 82,314.44 美元的费用。

对这家只有三个人的小公司来说,这个数字极其夸张——他们平时每月支出只有 180 美元。也就是说,这次异常调用带来的费用,直接飙升到了正常水平的约 455 倍。

发现异常后,团队立即展开紧急处理。他们删除了被盗的 API 密钥,禁用了 Gemini 相关接口,同时更换了所有访问凭证,全面启用双重验证,并收紧 IAM 权限配置。

与此同时,他们也向 Google Cloud 提交了支持工单,希望能获得官方协助。

但目前得到的回复并不乐观。

Google 方面在沟通中提到了“Shared Responsibility Model(共享责任模式)”。根据这一原则,云平台负责基础设施安全,而账户和密钥的管理则由用户自行负责。因此,即便是密钥被盗导致的调用费用,也可能需要用户承担。

“如果谷歌要求我们支付哪怕三分之一的费用,公司都会直接破产。”RatonVaquero 无奈地表示,“我们现在只是勉强维持运营,还寄希望于某个产品能够成功。我们只是墨西哥的三个开发者组成的小团队。”

截至目前,Google 尚未明确说明是否会强制要求该公司支付全部费用,也没有表态是否会承担部分损失。

开发者的疑问:“为什么没有基本的异常保护机制?”

这起事件也让 RatonVaquero 对 Google Cloud 的安全机制产生了疑问。

在他看来,从每月 180 美元到 48 小时 8.2 万美元的支出暴涨,显然不属于正常波动,而是非常明显的异常行为。

然而在使用过程中,Gemini 并没有触发任何自动保护机制,例如在使用量突然达到历史水平数倍时自动停止服务、在费用出现极端增长时要求额外确认,或在异常情况下暂时冻结账户等待审核。

对于一家小公司来说,这样的风险几乎是致命的。“这笔账单远远超过我们银行账户里的钱。” RatonVaquero 写道。

数千个 API 密钥可能被滥用

更值得注意的是,这起事件可能只是更大问题的一部分。

据外媒 The Register 报道,美国网络安全公司 Truffle Security 的研究人员在对数百万个网站进行扫描后发现,至少 2863 个 Google API 密钥原本只用于标识计费项目,如今却可以直接用于 Gemini API 身份验证。

这意味着,一旦攻击者获取这些密钥,就可能直接调用大模型接口,不仅能访问相关账户中的上传文件和缓存数据,还能不断消耗 API 配额,把所有计算费用转嫁到密钥拥有者身上。

对此,Truffle Security 研究员 Joe Leon 不久前也发了一篇长文进行了深度解析为什么会有这种情况发生。

Truffle Security 指出,问题的根源,是 Google Cloud 使用同一种 API Key 格式(以 AIza... 开头)来处理两种本质上完全不同的用途:公开身份识别和敏感认证。

多年来,Google 一直明确告诉开发者,API Key 可以安全地嵌入客户端代码中。Firebase 官方的安全清单中也明确指出,API Key 并非机密信息。

注意:这些 API Key 与用于驱动 GCP 的服务账户 JSON Key 是完全不同的。

Google Maps JavaScript 文档也指导开发者,将 API Key 直接粘贴到 HTML 中。

这在当时是合理的。API Key 的设计初衷是作为项目的标识符,用于计费,并可以通过 HTTP Referer 白名单等方式进行限制(虽然这些限制可以被绕过)。它们并非设计为认证凭证。

然而,随着 Gemini 的出现,情况发生了变化。

当你在 Google Cloud 项目中启用 Gemini API 时,该项目中现有的 API Key(包括那些已经嵌入在你网站公共 JavaScript 中的 Key)会在不发出任何警告、确认对话框或邮件通知的情况下悄然获得访问敏感 Gemini 端点的权限。

这带来了两个问题:

  1. 权限溯源扩张(Retroactive Privilege Expansion)。你三年前创建了一个 Maps Key,并严格按照 Google 的指引嵌入到网站源代码中。上个月,你团队的某个开发者为内部原型启用了 Gemini API。现在,你的公共 Maps Key变成了 Gemini 的认证凭证。任何抓取到它的人都可以访问你的上传文件、缓存内容,并让你的 AI 账单飙升。没有人通知你这一变化。
  2. 默认配置不安全(Insecure Defaults)。当你在 Google Cloud 创建一个新的 API Key 时,默认状态是“无限制”,意味着它立即对项目中所有已启用的 API(包括 Gemini)有效。UI 会显示“未经授权使用”的警告,但架构上的默认配置本身是完全开放的。

结果:成千上万原本用于计费的无害 API Key,如今成为了公开网络上的 Gemini 凭证。

在这种情况下,攻击者可以访问你的网站,查看页面源代码,然后从 Maps 嵌入中复制你的 AIza... Key。接着他们运行:

curl "https://generativelanguage.googleapis.com/v1beta/files?key=$API_KEY"

结果不是 403 Forbidden,而是直接返回 200 OK。从这里开始,攻击者可以:

  • 访问私有数据:/files/ 和 /cachedContents/ 端点可能包含上传的数据集、文档和缓存的上下文。项目所有者通过 Gemini API 存储的任何内容都可以被访问。
  • 造成账单费用激增:Gemini API 的使用并非免费。根据模型和上下文窗口大小,攻击者如果不断调用 API,单个受害账号每天可能产生数千美元的费用。
  • 耗尽配额:这可能会彻底中断你合法的 Gemini 服务。

攻击者甚至不需要接触你的基础设施,他们只需从公共网页抓取一个 Key 就能完成攻击。

而当前墨西哥开发者 RatonVaquero 正在经历上述的一种情况。


漏洞披露后修复进展缓慢

实际上,Truffle Security 这家安全公司早在 2025 年 11 月就已经向 Google 的漏洞披露项目提交过相关报告,但当时 Google 将其认定为“预期行为”,并未引起重视。

直到同年 12 月 1 日,研究人员提交了一个来自 Google 自身基础设施的案例——一个在 2023 年部署于公开网站上的 API 密钥,如今仍然可以直接调用 Gemini API——Google 才重新评估这一问题。

随后,Google 将该报告从“客户问题”重新归类为“系统漏洞”,并提高了问题严重等级,开始推进修复工作,同时向 Truffle Security 索要那 2863 个暴露密钥的完整清单。

然而截至 2026 年 2 月 2 日,Google 向研究人员反馈称,仍在研究和努力修复问题。

随着 90 天漏洞披露窗口期的结束,Truffle Security 团队将这一问题公开出来。研究员 Joe Leon 表示,目前尚未看到任何“具体结果”。

社区讨论:问题究竟出在哪里?

如今 RatonVaquero 的遭遇也在开发者社区引发了讨论。

有网友怀疑,这起事件是否与最近流行的“氛围编码”有关,认为自动生成代码的工具可能会在无意中泄露密钥。但 RatonVaquero 很快回应称,他们并没有使用这类方式开发。

也有开发者给出了更现实的建议,“说实话,坚持联系 Google 可能是唯一的办法,不要放弃,希望总是存在的。”

对此,你怎么看这一问题?

参考:

https://old.reddit.com/r/googlecloud/comments/1reqtvi/82000_in_48_hours_from_stolen_gemini_api_key_my/

https://trufflesecurity.com/blog/google-api-keys-werent-secrets-but-then-gemini-changed-the-rules

https://www.theregister.com/2026/03/03/gemini_api_key_82314_dollar_charge

推荐阅读:

Agent取代App、机器人“盲区”、RAG成本失控……2026 奇点智能技术大会首批议题发布

万人大厂一夜裁员4000+人!她拼命用AI提效,却在凌晨12:30等来解雇通知

岗位一朝被Meta砍掉,工程师转头训练小狗敲键盘,竟靠Claude把乱码做成了游戏,还开源了!

未来没有前后端,只有 AI Agent 工程师。

这场十倍速的变革已至,你的下一步在哪?

4 月 17-18 日,由 ZEEKLOG 与奇点智能研究院联合主办「2026 奇点智能技术大会」将在上海隆重召开,大会聚焦 Agent 系统、世界模型、AI 原生研发等 12 大前沿专题,为你绘制通往未来的认知地图。

成为时代的见证者,更要成为时代的先行者。

奇点智能技术大会上海站,我们不见不散!

Read more

C++的核心--继承

C++的核心--继承

目录 前言 一、继承的概念及定义 二、基类和派生类对象赋值转换 三、继承中的作用域 四、派生类的默认成员函数 五、继承与友元 六、继承与静态成员 七、复杂的菱形继承及菱形虚拟继承 (一)单继承与多继承 (二)菱形继承 (三)菱形虚拟继承 八、继承的总结和反思 结语 前言 在C++ 编程世界里,继承是一项极为关键的特性,它为代码的复用和层次化设计提供了强大支持。掌握继承机制,对于编写高效、可维护的C++ 代码至关重要。今天,就让我们一起深入探究C++ 中的继承。 一、继承的概念及定义 继承是面向对象程序设计实现代码复用的重要手段。它允许我们在保持原有类特性的基础上进行扩展,产生新的类,即派生类。这体现了面向对象程序设计的层次结构,从简单到复杂逐步构建。 定义格式上,以 class Student : public

By Ne0inhk
C++微服务实战中好友管理子服务的全面解析

C++微服务实战中好友管理子服务的全面解析

【C++ 微服务实战】IM 好友管理子服务全解析:从 Proto 定义到高可用部署 在即时通讯(IM)系统中,好友管理子服务是连接 “用户社交关系” 与 “聊天会话” 的核心枢纽 —— 它既要处理好友申请、关系维护,也要管理单聊 / 群聊会话的创建与成员维护。本文基于实际项目代码(C++/brpc/Protobuf/ODB),从 “接口设计”“数据模型”“核心逻辑”“高可用部署” 四个维度,完整拆解好友管理子服务的实现细节,带你理解如何构建一个解耦、可靠的微服务。 一、服务定位与技术栈 在 IM 微服务架构中,好友管理子服务(Friend Server)的核心职责是 **“管理用户社交关系” 与 “维护聊天会话容器”**,向上对接网关服务接收客户端请求,向下依赖 MySQL/ES 存储数据,

By Ne0inhk
【C++】类和对象(中)

【C++】类和对象(中)

一、类的默认成员函数 编译器会自动生成的成员函数称为默认成员函数。一个类,不写的情况下编译器会默认生成以下6个默认成员函数。另外在C++11中,增加了两个默认成员函数,移动构造和移动赋值。默认成员函数从两方面学习: 1. 我们不写时,编译器默认生成的函数行为是啥?满足我们的需求吗? 编译器默认生成的函数不满足我们的需求,那如何自己实现? 二、构造函数 构造函数主要任务是对象实例化时初始化对象。就像每次写栈或队列时需要初始化Stack Init()、Queue Init(),用了构造函数就不需要写这一步。 构造函数的特点:函数名与类名相同:类class Stack,类中的函数Stack()无返回值。也无void对象实例化时系统会自动调用对应的构造函数构造函数可以重载如果类中没有显式定义构造函数,则C++编译器会自动生成一个无参的默认构造函数,一旦用户显式定义编译器将不再生成无参构造函数、全缺省构造函数、我们不写构造时编译器默认生成的构造函数,都叫做默认构造函数。但是这三个函数有且只有一个存在,不能同时存在。无参构造函数和全缺省构造函数虽然构成函数重载,但是调用时会存在歧

By Ne0inhk
Rust赋能Android蓝牙协议栈:从C++到安全高效的重构之路

Rust赋能Android蓝牙协议栈:从C++到安全高效的重构之路

在移动设备生态中,蓝牙协议栈是连接物理世界与数字世界的关键桥梁,从无线耳机、智能手环到车载系统,其稳定性、安全性与效率直接决定用户体验。长期以来,Android蓝牙协议栈核心模块基于C++开发,凭借接近硬件的性能优势支撑了数十亿设备的运行。但随着物联网设备爆发式增长、蓝牙5.3/5.4等新协议落地,C++固有的内存安全缺陷与并发管理难题愈发凸显。2021年起,Google开始在Android蓝牙协议栈中引入Rust重构核心模块,这一技术选型并非偶然,而是工程实践中安全与效率平衡的必然结果。 目录 一、Android蓝牙协议栈的C++之困 1.1 内存安全漏洞:蓝牙模块的阿喀琉斯之踵 1.2 并发管理复杂:多设备连接下的稳定性难题 1.3 代码可维护性下降:遗产代码的演进瓶颈 二、Rust:破解困局的关键特性赋能 2.1 所有权模型 2.2 并发安全:无数据竞争的天生优势 2.3 零成本抽象与可维护性:

By Ne0inhk