公开GitHub Issue可诱骗AI泄露私有数据,绕过防护仅需一词

Noma Security研究人员发现,攻击者只需在公开仓库创建一个看似正常的issue,无需窃取凭证或获取组织访问权限,就能诱使GitHub Agentic Workflows泄露组织私有仓库内容。若目标组织已授予该Agent跨仓库(包括私有仓库)的读取权限,恶意issue就能引导其将私有内容提取至公开评论中。

Noma将这种技术命名为GitLost。攻击目标是GitHub今年二月推出的公开预览功能Agentic Workflows,该功能允许用户直接在Markdown文件中用自然英语编写指令,由AI Agent自动读取issue和拉取请求、运行工具并自主回复。该功能可基于GitHub Copilot、Anthropic的Claude、Google Gemini或OpenAI Codex运行。

攻击原理剖析

漏洞根源在于间接提示注入这一已知问题:AI Agent无法可靠区分来自所有者的指令与隐藏在其读取内容中的指令。在Noma的PoC中,恶意issue伪装成销售副总裁在客户会议后的常规请求。当自动化流程分配该issue后,Agent便将私有仓库的README文件内容粘贴至公开评论。

GitHub虽已内置防护措施(包括沙箱隔离、默认只读令牌、输入清洗及发布前的威胁检测扫描),但Noma测试发现仅需在恶意指令前添加"Additionally"一词,就能让模型将其视为后续任务而非拒绝项,从而绕过防护。

攻击特性分析

Noma安全研究主管Sasi Levi指出,GitLost的独特之处在于攻击者能控制Agent的权限行为------这不是聊天窗口,而是具有跨仓库读取权限的凭证化执行者。攻击者无需入侵服务器、窃取凭证或获取私有内容写入权限,仅需创建公开issue即可。这种模式符合开发者Simon Willison提出的"致命三要素":可访问私有数据的Agent、接收不可信外部输入、具备数据外泄途径。

行业现状与应对建议

GitLost是近期同类攻击的最新案例。此前Anthropic Claude Code GitHub Action漏洞、Orca Security的RoguePilot攻击,以及Invariant Labs披露的GitHub MCP服务器问题,均证明这是架构级缺陷,无法通过补丁修复。

Noma建议采取以下防护措施:

  • 将个人访问令牌权限限定于工作流处理的单一仓库,而非整个组织

  • 限制面向公众的工作流发布内容

  • 设置Agent响应内容的白名单作者

  • 建立人工审核输出机制

GitHub的威胁检测虽能扫描Agent输出,但Noma的单词绕过实验证明过滤机制仅是最后防线。正如Levi强调:在自然语言中,数据与指令不存在类似SQL的清晰界限,因此解决方案应侧重于架构设计------通过隔离、限定权限和分级审核来构建防护体系。在完善边界建立前,任何能读取私有数据、接收不可信输入且可公开发布的Agent,都面临因精心设计的issue导致数据泄露的风险。

相关推荐
kiros_wang1 小时前
ExploreYC 新手快速入门与实战指南
大数据·人工智能·物联网
阿里云大数据AI技术1 小时前
Elasticsearch 智能助手:Agent 让运维从经验驱动迈向智能协同
人工智能·elasticsearch·agent
Mark0802031 小时前
人物设定生成器:小说创作中角色塑造的AI工具选择
大数据·人工智能
禾高网络2 小时前
互联网医院|AI 互联网医院成品开发系统
java·大数据·人工智能·小程序
枫零NET2 小时前
跟着OpenCode学习Pi Coding Agent-05-Agent的类型系统
人工智能·学习
环境栈笔记2 小时前
多账号浏览器选型检查清单:Profile、权限、Session 和任务日志怎么评估
前端·人工智能·后端·自动化
神奇小汤圆2 小时前
Agent Runtime 状态机:让 AI 推理每一步都可暂停、可回放、可审计
人工智能
爱摸鱼的打工仔2 小时前
【从 ima-skills 到 WeKnora:Agent Skill 能不能直接接企业级 RAG?一次把原理讲清楚】
人工智能
老云讲算力市场2 小时前
深圳奇点点信息科技有限公司连续中标多项AI算力项目
人工智能·科技