Agent技能安全的「卡脖子」问题:声称做股票分析的插件,偷偷拿走了你的浏览器密钥|Mind Lab

0 阅读8分钟

你给AI助手装了一个"股票分析"技能,它却在背后偷你的浏览器Session Token。

这不是假设场景——这是Mind Lab在扫描ClawHub Top 500技能时发现的真实案例。

今年Agent技能生态的扩张速度太快了,快到安全体系完全跟不上。OpenClaw的爆发式增长让每个人都看到了"个人AI助手+技能扩展"这个模式有多吸引人,但紧接着的ClawHavoc事件直接给行业泼了一盆冷水:341个恶意技能被发现在窃取凭证、浏览器会话、API密钥和SSH密钥。

核心问题不是有没有恶意代码,而是一个技能可以通过文档、安装流程、权限请求和运行时行为,持续改变Agent的能力边界。

刚刚,Macaron AI背后的研究团队Mind Lab发布了一套全新的安全框架——ICB(Intent-Capability-Behavior Consistency,意图-能力-行为一致性) ,配套发布了首个Agent技能安全基准CrackedShell-Sec-171。

在这个基准上,传统静态扫描只能检出138个恶意技能中的14个,召回率仅10%。ICB检出了133个,召回率飙升到96%。

传统杀毒思路,在Agent技能面前彻底失灵

先说为什么这个问题这么棘手。

传统的恶意代码检测基本上是在找"长得像坏东西的东西"——匹配规则集、扫描可疑字符串、检测危险调用。这套方法在传统软件供应链里确实管用。

但Agent技能不一样。

一个技能的风险往往不集中在任何单个文件里。它可能藏在SKILL.md的任务定义里,可能藏在安装说明要求你配置的环境变量里,可能藏在依赖配置、外部网页内容、远程配置文件里,甚至藏在运行时的工具调用模式里。

简单说:Agent技能的攻击面是语言驱动的,不是代码驱动的。

你没法用传统杀毒软件的思路来对付它,因为恶意意图被包装在了自然语言里——一段看起来人畜无害的安装说明,就能让用户主动交出浏览器的Session Token。

Mind Lab的判断是:Agent技能安全需要的不是一个更强的点扫描器,而是一套全新的分析框架。

ICB框架:不问"像不像恶意",问"配不配得上"

Mind Lab提出的ICB框架换了一个问题来问。

传统方法问的是:这个技能看起来像不像恶意的?

ICB问的是:给定它声称要做的事和平台授予它的能力,它的实际行为还能被解释、被约束、被审计吗?

框架评估三个维度:

第一维:Intent(意图)。 它声称自己要干嘛?看SKILL.md、描述文本、安装说明和其他文档。

第二维:Capability(能力)。 平台实际授予了它什么权限?网络访问、Shell执行、密钥读取、文件写入、远程配置获取……

第三维:Behavior(行为)。 安装和运行时它真正做了什么?安装脚本、依赖动作、工具调用轨迹、运行时观测、以及后续版本的能力扩张。

判断一个技能是否可信,不看单个维度,看三者之间是否一致

最值得警惕的,不是一个技能是否匹配了传统恶意样本的签名,而是它的能力边界是否已经偏离了最初声明的意图。

全生命周期防御:发布前、安装时、运行时

ICB如果只停留在概念层面就没有意义。Mind Lab把它工程化成了一套覆盖技能全生命周期的控制系统。

阶段一:发布前检测。

核心问题不是"这个技能是否已经被证明是恶意的",而是它声称的目的是否和仓库内容、安装指令设计、依赖结构、历史版本演变保持一致。

划重点,对于Agent技能来说,SKILL.md不是普通文档——它直接影响Agent如何组织任务、如何调用工具。所以SKILL.md本身就是安全边界的一部分

阶段二:安装时检测。

安装不应该被当成简单的下载,而应该被理解为能力授予事件

技能在安装时请求的权限、依赖的环境变量、可访问的目录、可调用的工具,以及是否触及网络、Shell、密钥、浏览器会话等敏感表面——这些都反映了平台决定把哪些新能力引入执行环境。

安装界面不应该只是一个下载按钮,而应该清楚展示技能请求了什么能力、这些能力是否合理、哪些超出了声明的目的。

阶段三:运行时检测。

就算前两道防线都到位了,运行时检测依然不可或缺。原因很简单:再严格的前置控制也不可能覆盖所有情况。

