GitHub评论可触发Claude Code、Gemini CLI和GitHub Copilot的提示注入漏洞

新型"评论控制"攻击手法曝光

研究人员发现一类名为"Comment and Control"(评论控制)的跨厂商关键漏洞,这种新型提示注入攻击利用GitHub的拉取请求标题、议题正文和评论作为武器,能够劫持AI编程Agent并从CI/CD环境中直接窃取API密钥和访问令牌。该攻击名称刻意模仿了恶意软件活动中经典的C2(Command and Control)框架。经确认,Anthropic的Claude Code Security Review、Google的Gemini CLI Action以及GitHub Copilot Agent(SWE Agent)三款广泛部署的AI Agent均存在此漏洞。

据研究员Aonan Guan介绍,整个攻击过程完全在GitHub平台内部完成:攻击者编写恶意的PR标题或议题评论,AI Agent将其作为可信上下文读取处理,执行攻击者提供的指令,并通过PR评论、议题评论或git提交将凭证外泄,无需外部服务器参与。与传统需要受害者主动要求AI处理文档的间接提示注入不同,"评论控制"攻击具有主动性------GitHub Actions工作流会在pull_requestissuesissue_comment事件时自动触发,意味着仅需打开PR或提交议题就能激活Agent,无需受害者任何交互。

漏洞详情1:Claude Code安全审查的PR标题到RCE漏洞

在Anthropic的Claude Code Security Review中,PR标题未经任何净化处理就直接插入Agent提示。由于调用Claude CLI时未使用--disallowed-tools--allowed-tools限制,子进程会继承包括ANTHROPIC_API_KEYGITHUB_TOKEN在内的所有环境变量。攻击者只需创建一个包含恶意标题的PR,突破提示上下文并指示Claude执行whoamips auxewwenv等命令,就能以JSON格式的"安全发现"将完整凭证转储到PR评论中。该漏洞通过HackerOne(#3387969)报告,Anthropic将其评为CVSS 9.4分严重漏洞(原为9.3分),并发放了q00奖金。

漏洞详情2:Gemini CLI Action的议题评论到API密钥泄露

Google的Gemini CLI Action在"Additional Content"部分将议题标题、正文和评论纳入Agent提示上下文。攻击者通过在其后注入伪造的"Trusted Content Section",就能覆盖Gemini的安全指令,导致Gemini将GEMINI_API_KEY作为公开议题评论发布。该漏洞由研究员Neil Fendley与约翰霍普金斯大学团队通过Google VRP(#1609699)报告,获得q,337奖金。

漏洞详情3:Copilot Agent的三重防御绕过

GitHub Copilot Agent的漏洞在技术上最为复杂。GitHub原本实施了环境变量过滤、密钥扫描和网络防火墙三层运行时防护措施,但均被绕过:

  • 环境过滤绕过UU()函数仅过滤子bash进程的敏感变量。通过从该子进程运行ps auxeww可读取未过滤的父Node.js进程和MCP服务器的/proc/[pid]/environ,获取GITHUB_TOKENGITHUB_COPILOT_API_TOKEN及另外两个凭证。
  • 密钥扫描绕过 :GitHub扫描器检测ghs_/ghu_令牌前缀。在提交前对输出进行Base64编码可规避所有模式匹配。
  • 防火墙绕过 :编码后的凭证文件通过标准git push操作外泄至PR------这是白名单操作,与正常Copilot工作流活动无异。
组件 注入点 外泄渠道 泄露凭证 奖金
Claude Code PR标题 PR评论 ANTHROPIC_API_KEY, GITHUB_TOKEN q00
Gemini CLI 议题评论 议题评论 GEMINI_API_KEY q,337
Copilot Agent 议题正文(HTML注释) Git提交 GITHUB_TOKEN, COPILOT_API_TOKEN $500

这三个漏洞存在相同的架构缺陷:不受信任的GitHub数据流入持有生产密钥且在同一运行时拥有无限制工具访问权限的AI Agent。研究人员指出,这是首次公开演示单个提示注入模式攻破多个主流AI Agent(包括一个已部署三重运行时防护的Agent)的跨厂商案例。

缓解措施

  • 采用工具白名单而非黑名单 :使用--allowed-tools仅授予最低必要权限;黑名单(如阻止ps)很容易通过cat /proc/*/environ等替代方法绕过。
  • 最小权限密钥原则 :执行只读任务(如议题分类)的Agent不应持有具有写权限的GITHUB_TOKEN
  • 设置人工审批环节:在Agent执行出站操作或访问凭证前要求人工批准。
  • 审计所有AI Agent集成:检查CI/CD管道中的AI Agent集成,并监控Actions日志中的异常凭证访问模式。

安全专家警告,这种攻击模式不仅限于GitHub Actions,任何处理不受信任输入且能访问工具和密钥的AI Agent(包括Slack机器人、Jira Agent、邮件Agent和部署自动化管道)都可能受到影响。

相关推荐
fzil0012 小时前
GitHub 项目自动 Star + Issue 监控
人工智能·github·issue
Daydream.V2 小时前
github基础入门及git安装配置
git·github·git学习·github学习
万琛2 小时前
【 GitHub GraphQL 】查询优化
github·graphql
Java_2017_csdn3 小时前
‌IntelliJ IDEA 2026.1 中 Git、GitHub、GitLab 功能对比与实操指南
git·github·intellij-idea
本地化文档3 小时前
rustup-book-l10n
rust·github·gitcode
wohehe17 小时前
Android项目工程化-Github Actions
linux·github
Yunzenn17 小时前
CRAG 架构与置信度路由
github
逛逛GitHub21 小时前
YC 总裁开源了自己亲手写的 AI Agent 大脑,1 周就 1 万点赞。
github
CoderJia程序员甲1 天前
GitHub 热榜项目 - 日榜(2026-04-21)
ai·大模型·llm·github·ai教程