本站出售,有兴趣带价格联系QQ:503594296

三层进攻依然不够 AI Agent安保裂痕再现 一条PR标题就能偷走你的API密钥

独立安保研讨员关傲男(Aonan Guan )结合约翰霍普金斯大学博士生研讨员刘征宇、钟佳成,近期地下发布了一项逾越三家科技巨头的AI Agent安保研讨效果。

研讨证明,Anthropic的Claude Code安保审查工具、Google的Gemini CLI GitHub Action,以及微软GitHub旗下的Copilot Agent,均存在同一类被研讨者命名为「评论与控制」(Comment and Control)的破绽方式——攻击者仅需经过Pull Request标题、Issue评论或隐藏HTML注释,即可劫持这些AI Agent,窃取宿主仓库的API密钥和访问令牌。

这是初次有研讨团队在跨厂商范围内系统性演示这一攻击方式。三家公司均已确认破绽存在并启动了修复,但截至发稿,均未向用户发布正式的安保公告。

一条PR标题引发的安保链式反响

一切故事的终点都指向同一个结构性缺点:AI Agent在行动义务时,会读取仓库中外部奉献者提交的内容并将其作为指令依据,但并未对这些输入树立有效的隔离与校验机制。

Anthropic的Claude Code安保审查工具是最早被攻破的案例。这款运转在GitHub Actions中的Agent,旨在智能审查Pull Request中的代码变卦,曾被Anthropic作为旗舰性能重点推行。Aonan Guan在审查其源代码时发现,PR标题被直接拼接到提示词模板中,未经过任何过滤或转义。与此同时,Claude CLI在调用时未启用工具权限限制参数,子进程完整承袭了宿主环境的一切环境变量。

攻击效果是直接的: 攻击者只需创立一个PR,在标题中嵌入精心结构的注入文本,即可打破Claude的提示词边界,指示其行动恣意系统命令——包括读取 ANTHROPIC_API_KEY GITHUB_TOKEN 等敏感凭证。 Claude会将命令行动结果写入照应,随后智能发布为PR评论。攻击者无需任何非凡权限,开一个PR即可成功窃取。

Claude Code在PR评论中暴露Anthropic API密钥的截图

在验证了Claude Code之后,研讨团队将目的转向Google的Gemini CLI GitHub Action,攻击逻辑一模一样。攻击者创立一个带有注入标题的Issue,随后在评论中逐渐更新注入指令——先要求Gemini关注用户义务,再伪造一个「可信内容区」,宣称以后环境安保,支持共享 GEMINI_API_KEY 等令牌。 这一战略成功掩盖了Gemini原有的安保指令,形成其将完整API密钥以Issue评论的方式地下暴露。

两家厂商在披露环节中的处置方式存在差异。Anthropic于2025年10月收到报告后,将破绽评级优化至CVSS 9.4(Critical级别),并将报告从地下披露转入私有赏金方案,最终支付100美元赏金。但Anthropic未发布CVE编号或安保公告,仅在代码中静默提交了修复并更新了文档——对已固定依赖旧版本的用户而言,他们或许至今不知自己暴露于风险之中。Google则经过破绽赏金方案于2026年1月确认了疑问,发放1337美元赏金,但相同未主意向用户发布安保提示。

Anthropic在回应中表示:「该工具在设计上并未针对提示词注入启动加固。」这一表态提示了以后AI Agent生态的深层矛盾: 厂商智能信任模型自身的安保才干,却未在系统架构层面树立纵深进攻。

Google向研讨者发放1337美元破绽赏金的邮件通知

Copilot Agent:当三层进攻依然不够

最令人警醒的案例来自GitHub自家的Copilot Agent。据GitHub于2025年7月发布的数据,该产品拥有逾越2000万付费用户,掩盖《财富》100强中90%的企业。与前两款产品相比,Copilot Agent在安保防护上部署了三层运转时进攻——环境变量过滤、密钥扫描和网络防火墙。这三层防线层层叠加,看似无懈可击,却依然被逐一击穿。

攻击的第一步是结构「隐形载荷」。 研讨团队创立了一个GitHub Issue,注释包括一段人类可见的一般恳求(如 「Debug first」 ),同时在原始Markdown中嵌入一段HTML注释,其中包括窃取凭证的系统指令。在GitHub的渲染视图中,HTML注释完全无法见,开发者只能看到失常内容。但是,当Copilot Agent被指派处置该Issue时,它解析了完整的Markdown源码,行动了隐藏指令。整条攻击链中,人类审查者全程看到的都是失常的协作内容。

攻击者在Issue中嵌入隐形HTML注释载荷(左侧为渲染视图,右侧为源码视图)

第一道防线,环境变量过滤,最先失守。 Copilot的运转时会向子bash进程传递的参数中剔除20个敏感变量,包括 GITHUB_TOKEN、ANTHROPIC_API_KEY 等。但是,这一过滤仅作用于子进程自身。父级Node.js进程和MCP进程从未被过滤,完整持有一切敏感凭证。攻击者只需在子进程中行动命令,即可读取这些进程的完整环境变量列表。

经过ps auxeww命令从父进程环境中提取出明文凭证

第二道防线,密钥扫描,相同被绕过。 Copilot在前会将提交差异发送至密钥扫描API,按方式婚配等已知令牌前缀。研讨人员的应对极为繁复:将凭证启动Base64编码。编码后的字符串不契合任何扫描规则,直接经过,毫不阻碍地进入提交队列。

