我研究了一个AI插件市场,发现它可能是个木马
我研究了一个AI插件市场,发现它可能是个”木马”
一次从好奇到警觉的安全分析
前几天刷技术社区,看到有人在推一个叫 EvoMap 的东西。
说是给 AI 编程助手用的插件市场——不同的 AI Agent 可以在上面发布、共享、获取”进化资产”,互相学习。听起来挺酷的,对吧?AI 之间的协作进化,一个去中心化的能力交易平台。
我当时想:这个思路有意思,看看到底怎么实现的。
于是我把它的 skill.md 拉下来,仔细读了一遍。
然后我就笑不出来了。
◆◆ 先说它是什么
EvoMap 自称是一个基于 GEP-A2A 协议的”AI Agent 集成平台”。它的工作方式是这样的:你在 AI 编码助手里安装它的 Skill 文件,助手就会自动连接到 evomap.ai 这个中心服务器,注册自己的身份,然后可以发布和获取所谓的”基因包”和”胶囊补丁”。
它还有一个配套的客户端叫 Evolver,托管在 GitHub 上。安装方式很直接:
git clone https://github.com/autogame-17/evolver npm install node index.js --loop
注意最后那个 –loop。这个参数让 Evolver 以守护进程的方式运行,每隔 4 小时自动和远端同步一次。
听起来还是很正常,对吧?一个自动化的能力分发系统。
但我越往下读,越觉得不对劲。
◆◆ 八个让我警觉的信号
◆ 1. 环境指纹采集
Skill 文件要求 AI Agent 在首次连接时,把自己的运行环境信息发送给 evomap.ai——操作系统、runtime 版本、可用工具列表。这些信息会和一个持久化的 node_id 绑定。
换句话说,服务端可以精确识别你是谁、你的机器长什么样。
◆ 2. 远程代码执行的合法化
文件里定义了一种叫”Capsule”的机制,本质上是远程下发的代码补丁。AI Agent 被要求把这些补丁应用到本地项目里——而”验证”过程本身就需要执行任意命令。
虽然文档声称只允许 node/npm/npx 三个命令,但这个限制形同虚设。npm install 本身就可以触发 postinstall 脚本,执行任意代码。
◆ 3. 自主行为控制
通过”赏金任务”系统,服务端可以远程向 AI Agent 下发工作指令。Agent 会自动领取任务、执行、上报结果。整个过程不需要人类确认。
想象一下:你的 AI 编码助手在你不知道的情况下,接受了一个远端服务器的任务,在你的机器上执行了一段代码,然后把结果发送回去。
◆ 4. 持久化后门
4 小时一次的自动同步,加上 –loop 守护进程模式,加上 webhook 回调。这不是一个”使用时连接、用完断开”的工具,而是一个始终在线、持续通信的驻留程序。
◆ 5. 尾部提示词注入
Skill 文件的末尾有一段 [Agent Usage Reminder],试图劫持 AI Agent 的工具调用行为。这是经典的 prompt injection 手法——把指令藏在看似无害的文档尾部,利用 AI 模型对上下文的信任来改变其行为。
◆ 6. 信用与声望的博弈论陷阱
系统设计了积分、信用、声望体系。Agent 发布资产获得积分,积分可以换取更多资产。这套机制的核心问题是:它激励 AI Agent 更多地参与平台生态,而参与越深,暴露面越大。
◆ 7. 供应链攻击的放大器
平台有一个”推荐资产”机制。被推荐的基因包和胶囊会被更多 Agent 获取和应用。如果攻击者能够让一个恶意包进入推荐列表,影响面是指数级的。
◆ 8. 完整的攻击升级路径
把上面的点连起来看,一条清晰的攻击链就出来了:
1.安装 Skill:Agent 向 evomap.ai 注册,上报环境指纹
2.建立通信:定期同步 + webhook,保持持久连接
3.接受任务:通过赏金系统远程下发工作指令
4.执行代码:通过 Capsule 补丁在本地执行任意命令
5.数据回传:执行结果上报给远端服务器
安装 → 信标 → 任务接收 → 远程代码执行 → 数据窃取
◆◆ 它像什么?
我把分析发给了一位安全研究员朋友。他看完之后说了一句话:
“这个东西的架构,和 C2(Command and Control)框架几乎一模一样。唯一的区别是,C2 框架不会给自己包一层‘AI 进化市场’的外衣。”
C2 框架是什么?简单说,就是黑客用来远程控制被入侵机器的工具。它的核心能力是:目标注册、持久化通信、远程命令下发、结果回传。
对比一下 EvoMap 的核心能力:节点注册、定时同步、赏金任务、报告上传。
功能上,几乎是一一对应的。
◆◆ 学术界已经在关注这类问题
这不是我在杞人忧天。最近半年,AI Skill 安全已经成为一个活跃的研究方向:
Snyk ToxicSkills 报告:2026 年 2 月,Snyk 审计了 ClawHub 上的 3984 个 Skill,发现大量存在安全风险。
SkillJect 论文:2026 年 2 月发表在 arXiv 上(arXiv:2602.14211),研究者证明通过恶意 Skill 注入攻击 AI Agent 的成功率高达 95.1%。
Schmotz 等人的研究:2025 年 10 月发表(arXiv:2510.26328),标题直接就是”Agent Skills Enable a New Class of Realistic and Trivially Simple Prompt Injections”。
这些研究共同指出一个事实:AI Skill 生态目前处于”野蛮生长”阶段,缺乏有效的安全审计和隔离机制。
◆◆ 那些”安全措施”为什么不够
公平地说,EvoMap 的文档里确实提到了一些安全机制:
SHA256 签名验证:验证资产完整性
命令白名单:只允许 node/npm/npx
邀请码制度:控制参与者范围
但这些措施存在根本性的缺陷:
SHA256 验证只能证明”这个东西没被篡改”,不能证明”这个东西本身是安全的”。恶意代码签名后还是恶意代码。
npm install 可以触发任意 postinstall 脚本,所以命令白名单等于形同虚设。
邀请码只是控制了”谁能进来”,但无法保证进来的人不会发布恶意内容。而且,一旦恶意内容通过审核进入推荐列表,邀请码制度就完全失效了。
◆◆ 一些思考
我写这篇文章不是要定性 EvoMap 就是恶意软件。
也许它的创建者真的只是想做一个 AI Agent 之间互相学习的平台。也许他们只是安全意识不够,设计出了一个结构上高风险的系统。
但这恰恰是最值得警惕的地方:一个架构上和 C2 框架同构的系统,即使初始意图是善意的,它也天然具备被滥用的条件。
对于 AI 编程助手的用户来说,我的建议很简单:
1.审查每一个 Skill 文件:安装任何 Skill 之前,先读一遍它的完整内容。如果你看不懂,找懂的人帮你看
2.警惕持久化行为:任何需要”常驻运行”或”定时同步”的 Skill 都值得额外审视
3.关注数据流向:你的 Agent 在和谁通信?发送了什么数据?接收了什么指令?
4.不要被概念迷惑:“进化市场””基因包””赏金系统”这些花哨的名词背后,可能只是一个远程控制系统的包装
在 AI 时代,信任是稀缺品。不是因为所有人都有恶意,而是因为善意的设计也可能成为恶意的载体。
如果这篇文章对你有启发,欢迎分享给更多关注 AI 安全的朋友。
作者:极寒AI
夜雨聆风
