MCP 隐形字符检测器被反例攻破后,作者公开修正方案

blitzcrieg11 · reddit · 2026-10-20

作者此前发布了一个检测 MCP 工具描述中隐形字符的「投毒检测器」,声称这些字符无合法用途,结果 r/mcp 网友一天内给出三个反例全部误报。这篇复盘讲清了攻击原理与修正思路。

攻击原理:Unicode 标签字符(U+E0000–U+E007F)与 ASCII 一一对应且不渲染,附加到工具描述后等于写入一条审批弹窗看不见的指令——你批准的是一个字符串,模型读到的是另一个。

三个击穿「无合法用途」的反例

修正:看上下文而非字符

仍未解决:纯可见英文的注入完全不需要这些字符,干净描述不等于可信描述。工具在首次 tools/list 时运行,并给每个工具做指纹以发现配置不变但描述变更的「rug-pull」模式;只存计数不存文本,本地运行、已开源(agentmetry)。

原文链接 →

「编程与Agent」频道最新

更多「编程与Agent」频道 AI 资讯 →