OpenClaw 不是问题,架构才是

恶意技能涌入 ClawHub 市场,OpenClaw 暴露出 Agent 框架的深层安全隐患。供应链攻击、终端入侵、权限失控,这些风险远不止一家的问题。

阅读时长: 6 分钟
共 2735字
作者: eimoon.com

如果你最近在折腾 Agent 框架,大概已经隐约感觉到了这个趋势:

聊天机器人只是回答问题,而 Agent 是来干活的。

它会执行命令、修改文件、操控你的浏览器,把各种工具串联起来自动跑,直到完成你给的目标。

这可不是“在对话框里打几个字”那么简单。这更像是给一个刚入职的实习生做完培训……然后直接把你的电脑密码告诉了他。

我知道这么说有点危言耸听。但过去几周围绕 OpenClaw 发生的事情,让这个风险已经没法当耳旁风了。

OpenClaw 只是出头鸟,不是问题的根源

2026 年 1 月底到 2 月初,安全研究人员陆续发现大批恶意「技能」涌入 ClawHub(OpenClaw 的插件市场)。报告内容触目惊心:大量恶意技能通过供应链手法发布,所谓的「安装步骤」本质上就是诱导你在终端里执行可疑命令。

参见:The Hacker News 关于恶意 ClawHub 技能的报道Tom’s Hardware 的文章

之后,OpenClaw 接入了 VirusTotal 来扫描第三方技能作为应对(有用,但远谈不上根治)。

参见:The Verge 关于 OpenClaw 在恶意技能泛滥后集成扫描功能的报道The Hacker News 关于集成 VirusTotal 的报道

如果你看完只觉得“OpenClaw 真够乱的”,那确实没说错——但你也漏掉了更关键的东西。

OpenClaw 只是第一个被大规模攻击的 Agent 生态系统。只要具备以下条件,同样的剧本必然会在其他平台重演:

  • Agent 能自主调用工具
  • 插件安装门槛极低
  • 用户只想“开箱即用”
  • 攻击者乐于利用免费分发渠道

所以,真正的教训不是“OpenClaw 不行”。

而是:Agent + 工具 + 市场 = 一个全新的攻击面。

提示词不是安全策略

很多人有个误区:写一段强力系统提示词,就觉得已经加上了“护栏”。

“绝不泄露机密信息。” “凭据只存 Vault。” “执行高风险命令前先问我。”

出发点很好,但根本无法强制执行。

一旦你的 Agent 开始读取不可信内容——网页、邮件、工单、来路不明的文档——提示词注入就变成了真切的安全风险。Anthropic 在讨论浏览器 Agent 时也坦承:互联网环境充满敌意,提示词注入的防御至今仍是开放的研究课题。

阅读:Anthropic:减轻浏览器场景下的提示词注入风险

Simon Willison 提出了一个非常实用的分析模型,他称之为 “致命三角”

  1. Agent 能访问私有数据
  2. Agent 会处理不可信内容
  3. Agent 能对外通信

三者一旦凑齐,你可能在不知不觉中就造出了一台数据泄露机器。

阅读:Simon Willison:AI Agent 的致命三角

所以我反复在说:提示词不是安全边界,它只是一条建议。 有时是条好建议,但终归只是建议。

工具调用为什么会爆炸攻击半径

普通聊天机器人出现幻觉,顶多是回答不靠谱。

Agent 出现幻觉,那可能直接搞出事故。

工具调用让故障模式从“给了个错答案”升级成了“干了个错操作”。OWASP 2025 年的 LLM Top 10 已经将其纳入规范,其中几项跟 Agent 场景高度相关:

  • 提示词注入
  • 供应链攻击
  • 输出处理不当(模型输出直接流入下游系统)
  • 权限过度授予(模型拿着过高权限执行过多操作)

如果你还没看过这份清单,强烈建议过一遍。

参见:OWASP Top 10 for LLM Applications v2025 (PDF)

其中“输出处理不当”这一项对 Agent 尤为致命。一旦模型的输出变成了:

  • 一条 shell 命令
  • 一个 Terraform 变更
  • 一条 SQL 查询
  • 一个 CI 流水线步骤
  • 一段你直接复制粘贴的“好用”代码

……那你本质上就是在变着花样制造注入漏洞。