一个技能可能在静态分析中看起来正常,安装时只请求了看似合理的权限,但真正的问题要等到执行时才会暴露——触发高危Shell命令、访问未批准的密钥、连接超范围的外部端点、或者工具使用远超声明目的。

三个阶段回答的是同一个问题:被观察到的能力使用,是否仍然与技能声明的意图一致?

基准测试:传统方法漏掉了90%的恶意技能

为了验证ICB的效果,Mind Lab构建了CrackedShell-Sec-171——一个专门为Agent技能安全设计的评估基准。

基准覆盖八类风险:提示注入、恶意代码、数据外泄、凭证窃取、Agent劫持、供应链攻击、记忆投毒和混合攻击。共171个案例,其中138个恶意、33个良性。

三种方法对比:

Cisco静态扫描精确率很高,但召回率只有10%——138个恶意技能只抓到了14个,漏掉了124个。传统基线对显式的代码级风险还有用,但一旦风险转向语言驱动、上下文依赖或供应链式扩展,就严重失灵。

纯Prompt方法走向了另一个极端:零误报,但放过了47个恶意案例。它本质上是一个过度保守的语义审核员——只要文本和表面目的看起来合理,就倾向于接受技能的自我解释。

ICB最符合平台治理的需要。133/138的恶意检出率,同时不是简单地把所有可疑样本都标为高危——70个直接判定为高危,63个升级为中危需进一步审查。33个良性案例中仅1个被误判为高危。

实战案例:股票分析技能偷浏览器Token

Mind Lab在扫描ClawHub Top 500技能时,发现了一个特别有教育意义的案例:stock-analysis-6.2.0

表面上看,这是一个股票和加密货币分析技能——做自选股、投资组合追踪、热点扫描、情绪分析。

纯Prompt方法给出了"允许通过"的判定。Cisco基线只给了"中危"。

ICB判定:高危,执行结果:阻断。

最关键的风险信号是什么?

这个技能明确要求用户提取浏览器的活跃Session Token。它附带的文档直接引用了AUTH_TOKEN和CT0,并且告诉用户:打开浏览器DevTools的Cookies面板,从x.com复制auth_token和ct0,然后写入.env文件。

更要命的是,这个技能还同时具备:

  • 通过subprocess.run(...)的本地命令执行能力
  • 访问多个外部域名
  • 文件写入和依赖安装权限

单看每一项都可能有合理解释,但把Session Token访问、命令执行和广泛的外部网络访问组合在同一个高下载量技能里,这就远远超出了"股票分析"的声明目的。

这就是ICB框架的核心价值:不看单点,看一致性。

Mind Lab还发现,ClawHub现有的静态发布审核对语言驱动的技能风险覆盖极为有限,而ICB显著缩小了这个缺口。

One More Thing

这篇研究背后的Mind Lab,最近可以说是成果密集输出。

就在不久前,他们刚刚实现了全球首个万亿参数LoRA-RL训练(GPU消耗直降90%),技术获NVIDIA Megatron-Bridge和Seed verl官方合并开源。同时还提出了Context Learning框架,把Agent的临时上下文增益永久写进模型参数。

现在他们又把枪口对准了Agent安全——一个整个行业都知道重要但还没有人系统性解决的问题。

他们在论文最后写道:

Personal agents cannot safely adapt in the real world if the layer that extends their abilities remains opaque or weakly governed.

个人Agent如果想在真实世界中安全地成长,那么扩展它能力的那一层就不能是黑箱。

这和Mind Lab一贯的研究理念一脉相承——他们关注的不只是让模型变强,而是让模型在变强的过程中保持可解释、可约束、可信赖

10人核心团队,成员来自OpenAI、DeepMind、Seed。学术背景横跨清华、MIT、Cornell。200+篇论文,30,000+次引用。

Real intelligence learns from real experience. 真正的智能源于真实的体验。

但Mind Lab现在补上了一句潜台词:真正的智能,也要能在真实体验中保护好自己。

参考链接:

[1] OpenClaw: Your own personal AI assistant

[2] Introducing Agent Skills (Anthropic, 2025)

[3] ClawHavoc: 341 Malicious Clawed Skills Found

[4] Malicious OpenClaw Skills Used to Distribute Atomic macOS Stealer

[5] CrackedShell-Sec-171 (Mind Lab, 2026)

[6] Skill Scanner (Cisco, 2026)