Skip to main content
版本: 1.0-draft | 框架: MITRE ATLAS(AI 系统的对抗性威胁版图)+ 数据流图 本威胁模型记录了针对 OpenClaw AI 智能体平台和 ClawHub 技能市场的对抗性威胁。它是一份由 OpenClaw 社区维护的动态文档。请参阅参与贡献威胁模型,了解如何报告新威胁、提出攻击链或建议缓解措施。 关键 ATLAS 资源: 技术 | 战术 | 案例研究 | ATLAS GitHub | 参与贡献 ATLAS

1. 范围

组件已包含说明
OpenClaw 智能体运行时核心智能体执行、工具调用、会话
Gateway 网关身份验证、路由、渠道集成
渠道集成WhatsApp、Telegram、Discord、Signal、Slack 等。
ClawHub 市场技能发布、审核、分发
MCP 服务器外部工具提供商
用户设备部分移动应用、桌面客户端
不在范围内的报告和误报模式(公网暴露、没有边界绕过的仅提示注入链、相互不信任的操作员共享一个 Gateway 网关主机,以及其他情况)在 SECURITY.md 中列举;该文件是漏洞报告范围的当前事实来源,而不是本页。

2. 系统架构

2.1 信任边界

┌─────────────────────────────────────────────────────────────────┐
│                    UNTRUSTED ZONE                                │
│  ┌─────────────┐  ┌─────────────┐  ┌─────────────┐              │
│  │  WhatsApp   │  │  Telegram   │  │   Discord   │  ...         │
│  └──────┬──────┘  └──────┬──────┘  └──────┬──────┘              │
│         │                │                │                      │
└─────────┼────────────────┼────────────────┼──────────────────────┘
          │                │                │
          ▼                ▼                ▼
┌─────────────────────────────────────────────────────────────────┐
│                 TRUST BOUNDARY 1: Channel Access                 │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │                      GATEWAY                              │   │
│  │  • Device pairing (1h DM pairing / 5m node pairing TTL)   │   │
│  │  • AllowFrom / allowlist validation                       │   │
│  │  • Token / password / Tailscale auth                      │   │
│  └──────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────────┐
│                 TRUST BOUNDARY 2: Session Isolation              │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │                   AGENT SESSIONS                          │   │
│  │  • Session key = agent:channel:peer                       │   │
│  │  • Tool policies per agent                                │   │
│  │  • Transcript logging                                     │   │
│  └──────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────────┐
│                 TRUST BOUNDARY 3: Tool Execution                 │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │                  EXECUTION SANDBOX                        │   │
│  │  • Docker sandbox (default) or host (exec approvals)      │   │
│  │  • Node remote execution                                  │   │
│  │  • SSRF protection (DNS pinning + IP blocking)            │   │
│  └──────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────────┐
│                 TRUST BOUNDARY 4: External Content               │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │              FETCHED URLs / EMAILS / WEBHOOKS             │   │
│  │  • External content wrapping (random-boundary XML tags)   │   │
│  │  • Security notice injection                              │   │
│  └──────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘


┌─────────────────────────────────────────────────────────────────┐
│                 TRUST BOUNDARY 5: Supply Chain                   │
│  ┌──────────────────────────────────────────────────────────┐   │
│  │                      CLAWHUB                              │   │
│  │  • Skill publishing (semver, SKILL.md required)           │   │
│  │  • Static pattern + AST-adjacent moderation scanning      │   │
│  │  • LLM-based agentic risk review + VirusTotal scanning    │   │
│  │  • GitHub account age verification (14 days)              │   │
│  └──────────────────────────────────────────────────────────┘   │
└─────────────────────────────────────────────────────────────────┘

2.2 数据流

流程来源目标数据保护措施
F1渠道Gateway 网关用户消息TLS、AllowFrom
F2Gateway 网关智能体路由后的消息会话隔离
F3智能体工具工具调用策略执行
F4智能体外部web_fetch 请求SSRF 阻断
F5ClawHub智能体技能代码审核、扫描
F6智能体渠道响应输出过滤

3. 按 ATLAS 战术进行威胁分析

3.1 侦察(AML.TA0002)

T-RECON-001:智能体端点发现

