S
SkillNav

Google API Key 本可公开,Gemini 却悄悄改写了安全边界

资讯Simon Willison2026-02-26T04:28:55+00:003 分钟阅读

2026 年 2 月 26 日 - Link Blog

Google API Keys Weren't Secrets. But then Gemini Changed the Rules. (via) 这事有点吓人:Gemini 和 Google Maps(以及其他服务)竟然会共用同一套 API key……而 Google Maps 的 API key 本来就是按“可公开”设计的,因为它们会直接嵌在网页里。问题是,Gemini API key 可以访问私有文件、还能发起会产生费用的 API 请求,所以绝对不应该被公开共享。

如果你没意识到这一点,就很容易在一个早已公开、且已在互联网上流传的 API key 上,误把 Gemini 的计费能力也打开。

这之所以属于权限提升(privilege escalation),而不只是配置错误(misconfiguration),关键在于事件发生的顺序。

  1. 开发者先创建一个 API key,并把它嵌入网站用于 Maps。(此时这个 key 基本无害。)
  2. 同一个项目后来启用了 Gemini API。(同一把 key 现在就能访问敏感的 Gemini 端点。)
  3. 开发者并不会收到“该 key 权限已变化”的提醒。(这个 key 从公开标识符,变成了需要保密的凭据。)

Truffle Security 在 2025 年 11 月的 Common Crawl 中发现了 2,863 个可访问 Gemini 的 API key,并通过请求 /models 列表端点完成验证。其中还包括多个属于 Google 自己的 key;根据 Internet Archive 的记录,其中一个自 2023 年 2 月起就已部署——也就是说,它的出现时间早于 Gemini API,却在后续获得了对 Gemini 的访问能力。

Google 正在推进受影响 key 的撤销工作,但你仍然应该尽快检查自己是否也受此问题影响。

查看原文 ↗

相关文章

资讯Simon Willison·3月6日
Clinejection 攻击披露:仅靠 Issue 分诊提示词即可攻陷 Cline 生产发布流程

研究者 Adnan Khan 披露了一条针对 Cline GitHub 仓库的完整攻击链:攻击者先通过 Issue 标题中的 prompt injection 控制 AI 分诊流程,再借助 GitHub Actions 缓存投毒影响夜间发布任务。尽管分诊工作流本身不含高价值密钥,但因与发布工作流共享缓存键,最终仍导致 NPM 发布凭据可被窃取。事件后 `cline@2.3.0` 曾被匿名攻击者发布(现已撤回),所幸未造成更严重后果。

3 分钟
Copilot 代码审查突破 6000 万次,GitHub 详解 Agent 架构演进
资讯GitHub·3月5日
Copilot 代码审查突破 6000 万次,GitHub 详解 Agent 架构演进

GitHub 表示,自 2025 年 4 月推出 Copilot code review 以来,使用量已增长 10 倍,如今占 GitHub 全站代码审查的五分之一以上。团队通过持续评估闭环与 Agent 化架构优化,将“好审查”聚焦在准确性、信号强度与速度三项核心指标,并在真实生产环境中用开发者反馈和问题修复率衡量效果。当前已有超过 1.2 万家组织在每个 pull request 上自动运行该能力,GitHub 下一步将推进更深度个性化与双向交互审查体验。

8 分钟