信任与安全

安全态势、路线图,以及我们对能够执行真实世界操作的代理的思考。

计算安全的新时代

过去 20 年,安全模型一直围绕锁定设备和应用程序而构建——在进程间通信之间设置边界,将互联网与本地分离,对不可信代码进行沙盒化处理。这些原则依然重要。

但 AI 代理代表着一个根本性的转变。

与传统软件严格按照代码指令执行不同,AI 代理会解读自然语言并自主决定采取何种行动。它们模糊了用户意图与机器执行之间的界限。它们甚至可能通过语言本身被操纵。

我们深知,像 OpenClaw 这样强大的工具,其巨大的实用性伴随着巨大的责任。如果方向错了,AI 代理可能成为一种负担;如果方向对了,它就能极大地改善个人计算体验。

这个安全计划的存在,就是为了确保走对方向。

背景

OpenClaw 是一个 AI 代理平台。与仅生成文本的聊天机器人不同,OpenClaw 代理可以:

  • 在主机上执行 shell 命令
  • 通过 WhatsApp、Telegram、Discord、Slack 等渠道发送消息
  • 在工作区中读写文件
  • 从互联网获取任意 URL
  • 安排自动化任务
  • 访问已连接的服务和 API

这种能力正是 OpenClaw 的实用之处,也使得安全变得至关重要。

能够执行真实世界操作的 AI 代理,会带来传统软件所没有的风险:

  1. 提示词注入 —— 恶意用户可以构造消息,操纵 AI 执行非预期的操作
  2. 间接注入 —— 获取的 URL、邮件或文档中的恶意内容可能劫持代理行为
  3. 工具滥用 —— 即使没有注入,配置不当的代理也可能因权限过于宽松而造成破坏
  4. 身份风险 —— 代理可能以你的身份发送消息,损害人际关系或声誉

这些并非理论假设。它们是影响所有 AI 代理系统的、已被记录的典型攻击模式。

范围

本安全计划涵盖整个 OpenClaw 生态系统。没有什么是超出范围的。

核心平台

  • OpenClaw CLI 和网关 (openclaw)
  • 代理执行引擎
  • 工具实现
  • 渠道集成(WhatsApp、Telegram、Discord、Slack、Signal 等)

应用程序

  • macOS 桌面应用
  • iOS 移动应用
  • Android 移动应用
  • Web 界面

服务

  • ClawHub (clawhub.ai) —— 技能市场和注册中心
  • 文档 (docs.openclaw.ai)
  • 任何托管的基础设施

扩展

  • 官方扩展 (extensions/)
  • 插件 SDK 和第三方插件
  • 通过 ClawHub 分发的技能

人员

  • 核心维护者和贡献者
  • 安全流程和响应程序
  • 供应链和依赖管理

计划概述

我们将建立一个正式的安全职能,分为四个阶段:

1

透明化

与社区共同开发威胁模型

2

产品安全路线图

定义防御工程目标并公开跟踪

3

代码审查

对全部代码库进行手动安全审查

4

安全分类响应

建立处理漏洞报告的正式流程

第一阶段:透明化

目标

公开开发和发布我们的威胁模型,邀请社区贡献,让用户了解风险并能够就部署做出明智决策。

为什么这样做

通过隐匿实现安全是行不通的。攻击者已经了解这些技术——它们被记录在学术论文、安全博客和会议演讲中。我们所缺少的是向用户清晰地传达:

  • 存在哪些风险
  • 我们正在采取什么措施
  • 用户应该做什么来保护自己

通过公开开发威胁模型,我们可以从集体智慧中受益,并通过透明建立信任。

威胁模型覆盖范围

类别 涵盖的风险
A. 输入操纵 直接提示注入、间接注入、工具参数注入、上下文操纵
B. 认证与访问 AllowFrom 绕过、权限提升、跨会话访问、API 密钥泄露
C. 数据安全 系统提示泄露、工作区暴露、内存泄漏、数据外泄
D. 基础设施 SSRF、网关暴露、依赖项漏洞、文件权限
E. 运维 敏感数据日志记录、监控不足、资源耗尽、配置错误
F. 供应链 ClawHub 技能完整性、扩展安全性、依赖项漏洞

威胁模型范围

