GitHub AI 推荐的代码修复出错,导致 Snowflake 的 Jira 面临黑客攻击风险
GitHub 的 AI 自动漏洞修复工具反而删除了安全防护代码,被安全公司 Wiz 的研究型 AI 发现并成功演示了如何窃取 Snowflake 的 Jira 令牌
网络安全公司 Wiz 披露了一个有趣的案例研究:该公司用于漏洞研究的自动化 AI“Red Agent”通过漏洞赏金计划(Bug Bounty)在 Snowflake 的公共代码库中发现了漏洞,并成功演示了提取 Jira API 令牌的过程。而漏洞的根源,居然是另一款 AI——GitHub Copilot Autofix。
事情始于 2026 年 6 月 18 日,当时 Snowflake 面向公众开源的 .NET 连接器代码库 `snowflake-connector-net` 合并了一项代码(PR #1218)。该代码包含了 GitHub Copilot Autofix(一款用于自动推荐漏洞修复方案的 AI 工具)参与修改的部分。但问题在于,AI 删除了安全的输入处理机制(sanitized input),转而在 GitHub Actions(CI/CD 软件开发流水线自动化系统)脚本中使用了直接字符串拼接(direct string expansion)。
这导致通过 GitHub Issue 标题产生了命令注入(Command Injection)漏洞,任何人都可以打开 Issue 并输入文本。当自动化系统在未经过滤的情况下处理该文本时,攻击者便可将指令植入系统运行。
五天后的 2026 年 6 月 23 日,Wiz 的 Red Agent 检测到了这个漏洞并进行了测试,成功外泄(exfiltrate)了 Snowflake 内部任务管理系统 Jira 的 API 令牌。如果是真正的攻击者,这些令牌可能会让他们访问到企业内部的敏感工作数据。
Snowflake 反应迅速,在收到报告的当天便修复了漏洞并轮换(rotate)了所有安全凭证。
该案例在 Hacker News 上引发了广泛讨论,获得了超过 304 分和 123 条评论,因为它反映了 AI 时代的双重风险:一方面,辅助编写代码的 AI 可能会忽略人类曾设置的安全规范;另一方面,攻击方的 AI 也能以极高的速度寻找漏洞。专家因此强调,由 AI 生成或修改的代码仍必须经过人类的严格审查,特别是在那些拥有重要数据访问权限的 CI/CD 系统相关部分。
这是一个鲜明的案例,表明即使在顶尖科技公司中,AI 辅助编程也可能引入严重的安全漏洞。使用 Copilot 或类似 AI 工具的组织应始终建立人工代码审查流程,特别是针对拥有高权限的自动化脚本。