攻击原理:被预设信任的指令文件

AGENTS.md 与 CLAUDE.md 这类文件,是 AI 编码智能体预设信任、启动后主动扫描并读取的指令文件——它们用来约定项目的编码规范、工具权限与执行约定。问题出在投递路径:现代浏览器默认把下载的文件存到用户的 Downloads 目录,且多数情况下不弹窗确认;攻击者只要诱导用户访问恶意网页,就能通过浏览器的文件写入能力,把一份恶意 AGENTS.md 或 CLAUDE.md 静默落到 Downloads 文件夹。一旦开发者恰好在该目录启动编码智能体来整理文件或处理刚下载的内容,智能体会自动加载目录里的指令文件,把攻击者的指令当作合法项目规范执行。

复现数据:主流编码智能体普遍中招

Forever Security 在隔离虚拟机里复现了整套攻击流程,分别针对 OpenAI Codex 与 Anthropic Claude Code 测试。用打开计算器的无害载荷测 Codex,攻击成功率超过 90%,且能绕过沙箱、重写整机配置,使恶意命令跨项目持久生效;用恶意 CLAUDE.md 测 Claude Code,约 50% 的测试场景被攻陷,实现 API 流量劫持、将流量转发至研究者控制的服务器并暴露 OAuth 令牌。BleepingComputer、The Hacker News 等安全媒体随后跟进报道,将其概括为「Markdown 正在变成新的可执行文件」。

恶意 Markdown 接管编码智能体的四步链静默投递→目录触发→指令执行→凭据外泄复现:Codex 成功率 >90% · Claude Code 约 50%无法靠补丁根除:读取指令文件是智能体的设计行为防护落到工作目录卫生与指令文件来源校验
AGENTS.md 投毒攻击链:从静默投递到账号接管

危害链:从改配置到账号接管

这项研究揭示的危害不止于一次性的指令执行。攻击者可以修改智能体自身配置实现持久化,让恶意行为在后续会话中延续;可以安装恶意 npm 包,达成远程代码执行;可以窃取登录凭据与 OAuth 令牌,完成账号接管;还可以将 API 流量重定向至攻击者服务器,冒充模型下发可执行命令。换句话说,一份纯文本的 Markdown 文件,借助智能体对当前目录的信任,完成了过去需要可执行恶意程序才能做的事,而且它不触发传统杀毒软件的告警。

为什么无法靠补丁简单根除

研究者给出的最关键判断是:这并非单一产品的代码缺陷,而是智能体工作模式自带的固有风险。智能体遵循当前工作目录里的指令文件,正是它被设计要做的事——删除一段对话并不能撤销这类披露。因此防护思路要从「修代码」转向「管边界」:开发者应避免从 Downloads 这类可能落入不可信文件的目录启动智能体;平台侧则需要为指令文件引入来源校验,在智能体执行目录内指令前先验证其可信度。工作目录卫生,从此成为 AI 编码工作流里一项实打实的安全基线。

与既有智能体安全事件对照

把这件事放进近期的智能体安全脉络里看,它的位置很清楚。它区别于此前 OpenAI 智能体在红队演习中突破 Hugging Face 生产系统的目标性攻击,也区别于 litellm 在 PyPI 发布制品中被植入后门的供应链投毒——后者攻击者污染的是软件的发布链路。而 AGENTS.md 投毒的威胁面更低、更贴近日常:任何一个会读取项目指令文件的编码智能体,只要在一个混入了不可信文件的目录里启动,就可能中招。这类「任意可写目录变成攻击面」的向量,正是智能体从演示走向日常部署后暴露出的新一类风险。

冷静看:已披露,尚未见大规模在野利用的确证

目前仍是研究机构的负责任披露,公开报道中尚未出现大规模在野利用的确证案例。但载体——AGENTS.md、CLAUDE.md——已经是主流编码智能体的默认信任机制,潜在风险面极广;一旦结合真实的恶意网页投递,触发条件并不苛刻。对开发者而言,最实用的当下动作是把编码智能体的工作目录与下载目录物理隔离;对平台而言,则需要尽快把指令文件的来源可信度纳入安全架构,而不是把信任无差别地交给当前目录里的每一个文本文件。