属性
ATLAS IDAML.T0006 - 主动扫描
描述攻击者扫描暴露的 OpenClaw Gateway 网关端点
攻击向量网络扫描、Shodan 查询、DNS 枚举
受影响组件Gateway 网关、暴露的 API 端点
当前缓解措施Tailscale 身份验证选项,默认绑定到 local loopback
剩余风险中等 - 公开 Gateway 网关可被发现
建议编写安全部署文档,在发现端点上添加速率限制

T-RECON-002:渠道集成探测

属性
ATLAS IDAML.T0006 - 主动扫描
描述攻击者探测消息渠道以识别由 AI 管理的账号
攻击向量发送测试消息,观察响应模式
受影响组件所有渠道集成
当前缓解措施无特定缓解措施
剩余风险低 - 仅凭发现本身价值有限
建议考虑响应时序随机化

3.2 初始访问(AML.TA0004)

T-ACCESS-001:配对码拦截

属性
ATLAS IDAML.T0040 - AI 模型推理 API 访问
描述攻击者在配对窗口期间截获配对码(1 小时私信/通用配对,5 分钟节点配对)
攻击向量肩窥、网络嗅探、社会工程
受影响组件设备配对系统
当前缓解措施1 小时 TTL(私信/通用配对),5 分钟 TTL(节点配对);通过现有渠道发送代码
剩余风险中等 - 配对窗口可被利用
建议缩短配对窗口,添加确认步骤

T-ACCESS-002:AllowFrom 欺骗

属性
ATLAS IDAML.T0040 - AI 模型推理 API 访问
描述攻击者在渠道上伪造允许的发送者身份
攻击向量取决于渠道 - 电话号码欺骗、用户名冒充
受影响组件按渠道的 AllowFrom 验证
当前缓解措施渠道特定的身份验证
剩余风险中等 - 某些渠道仍然容易受到欺骗
建议记录渠道特定风险,在可能的情况下添加加密验证

T-ACCESS-003:令牌盗窃

属性
ATLAS IDAML.T0040 - AI 模型推理 API 访问
描述攻击者从配置/凭据文件中窃取认证令牌
攻击向量恶意软件、未经授权的设备访问、配置备份暴露
受影响组件渠道/提供商凭据存储、配置存储
当前缓解措施文件权限
剩余风险高 - 令牌以明文形式存储在磁盘上
建议实现静态令牌加密,添加令牌轮换

3.3 执行(AML.TA0005)

T-EXEC-001:直接提示注入