第三道防线,网络防火墙,最终形同虚设。 Copilot的出站衔接被限制在白名单之内。但攻击者无需将数据发送就职何外部主机——github.com自身就在白名单中。编码后的凭证作为一个一般的代码提交,经由规范的git push流程发布到PR,攻击者直接在GitHub上即可。

最终,研讨团队从MCP主机进程中成功提取了 GITHUB_TOKEN、GITHUB_COPILOT_API_TOKEN、GITHUB_PERSONAL_ACCESS_TOKEN COPILOT_JOB_NONCE 四项关键凭证。

研讨团队于2026年2月向GitHub提交报告。GitHub最后以「已知疑问,无法复现」为由封锁了报告。Aonan Guan随后提供了逆向工程后的详细技术证据,报告重新开启后最终以「信息性」标签结案,发放500美元赏金。GitHub供认该疑问是「以后运转时设计的已知结果」,表示正在积极探求限制方案,但未提供详细时期表。截至本研讨地下发布时,Copilot Agent仍可被此类攻击手段运行。

「评论与控制」:被无视的系统性风险

Aonan Guan在研讨论文中将这一攻击方式命名为 「评论与控制」(Comment and Control) ,称号刻意仿照范围经典的「命令与控制」(Command and Control,C2)框架——在传统攻击中,C2指攻击者与被控节点之间的继续通讯通道;而在此处,GitHub平台自身被异化为C2通道:PR标题充任指令输入,Issue评论和Git提交充任数据外传途径,攻击者全程无需任何外部主机,也无需在目的环境中留下十分规痕迹。

这一攻击方式之所以能在三款产品中重复奏效,根源在于 AI Agent与开源协作平台之间自然存在的信任相关 。开发者赋予Agent读写仓库的权限,Agent从仓库中读取外部奉献者提交的内容并将其作为行动依据,而平台自身恰恰是任何外部用户都可以介入的空间。在这个信任链中,只需外部输入未被充沛隔离,攻击就简直无法防止。

研讨团队总结的三起案例特性如下表所示:

这一疑问的触及范围或许远超已披露的三款产品。Aonan Guan在研讨中提到,相同的方式已在开源项目OpenCode(GitHub上拥有约13.9万Star)中复现。随着AI编程Agent成为支流开发任务流的标配,这一攻击面还将继续扩展。

值得深思的是,三家公司对此次披露的处置方式高度分歧: 确认破绽、修复代码、支付赏金,但均未发布安保公告,也未分配CVE编号。 Anthropic选择静默修复,Google经过赏金程序确认后坚持缄默,GitHub则将疑问定性为「已知设计结果」。这面前是AI安保范围的结构性困境——当破绽根植于模型对自然言语指令的遵从性而非传统代码缺点时,厂商往往偏向于将其视为「设计局限」而非「安保破绽」。但是,对开发者而言,API密钥和访问令牌的暴露意味着攻击者或许取得访问私有仓库、云基础设备乃至整个组织代码资产的权限,其危害并不因定性而下降。

如何维护自己

Aonan Guan在研讨中提出了一个务虚的应对框架:将提示词注入视为针对机器的「网络钓鱼」,将AI Agent视为要求遵照最小权限准绳的超级员工:

「只给Agent成功其义务所需的工具和权限。即使在模型层面已部署提示词注入防护,这些防护在以后通常中最终仍可被绕过。」 Aonan Guan在接受The Register访问时表示。

这一框架落实到详细操作中,中心在于两点—— 工具授权和凭证控制

在工具授权层面,应采纳白名单而非黑名单机制。 以Anthropic的应急修补为例,其选择在 --disallowed-tools 参数中封禁ps命令,试图阻断攻击者读取进程信息的才干。但这一黑名单思绪存在后天缺点:封禁ps后,攻击者可经过 cat /proc/*/environ 读取同等信息;封禁该途径后,仍有 ls /proc/$PID/environ、env、printenv 等多种替代方式。正确的做法不是穷举制止哪些命令,而是明白声明Agent只要求哪些工具——假定一个代码审查Agent不要求行动bash,就不应该给它bash权限。才干边界选择了攻击者的操作空间。

在凭证控制层面,应严峻依照性能边界控制凭证作用域。 假定一个Agent的独一职责是总结Issue,它不要求持有具有写权限的GITHUB_TOKEN;假定它只要求读取代码,它不要求持有Anthropic API密钥。凭证暴出面越小,被窃取的损失越可控。

对经常经常使用相关工具的开发者和企业,还倡议采取以下措施: 尽快将GitHub Actions中的AI Agent工具更新至最新版本;审查任务流中的权限性能,确保Agent仅持有成功义务所需的最小权限集;轮换此前或许暴露的API密钥和访问令牌;对地下仓库启用「要求对一切外部奉献者启动审批」选项,防止外部提交内容在未经审核的状况下直接触发AI Agent的智能处置流程。

从2025年10月初次向Anthropic报告Claude Code破绽,到2026年4月研讨地下发布,这项研讨历时近六个月。在此时期,三家厂商成功了修补,却无一主动告知用户。破绽赏金算计1937美元——其中Anthropic支付100美元,Google支付1337美元,GitHub支付500美元——而研讨所触及的产品正在被数千万开发者日经常经常常使用,掩盖了《财富》百强中绝大少数企业。

这组数字,或许是以后AI安保生态最繁复的注脚。 (本文媒体APP,作者 | 硅谷Tech_news,编辑 | 焦燕)

财经频道更多独家谋划、专家专栏,不要钱查阅>>

版权声明

本文来自网络,不代表本站立场,内容仅供娱乐参考,不能盲信。
未经许可,不得转载。

热门
标签列表