组件 为何纳入
核心平台(CLI、网关、代理、工具) 主要攻击面
ClawHub (clawhub.ai) 技能市场——供应链风险
移动应用(iOS、Android) 代理控制界面、凭据存储
桌面应用(macOS) 网关主机、系统集成
扩展和插件 第三方代码执行
构建和发布流水线 分发完整性

威胁模型中的每个风险都将包括描述和严重性评级、攻击示例、当前缓解措施、已知差距以及用户建议。

威胁模型将通过拉取请求向社区开放贡献。

第二阶段:产品安全路线图

目标

创建一个公开的产品安全路线图,定义防御工程目标,并作为 GitHub issues 进行跟踪,让社区能够跟进进展、提供意见并做出贡献。

防御工程目标

类别 目标 描述
提示注入防护 输入验证 检测并告警注入尝试的模式
工具确认 敏感操作需明确批准
上下文隔离 防止跨会话污染
隐私增强 系统提示保护 防止系统提示泄露
数据最小化 减少不必要的数据保留
审计日志 清晰可见代理操作
访问控制 细粒度权限 按工具、按会话的访问控制
速率限制 防止资源耗尽
支出控制 对 API 成本设置硬性上限
供应链 技能验证 对 ClawHub 技能进行完整性检查
依赖审计 自动化漏洞扫描
签名发布 对更新进行加密验证

具体的优先级问题将通过第三阶段的代码审查确定,并在发现和分类后添加到公共路线图中。

第三阶段:代码审查

目标

虽然社区已经在夜以继日地发现和修复缺陷——我们对此深表感激——但我们认识到这是一个开源项目,贡献者付出了最大的努力。第三阶段是一个专门、全面的安全评估,旨在挖掘深层次的系统性安全问题,并提高整体代码质量和用户安全性。

范围

代码审查涵盖整个 OpenClaw 代码库和生态系统:

区域 路径 原因
代理执行src/agents/核心攻击面——代理如何运行
工具实现src/agents/tools/代理能做什么——执行、消息、网络
消息处理src/auto-reply/所有用户输入的入口点
安全工具src/security/现有安全控制
网关服务器src/gateway/暴露于网络的组件
认证src/*/auth*凭据处理、API 密钥
会话管理src/config/sessions.ts跨会话隔离
配对和访问控制src/pairing/, src/*/access-control*私聊和群聊门控
外部内容处理src/security/external-content.ts注入防御
macOS 桌面应用apps/macos/网关主机、系统集成
iOS 移动应用apps/ios/代理控制、凭据存储
Android 移动应用apps/android/代理控制、凭据存储
ClawHubclawhub.ai技能注册中心——供应链风险
官方扩展extensions/第一方插件
构建和发布流水线CI/CD、脚本分发完整性、签名

方法

  1. 手动代码审查 —— 人对安全关键路径进行辅助分析
  2. 自动扫描 —— 静态分析、依赖审计、密钥检测
  3. 动态测试 —— 对运行系统尝试已知攻击模式
  4. 架构审查 —— 评估信任边界和数据流

披露

  • 所有关键和高危问题在公开披露前修复
  • 修复后发布发现摘要
  • 完整报告可应要求提供
  • 适用时分配 CVE 编号

第四阶段:安全分类响应功能

目标

建立接收、分类和响应安全漏洞报告的正式流程。

报告漏洞

我们认真对待安全报告。请直接将漏洞报告到问题所在的仓库:

对于不适合特定仓库的问题,或者如果您不确定,请发送邮件至 ,我们会进行路由。

报告必需信息

标题 严重性评估 影响 受影响组件 技术复现步骤 实际影响演示 环境信息 修复建议

没有复现步骤、实际影响演示和修复建议的报告将被降低优先级。鉴于 AI 生成的扫描器发现数量庞大,我们必须确保接收到的报告来自理解问题的研究人员,经过充分验证。

响应 SLA

严重性 定义 首次响应 分类 修复目标
严重 RCE、认证绕过、大规模数据泄露 24 小时 48 小时 7 天
重大影响,单用户范围 48 小时 5 天 30 天
影响有限,需特定条件 5 天 14 天 90 天
次要问题,纵深防御 14 天 30 天 尽力而为