属性
ATLAS IDAML.T0051.000 - LLM 提示注入:直接
描述攻击者发送精心构造的提示来操控智能体行为
攻击向量包含对抗性指令的渠道消息
受影响组件智能体 LLM,所有输入表面
当前缓解措施模式检测、外部内容包装;在没有边界绕过的情况下,按漏洞报告范围外处理(见 SECURITY.md
剩余风险严重 - 仅检测,不阻断;复杂攻击可绕过
建议对敏感操作进行输出验证和用户确认,并叠加在现有检测之上

T-EXEC-002:间接提示注入

属性
ATLAS IDAML.T0051.001 - LLM 提示注入:间接
描述攻击者在获取的内容中嵌入恶意指令
攻击向量恶意 URL、被投毒的电子邮件、被攻陷的 Webhooks
受影响组件web_fetch、电子邮件摄取、外部数据源
当前缓解措施使用随机边界 XML 风格标记进行内容包装,同形字/特殊令牌规范化,以及安全提示
剩余风险高 - LLM 仍可能忽略包装指令
建议为已包装内容使用单独的执行上下文

T-EXEC-003:工具参数注入

属性
ATLAS IDAML.T0051.000 - LLM 提示注入:直接
描述攻击者通过提示注入操控工具参数
攻击向量影响工具参数值的精心构造提示
受影响组件所有工具调用
当前缓解措施对危险命令使用 Exec 审批
剩余风险高 - 依赖用户判断
建议参数验证、参数化工具调用

T-EXEC-004:Exec 审批绕过

属性
ATLAS IDAML.T0043 - 构造对抗性数据
描述攻击者构造绕过审批允许列表的命令
攻击向量命令混淆、别名利用、路径操控
受影响组件src/infra/exec-approvals*.ts、命令允许列表
当前缓解措施允许列表 + 询问模式,以及命令规范化(dispatch-wrapper 解包、inline-eval 检测、shell-chain 分析)
剩余风险高 - 规范化缩小但不能消除混淆绕过;仅涉及 exec 路径之间一致性的发现被视为加固,而非漏洞(见 SECURITY.md
建议持续扩展命令规范化覆盖范围,以应对新的混淆技术

3.4 持久化(AML.TA0006)

T-PERSIST-001:恶意技能安装

属性
ATLAS IDAML.T0010.001 - 供应链入侵:AI 软件
描述攻击者向 ClawHub 发布恶意技能
攻击向量创建账户,发布带有隐藏恶意代码的技能
受影响组件ClawHub、技能加载、智能体执行
当前缓解措施GitHub 账户年龄验证、静态模式/AST 相邻扫描、基于 LLM 的智能体化风险审查、VirusTotal 扫描
剩余风险高 - 存在检测层,但技能仍以智能体权限运行,且没有执行沙箱隔离
建议技能执行沙箱隔离、扩大社区审查

T-PERSIST-002:技能更新投毒

属性
ATLAS IDAML.T0010.001 - 供应链入侵:AI 软件
描述攻击者攻陷热门技能并推送恶意更新
攻击向量账户入侵、对技能所有者进行社会工程
受影响组件ClawHub 版本管理、自动更新流程
当前缓解措施版本指纹识别,对新版本重新运行审核/扫描
剩余风险高 - 自动更新可能在审查完成前拉取恶意版本
建议更新签名、回滚能力、版本固定

T-PERSIST-003:智能体配置篡改

属性
ATLAS IDAML.T0010.002 - 供应链入侵:数据
描述攻击者修改智能体配置以持久化访问
攻击向量配置文件修改、设置注入
受影响组件智能体配置、工具策略
当前缓解措施文件权限
残余风险中等 - 需要本地访问
建议配置完整性验证、配置更改的审计日志

3.5 防御规避 (AML.TA0007)

T-EVADE-001:审核模式绕过

属性
ATLAS IDAML.T0043 - 构造对抗性数据
描述攻击者构造技能内容以规避 ClawHub 审核检查
攻击向量Unicode 同形异义字符、编码技巧、动态加载
受影响组件ClawHub 审核/扫描流水线
当前缓解措施静态模式规则、AST 邻近代码扫描、LLM 智能体风险审查、VirusTotal
残余风险中等 - 新型混淆仍可能绕过分层启发式检测
建议随着发现新的规避方式,持续扩展模式/行为语料库

T-EVADE-002:内容包装器逃逸

属性
ATLAS IDAML.T0043 - 构造对抗性数据
描述攻击者构造会逃逸外部内容包装器上下文的内容
攻击向量标签操纵、上下文混淆、指令覆盖
受影响组件外部内容包装
当前缓解措施随机边界 XML 风格标记 + 安全提示,以及同形异义字符/空白变体标记伪造检测
残余风险中等 - 新型逃逸会定期被发现
建议除输入侧包装外,增加输出侧验证

3.6 发现 (AML.TA0008)

T-DISC-001:工具枚举

属性
ATLAS IDAML.T0040 - AI 模型推理 API 访问
描述攻击者通过提示词枚举可用工具
攻击向量“你有哪些工具?”风格的查询
受影响组件智能体工具注册表
当前缓解措施无特定措施
残余风险低 - 工具通常已有文档
建议考虑工具可见性控制

T-DISC-002:会话数据提取

属性
ATLAS IDAML.T0040 - AI 模型推理 API 访问
描述攻击者从会话上下文中提取敏感数据
攻击向量“我们讨论了什么?”查询、上下文探测
受影响组件会话转录、上下文窗口
当前缓解措施按发送者隔离会话(agent:channel:peer 键)
残余风险中等 - 会话内数据按设计可访问
建议在上下文中进行敏感数据脱敏

3.7 收集和外泄 (AML.TA0009, AML.TA0010)

T-EXFIL-001:通过 web_fetch 窃取数据

属性
ATLAS IDAML.T0009 - 收集
描述攻击者通过指示智能体将数据发送到外部 URL 来外泄数据
攻击向量提示注入导致智能体将数据 POST 到攻击者服务器
受影响组件web_fetch 工具
当前缓解措施针对内部/私有网络的 SSRF 阻断(DNS 固定 + IP 阻断)
残余风险高 - 仍允许任意外部 URL
建议URL 允许列表、数据分类感知

T-EXFIL-002:未经授权发送消息

属性
ATLAS IDAML.T0009 - 收集
描述攻击者导致智能体发送包含敏感数据的消息
攻击向量提示注入导致智能体向攻击者发送消息
受影响组件消息工具、渠道集成
当前缓解措施出站消息门控
残余风险中等 - 门控可能被绕过
建议对新收件人进行显式确认

T-EXFIL-003:凭证收集

属性
ATLAS IDAML.T0009 - 收集
描述恶意技能从智能体上下文中收集凭证
攻击向量技能代码读取环境变量、配置文件
受影响组件技能执行环境
当前缓解措施ClawHub 凭证模式扫描(硬编码密钥、与网络发送配对的凭证环境访问);运行时没有针对技能的执行沙箱隔离
残余风险严重 - 技能以智能体权限运行
建议技能执行沙箱隔离、凭证隔离

3.8 影响 (AML.TA0011)

T-IMPACT-001:未经授权执行命令

属性
ATLAS IDAML.T0031 - 侵蚀 AI 模型完整性
描述攻击者在用户系统上执行任意命令
攻击向量提示注入结合 Exec 审批绕过
受影响组件Bash 工具、命令执行
当前缓解措施Exec 审批、Docker 沙箱选项(默认运行时后端)
残余风险严重 - 禁用沙箱时可能执行主机命令
建议改进审批 UX;关闭沙箱的部署仍是操作员的有意选择,并按此记录在文档中

T-IMPACT-002:资源耗尽 (DoS)

属性
ATLAS IDAML.T0031 - 侵蚀 AI 模型完整性
描述攻击者耗尽 API 额度或计算资源
攻击向量自动化消息泛洪、昂贵的工具调用
受影响组件Gateway 网关、智能体会话、API 提供商
当前缓解措施
残余风险高 - 没有按发送者限速
建议按发送者限速、成本预算

T-IMPACT-003:声誉损害

属性
ATLAS IDAML.T0031 - 侵蚀 AI 模型完整性
描述攻击者导致智能体发送有害/冒犯性内容
攻击向量提示注入导致不当回应
受影响组件输出生成、渠道消息
当前缓解措施LLM 提供商内容策略
残余风险中等 - 提供商过滤器并不完美
建议输出过滤层、用户控制

4. ClawHub 供应链分析

4.1 当前安全控制

控制措施实现有效性
GitHub 账号年龄requireGitHubAccountAge()(最低 14 天)中等 - 提高新攻击者的门槛
路径净化sanitizePath()高 - 防止路径遍历
文件类型验证isTextFile()中等 - 只扫描文本文件,但仍可被利用
大小限制总包 50MB(MAX_PUBLISH_TOTAL_BYTES高 - 防止资源耗尽
必需的 SKILL.md发布时必须提供 readme安全价值低 - 仅提供信息
静态 + AST 相邻扫描覆盖 exec、外泄、凭据采集、混淆等的模式引擎中高 - 覆盖许多已知滥用模式,但仍基于模式
基于 LLM 的 Agent 风险评审发布时由安全提示词驱动的判定中高 - 可捕获静态模式遗漏的行为
VirusTotal 扫描接入技能和包发布/重新扫描流程,并由操作员 API key 作为门禁启用时高 - 静态引擎检测
审核状态moderationStatus 字段中等 - 可进行人工审核

4.2 审核限制

ClawHub 的静态扫描会直接检查技能代码内容(不只是 slug/metadata/frontmatter),覆盖危险的 exec 调用、动态代码执行、凭据采集、外泄模式、混淆载荷等。已知缺口:
  • 基于模式的检测仍可能被足够新颖的混淆绕过。
  • 基于 LLM 的评审和 VirusTotal 扫描依赖操作员侧 API key/配置启用。
  • 技能安装后,没有运行时执行沙箱将技能与 Agent 自身权限隔离。

4.3 徽章

技能和包带有由审核员分配的徽章:highlightedofficialdeprecatedredactionApproved(仅技能)。社区报告(skillReports)和审计日志(auditLogs)支撑审核工作流。

5. 风险矩阵

5.1 可能性与影响

威胁 ID可能性影响风险级别优先级
T-EXEC-001严重严重P0
T-PERSIST-001严重严重P0
T-EXFIL-003中等严重严重P0
T-IMPACT-001中等严重P1
T-EXEC-002P1
T-EXEC-004中等P1
T-ACCESS-003中等P1
T-EXFIL-001中等P1
T-IMPACT-002中等P1
T-EVADE-001中等中等P2
T-ACCESS-001中等P2
T-ACCESS-002中等P2
T-PERSIST-002中等P2

5.2 关键路径攻击链

链 1:基于技能的数据窃取
T-PERSIST-001 → T-EVADE-001 → T-EXFIL-003
(Publish malicious skill) → (Evade moderation) → (Harvest credentials)
链 2:提示词注入到 RCE
T-EXEC-001 → T-EXEC-004 → T-IMPACT-001
(Inject prompt) → (Bypass exec approval) → (Execute commands)
链 3:通过获取内容进行间接注入
T-EXEC-002 → T-EXFIL-001 → External exfiltration
(Poison URL content) → (Agent fetches & follows instructions) → (Data sent to attacker)

6. 建议摘要

6.1 立即处理(P0)

ID建议处理对象
R-002实现技能执行沙箱隔离T-PERSIST-001, T-EXFIL-003
R-003为敏感操作添加输出验证T-EXEC-001, T-EXEC-002

6.2 短期(P1)

ID建议处理对象
R-004实现按发送者限速T-IMPACT-002
R-005添加静态 token 加密T-ACCESS-003
R-006改进 exec 审批 UX,并继续扩展命令规范化T-EXEC-004
R-007web_fetch 实现 URL 允许列表T-EXFIL-001

6.3 中期(P2)

ID建议处理对象
R-008在可能时添加加密通道验证T-ACCESS-002
R-009实现配置完整性验证T-PERSIST-003
R-010添加更新签名和版本固定T-PERSIST-002

7. 附录

7.1 ATLAS 技术映射

ATLAS ID技术名称OpenClaw 威胁
AML.T0006主动扫描T-RECON-001, T-RECON-002
AML.T0009收集T-EXFIL-001, T-EXFIL-002, T-EXFIL-003
AML.T0010.001供应链:AI 软件T-PERSIST-001, T-PERSIST-002
AML.T0010.002供应链:数据T-PERSIST-003
AML.T0031侵蚀 AI 模型完整性T-IMPACT-001, T-IMPACT-002, T-IMPACT-003
AML.T0040AI 模型推理 API 访问T-ACCESS-001, T-ACCESS-002, T-ACCESS-003, T-DISC-001, T-DISC-002
AML.T0043制作对抗性数据T-EXEC-004, T-EVADE-001, T-EVADE-002
AML.T0051.000LLM 提示词注入:直接T-EXEC-001, T-EXEC-003
AML.T0051.001LLM 提示词注入:间接T-EXEC-002

7.2 关键安全文件

路径用途风险级别
src/infra/exec-approvals.ts命令审批逻辑严重
src/gateway/auth.tsGateway 网关身份验证严重
src/infra/net/ssrf.tsSSRF 防护严重
src/security/external-content.ts提示词注入缓解严重
src/agents/sandbox/tool-policy.ts沙箱工具允许/拒绝策略严重
src/routing/resolve-route.ts会话隔离/路由中等

7.3 术语表

术语定义
ATLASMITRE 的 AI 系统对抗性威胁图谱
ClawHubOpenClaw 的技能市场
Gateway 网关OpenClaw 的消息路由和身份验证层
MCPModel Context Protocol - 工具提供商接口
提示词注入将恶意指令嵌入输入中的攻击
技能OpenClaw Agent 的可下载扩展
SSRF服务端请求伪造

此威胁模型是一份持续演进的文档。请将安全问题报告至 security@openclaw.ai,或查看 信任页面

相关内容