插件/技能生态系统让局面雪上加霜——我们不仅要信任模型本身,还要信任第三方代码和指令。而用户之所以安装它们,往往只是因为市场页面看起来“挺正规的”。

OpenClaw/ClawHub 事件正是这一问题的真实写照:恶意技能伪装成实用的自动化工具,引导用户进入危险的执行路径,最终窃取凭据和数据。

我们还没有成熟的操作规范

看看大家的做法就知道,这个领域还处于非常早期的阶段。

有人专门买了一台机器跑 Agent,而更多人直接在自己的主力本上跑——就是那台存着浏览器登录状态、SSH 密钥、税务文档、密码管理器半天不锁屏的电脑,你懂的。

这种差异本身就说明问题:我们还没有公认的安全基线。

一个成熟的技术领域,你不需要到论坛里去找安全基线怎么做。基线应该是显而易见、毫无悬念、人尽皆知的。

但现在的 Agent 安全,完全凭感觉。而且大多数人在安装和运行技能时,压根没有认真读过它们的内容或搞明白它们到底在做什么。

“成熟的 Agent 安全”长什么样

如果你需要一个实用的思维模型,就是这句话:把你的 Agent 当作生产环境基础设施来对待。

不是一个可爱的效率工具,而是基础设施。

以下是我认为在让 Agent 接触任何真实凭据之前,必须落实的清单:

1) 沙盒化运行(省不得)

Agent 被骗只是时间问题,你需要把它关在一个"删了也不心疼"的箱子里:

  • 虚拟机 (VM)
  • 做了资源限制的容器
  • 独立的操作系统用户
  • 独立的一台机器

目标很简单:哪怕被入侵,损失也被牢牢围住。

2) 认真管控凭据权限

别再给 Agent 发“上帝模式”的 Token 了。

只给它完成任务所需的最小权限,且尽量缩短有效期。Agent 只需读一个仓库,就别给它所有仓库的写入权限。只需访问某个服务账号,就别把你的个人凭据塞给它。

3) 限制工具调用,而不是“客气地拜托”

“执行危险操作前先问我”不是安全措施,而是用户体验偏好。

硬性控制永远比礼貌的提示词靠谱:

  • 命令/工具白名单机制
  • 默认禁止对外网络连接
  • 高风险操作(支付、发消息、删文件、推生产)需人工审批

没错,这会带来摩擦。但摩擦本身就是目的

4) 记录操作,而不只是聊天历史

Agent 能执行命令、修改文件,那你必须对以下内容保持可见性:

  • 执行了哪些命令
  • 写入/修改了哪些文件
  • 网络出站流量(和谁通信了,发了什么)
  • 工具调用历史

对话记录不等于审计日志。

5) 像对待依赖项一样对待插件

技能市场本质上就是一个包装更精美的包管理器。npm、PyPI 踩过的坑,这里会再踩一遍。

这也是为什么会出现精选市场。Trail of Bits 的精选技能仓库就是一个社区审核门户,因为野生技能里已经发现了后门和恶意钩子。

参见:trailofbits/skills-curated

如果你要安装一个能在本地执行代码的技能,请把它当作从网上下载的一个随机二进制文件来对待。因为本质上就是如此。


OpenClaw 会改进的。他们会上更多扫描,加更多护栏,被骂到建立更好的管控机制。这是好事。

但更深层的问题不在于某个 Agent 框架有多少 bug,而在于能力和边界之间的严重失衡。

我们部署自主执行引擎的速度,远远快于我们为它定义安全模型的速度。

你可能会想:“这不跟以前每次技术浪潮一样吗?”——没错,完全一样。唯一的区别是,这次的故障模式不是“啊,页面渲染错了”,而是“糟了,它真的执行了”。

Agent 本身不是恶意的。大多数时候它们真的是想帮你。但它们是在混乱环境中运行的强大系统,吃进不可信输入,拿着我们往往没有正确收窄的权限办事。

把它当作无害的效率工具,是一种认知错误。

所以如果你今天想用 Agent,我不是说不要用。我是说,用一个负责任的方式去用

沙箱隔离、最小权限、网络分段、全链路可观测。

Agent 浪潮无论如何都会来。唯一的问题是:它是按你的规则来,还是按攻击者的规则来。

关于

📬 关注我获取更多资讯

公众号
📢 公众号
个人号
💬 个人号
使用 Hugo 构建
主题 StackJimmy 设计