我们的承诺

  • 48 小时内确认所有完整报告
  • 至少每 14 天提供一次状态更新
  • 在公告中致谢研究人员(除非要求匿名)
  • 不对善意的安全研究采取法律行动
  • 对符合条件的严重/高危发现酌情考虑奖励

安全与信任

Jamieson O'Reilly (@theonejvo) 是 OpenClaw 的安全与信任负责人。

Jamieson 是 Dvuln 的创始人,Aether AI(世界上最危险的 AI,站在你这边)的联合创始人,CREST 顾问委员会成员,在进攻性安全、渗透测试和安全计划开发方面拥有丰富的经验。

职责

  • 领导威胁建模和风险评估
  • 规划并监督代码审查
  • 建立分类流程和响应程序
  • 审查安全关键代码更改
  • 就安全架构决策提供指导

当前安全态势

OpenClaw 已经部署了安全控制措施。了解现有措施有助于用户正确配置部署。

安全默认配置

私聊策略:配对

未知发送者需完成带有过期代码的配对流程

执行安全:拒绝

不在白名单中的命令默认拒绝,提示用户批准

默认 AllowFrom:仅限自己

如未配置,只有您自己的号码可以向代理发送私聊

会话隔离

对话按会话密钥隔离

SSRF 防护

web_fetch 中阻止内部 IP 和 localhost

网关认证必需

WebSocket 连接必须通过认证

验证您的配置

openclaw security audit --deep

需验证的关键项:

  • 私聊策略为 pairingallowlist(非 open
  • 已为您的渠道配置 allowFrom
  • 执行安全未设置为 full(除非有意)
  • 网关绑定到回环地址或位于认证之后
  • 工作区不包含机密信息

时间线

第 1-2 周:第一阶段 - 透明化
├── 威胁模型开发启动(开放贡献)
├── 安全配置指南草稿
├── 可视化概览创建
└── 公告发布

第 3-4 周:第二阶段 - 产品安全路线图
├── 为防御工程目标创建 GitHub issues
├── 设置安全标签和里程碑
├── 社区意见征集期开启
└── 首批安全工作启动

第 5-8 周:第三阶段 - 代码审查准备
├── 范围确定(全部代码库)
├── 审查启动
└── 初步发现

第 8-12 周:第三阶段 - 代码审查执行
├── 手动审查完成
├── 发现记录归档
├── 严重/高危问题修复
└── 验证完成

第 8 周起:第四阶段 - 分类响应功能
├── security@openclaw.ai 启用
├── PGP 密钥发布
├── 披露政策发布
└── 首批公告(如需)

持续进行:
├── 月度安全更新
├── 持续完善威胁模型
├── 定期依赖审计
└── 社区互动

常见问题解答

“OpenClaw 现在使用安全吗?”

是的,在正确配置的前提下。OpenClaw 默认启用了安全控制:

  • 私聊策略:默认为 pairing——未知发送者需完成带有过期代码的配对流程
  • 执行安全:默认为 deny 并带 ask: on-miss——危险命令需批准
  • AllowFrom:如未配置,默认为仅限自己
  • 网关认证:默认必需

运行 openclaw security audit --deep 验证您的配置。详见 docs.openclaw.ai/gateway/security

“为什么要公开开发威胁模型?”

这些攻击技术已是公开知识——记录在论文、博客和演讲中。公开开发可以从集体智慧中受益,通过透明建立信任,并让我们接受问责。

“为什么漏洞报告需要包含修复建议?”

我们会收到来自自动化扫描器和 AI 工具的报告,它们会标记理论问题而不理解其背景。通过要求报告者提出修复方案,我们可以过滤掉扫描器噪声,获得理解问题的研究人员的可操作报告,并借助专家意见加速修复。

“ClawHub 呢?”

ClawHub (clawhub.ai) 包含在整个安全计划的范围内——威胁模型、代码审查和持续监控。技能是在代理上下文中运行的代码——供应链安全至关重要。

“移动应用和桌面应用呢?”

所有应用程序都在范围内。iOS 应用、Android 应用和 macOS 桌面应用都将被代码审查覆盖,并包含在威胁模型中。没有什么是超出范围的。

“我可以帮忙吗?”
  • 通过拉取请求为威胁模型做贡献
  • 审查并评论带有安全标签的 issues
  • 向相关仓库报告漏洞(如果不确定,可发送至 security@openclaw.ai)
  • 帮助改进安全文档