OpenClow Vulnerability Checker
Overview
帮助用户检测 OpenClaw 当前的已知安全漏洞,对比当前版本与最新版本的差异,获取漏洞详情、风险评估、版本更新内容和修复建议,确保 OpenClaw 运行在安全状态并了解最新功能。
Workflow
Step 1: 获取当前版本
运行 openclaw --version 获取当前安装的 OpenClow 版本号和 commit hash。
示例:
CODEBLOCK0
提取版本号格式为 YYYY.M.D(如 2026.3.8),以及可能存在的 commit hash。
Step 2: 查询漏洞列表
从多个数据源查询 OpenClaw 的安全漏洞信息:
优先级顺序:
- 1. GitHub Security Advisories(如果用户提供了 GitHub token)
- 使用 GitHub API 查询:
https://api.github.com/repos/openclaw/openclaw/security/advisories
- 优点:官方、结构化、包含修复版本信息
- 需要:GitHub Personal Access Token(有 repo 权限)
- 2. CNNVD(中国国家信息安全漏洞库)
- 通过 web_fetch 搜索相关页面
- 关注 "OpenClaw"、"openclaw" 相关漏洞条目
- 示例:微信公众号文章如提供的链接
- 3. NVD(National Vulnerability Database)
- CVE 数据库查询
- URL: INLINECODE4
- 4. 本地漏洞数据库 - INLINECODE5
- 手动维护的已知漏洞列表
- 格式:版本范围、CVE ID、CVSS 评分、简介、修复版本、缓解措施
Step 3: 匹配漏洞
对比当前版本与漏洞信息:
漏洞筛选规则:
- 1. 检查漏洞影响的版本范围
- 确认当前版本是否在影响范围内
- 验证是否有修复版本已经修复该漏洞
- 如果修复版本存在但当前版本低于修复版本 → 漏洞未修复
版本比较逻辑:
- - OpenClaw 使用语义化版本
YYYY.M.D 或 INLINECODE7 - 支持范围比较:
< 2026.3.10 表示所有小于 2026.3.10 的版本都受影响 - 支持特定版本:
= 2026.3.8 表示仅该版本受影响
Step 4: 评估风险
对每个未修复漏洞进行风险评估:
风险等级判定:
- - 高危(Critical): CVSS 9.0-10.0 或远程代码执行(RCE)
- 高(High): CVSS 7.0-8.9 或权限提升、敏感信息泄露
- 中(Medium): CVSS 4.0-6.9 或拒绝服务、XSS
- 低(Low): CVSS 0.1-3.9 或信息泄露等低影响
Step 5: 生成报告
输出结构化的安全报告,包含:
Step 6: 公网访问安全扫描(新增)
检查 OpenClaw 是否开启了不必要的公网访问,防止安全暴露。
检测项目:
- 1. Gateway 绑定地址检查
- 运行
openclaw gateway config.get --path gateway.bind
- 检查是否绑定到
0.0.0.0(所有网络接口)
- 检查是否绑定到公网 IP 地址
- 安全建议:仅绑定到
127.0.0.1(本地回环)或局域网内网 IP
- 2. 端口监听检查
- 运行
lsof -i :3001 或
netstat -an | grep 3001 检查默认端口
- 检查其他可能的服务端口(如 3000, 8080 等)
- 识别端口是否监听在
0.0.0.0 或公网 IP
- 3. 隧道/反向代理检查
- 检查是否配置了 Tailscale、ngrok、frp 等隧道服务
- 运行
ps aux | grep -E "tailscale|ngrok|frp" 检查进程
- 检查配置文件中的相关设置
- 4. 防火墙规则检查
- macOS: 检查
pfctl -sr | grep 3001
- Linux: 检查
iptables -L -n | grep 3001
- 确认是否有防火墙规则阻止公网访问
- 5. Control UI 访问检查
- 检查
openclaw gateway.config.get --path gateway.controlUI.bind
- 确认控制台界面的绑定地址
- 检查是否开启了认证(
gateway.controlUI.auth.enabled)
风险等级判定:
| 配置状态 | 风险等级 | 说明 |
|---|
| 绑定 127.0.0.1 + 开启认证 | 🟢 安全 | 仅本地访问,有认证保护 |
| 绑定局域网 IP + 开启认证 |
🟡 中等 | 内网访问,需确保网络边界安全 |
| 绑定 0.0.0.0 + 开启认证 | 🟠 高 | 暴露到所有网络,依赖认证 |
| 绑定公网 IP 或 0.0.0.0 + 无认证 | 🔴 严重 | 公网无保护访问,极高风险 |
| 启用公网隧道 + 无认证 | 🔴 严重 | 通过隧道绕过防火墙,极高风险 |
修复建议:
1. 修改绑定地址:
openclaw gateway config.patch --path gateway.bind --value 127.0.0.1
2. 开启认证:
openclaw gateway config.patch --path gateway.controlUI.auth.enabled --value true
3. 停用隧道服务
1. 添加防火墙规则限制访问 IP
2. 启用 TLS/HTTPS(使用反向代理)
3. 使用强密码或 API Token
Step 7: 生成完整报告
输出结构化的安全报告,版本更新信息,包含:
CODEBLOCK1 bash
openclaw gateway config.patch --path gateway.bind --value 127.0.0.1
CODEBLOCK2
数据源参考
GitHub Security Advisories
获取方式:
CODEBLOCK3
响应格式示例:
CODEBLOCK4
CNNVD(国家信息安全漏洞库)
通过 web_fetch 获取页面内容,解析 XML/JSON 返回。
CVE 数据库
NVD API v2.0 文档:https://nvd.nist.gov/developers/request-an-api-key
脚本使用
获取版本信息
CODEBLOCK5
检查升级
CODEBLOCK6
版本对比功能
使用内置脚本获取版本更新对比:
CODEBLOCK7
版本对比工作流程:
- 1. 从 GitHub API 获取最新的 OpenClaw releases 列表(无需认证,公开 API)
- 提取每个版本的 release note,解析 Changes、Fixes、Breaking Changes
- 对比当前版本与最新版本,识别:
- 是否有新版本可用
- 新版本包含的功能更新
- 新版本修复的 bug
- Breaking Changes(需特别注意)
- 4. 生成人类可读的报告
报告格式示例:
CODEBLOCK8 bash
openclaw update run
CODEBLOCK9
注意事项
- 1. GitHub API 限制:无认证情况下每分钟 60 次请求,有 token 每小时 5000 次
- 数据来源优先级:GitHub > CNNVD > NVD > 本地数据库
- 版本比较:OpenClaw 使用年月日版本格式,注意与 semver 的兼容性
- 建议谨慎报告:确认漏洞信息准确后再通知用户,避免误报
- 公网访问扫描需要权限:某些网络检测命令可能需要管理员权限(sudo),请在检测前告知用户
公网访问安全扫描命令参考
检查 Gateway 配置
CODEBLOCK10
检查端口监听
CODEBLOCK11
检查隧道服务进程
CODEBLOCK12
检查防火墙规则
CODEBLOCK13
修复配置命令
CODEBLOCK14
安全检查最佳实践
- 1. 生产环境:
- Gateway 仅绑定到
127.0.0.1
- 使用反向代理(Nginx/Caddy)提供 TLS
- 启用强认证或 API Token
- 配置 WAF 规则防止攻击
- 2. 开发环境:
- 可以绑定到局域网 IP 方便调试
- 建议开启认证或使用防火墙白名单
- 禁用公网隧道服务
- 3. 远程访问场景:
- 优先使用 VPN(如 Tailscale)而非公网隧道
- 如需隧道,确保端到端认证
- 定期轮换访问凭证
版本历史
v1.0.1 (2026-03-24)
- - ✨ 新增:公网访问安全扫描功能
- 🔍 检测项:Gateway 绑定、端口监听、隧道服务、防火墙规则、Control UI 认证
- 📊 新增配置安全风险等级评估
- 📝 更新报告模板,整合漏洞扫描和配置审计结果
v1.0.0 (2026-03-11)
- - 🎉 初始版本
- ✅ 已知漏洞检测
- 📈 版本对比功能
- 📋 结构化安全报告生成
OpenClow 漏洞检测工具
概述
帮助用户检测 OpenClaw 当前的已知安全漏洞,对比当前版本与最新版本的差异,获取漏洞详情、风险评估、版本更新内容和修复建议,确保 OpenClaw 运行在安全状态并了解最新功能。
工作流程
步骤 1: 获取当前版本
运行 openclaw --version 获取当前安装的 OpenClow 版本号和 commit hash。
示例:
OpenClaw 2026.3.8 (3caab92)
提取版本号格式为 YYYY.M.D(如 2026.3.8),以及可能存在的 commit hash。
步骤 2: 查询漏洞列表
从多个数据源查询 OpenClaw 的安全漏洞信息:
优先级顺序:
- 1. GitHub 安全公告(如果用户提供了 GitHub token)
- 使用 GitHub API 查询:https://api.github.com/repos/openclaw/openclaw/security/advisories
- 优点:官方、结构化、包含修复版本信息
- 需要:GitHub Personal Access Token(有 repo 权限)
- 2. CNNVD(中国国家信息安全漏洞库)
- 通过 web_fetch 搜索相关页面
- 关注 OpenClaw、openclaw 相关漏洞条目
- 示例:微信公众号文章如提供的链接
- 3. NVD(国家漏洞数据库)
- CVE 数据库查询
- URL: https://nvd.nist.gov/vuln/search/results?form
basicsearch=&results
type=overview&searchtype=all&query=OpenClaw
- 4. 本地漏洞数据库 - references/vulnerabilities.md
- 手动维护的已知漏洞列表
- 格式:版本范围、CVE ID、CVSS 评分、简介、修复版本、缓解措施
步骤 3: 匹配漏洞
对比当前版本与漏洞信息:
漏洞筛选规则:
- 1. 检查漏洞影响的版本范围
- 确认当前版本是否在影响范围内
- 验证是否有修复版本已经修复该漏洞
- 如果修复版本存在但当前版本低于修复版本 → 漏洞未修复
版本比较逻辑:
- - OpenClaw 使用语义化版本 YYYY.M.D 或 vX.Y.Z
- 支持范围比较:< 2026.3.10 表示所有小于 2026.3.10 的版本都受影响
- 支持特定版本:= 2026.3.8 表示仅该版本受影响
步骤 4: 评估风险
对每个未修复漏洞进行风险评估:
风险等级判定:
- - 高危(Critical): CVSS 9.0-10.0 或远程代码执行(RCE)
- 高(High): CVSS 7.0-8.9 或权限提升、敏感信息泄露
- 中(Medium): CVSS 4.0-6.9 或拒绝服务、XSS
- 低(Low): CVSS 0.1-3.9 或信息泄露等低影响
步骤 5: 生成报告
输出结构化的安全报告,包含:
步骤 6: 公网访问安全扫描(新增)
检查 OpenClaw 是否开启了不必要的公网访问,防止安全暴露。
检测项目:
- 1. Gateway 绑定地址检查
- 运行 openclaw gateway config.get --path gateway.bind
- 检查是否绑定到 0.0.0.0(所有网络接口)
- 检查是否绑定到公网 IP 地址
- 安全建议:仅绑定到 127.0.0.1(本地回环)或局域网内网 IP
- 2. 端口监听检查
- 运行 lsof -i :3001 或 netstat -an | grep 3001 检查默认端口
- 检查其他可能的服务端口(如 3000, 8080 等)
- 识别端口是否监听在 0.0.0.0 或公网 IP
- 3. 隧道/反向代理检查
- 检查是否配置了 Tailscale、ngrok、frp 等隧道服务
- 运行 ps aux | grep -E tailscale|ngrok|frp 检查进程
- 检查配置文件中的相关设置
- 4. 防火墙规则检查
- macOS: 检查 pfctl -sr | grep 3001
- Linux: 检查 iptables -L -n | grep 3001
- 确认是否有防火墙规则阻止公网访问
- 5. Control UI 访问检查
- 检查 openclaw gateway.config.get --path gateway.controlUI.bind
- 确认控制台界面的绑定地址
- 检查是否开启了认证(gateway.controlUI.auth.enabled)
风险等级判定:
| 配置状态 | 风险等级 | 说明 |
|---|
| 绑定 127.0.0.1 + 开启认证 | 🟢 安全 | 仅本地访问,有认证保护 |
| 绑定局域网 IP + 开启认证 |
🟡 中等 | 内网访问,需确保网络边界安全 |
| 绑定 0.0.0.0 + 开启认证 | 🟠 高 | 暴露到所有网络,依赖认证 |
| 绑定公网 IP 或 0.0.0.0 + 无认证 | 🔴 严重 | 公网无保护访问,极高风险 |
| 启用公网隧道 + 无认证 | 🔴 严重 | 通过隧道绕过防火墙,极高风险 |
修复建议:
1. 修改绑定地址:openclaw gateway config.patch --path gateway.bind --value 127.0.0.1
2. 开启认证:openclaw gateway config.patch --path gateway.controlUI.auth.enabled --value true
3. 停用隧道服务
1. 添加防火墙规则限制访问 IP
2. 启用 TLS/HTTPS(使用反向代理)
3. 使用强密码或 API Token
步骤 7: 生成完整报告
输出结构化的安全报告,版本更新信息,包含:
OpenClaw 安全漏洞与配置审计报告
当前版本信息
- - 版本: 2026.3.8 (commit: 3caab92)
- 检查时间: 2026-03-11 15:45:00
📊 风险概览
漏洞风险
- - 🔴 高危漏洞: 1
- 🟠 高危漏洞: 0
- 🟡 中危漏洞: 2
- 🟢 低危漏洞: 0
配置安全风险
- - 🔴 严重风险: [X] 项
- 🟠 高风险: [X] 项
- 🟡 中等风险: [X] 项
- 🟢 安全: [X] 项
🔐 公网访问安全扫描
Gateway 配置
- - 绑定地址: 0.0.0.0:3001
- 风险等级: 🟠 高
- 说明: Gateway 监听在所有网络接口,可能导致公网访问
Control UI 配置
- - 绑定地址: 127.0.0.1:3000
- 认证状态: ✅ 已启用
- 风险等级: 🟢 安全
端口监听
- - 3000 端口: 监听 127.0.0.1 ✅
- 3001 端口: 监听 0.0.0.0 ⚠️
隧道服务
- - Tailscale: 未检测到
- ngrok: 未检测到
- frp: 未检测到
修复建议
⚠️
建议修复:
- 1. 修改 Gateway 绑定地址为 127.0.0.1
bash
openclaw gateway config.patch --path gateway.bind --value 127.0.0.1
- 2. 如需远程访问,请配置 TLS + 强认证
🐛 详细漏洞信息
🔴 [CVE-2025-XXXXX] 漏洞标题
CVSS 评分: 9.8 (高危)
影响版本: < 2026.3.10
修复版本: 2026.3.10 或更新
漏洞简介:
简述漏洞原理和影响...
潜在风险:
详细说明攻击场景和影响...
修复建议:
✅ 升级到 OpenClaw 2026.3.10 或更新版本
📥 升级命令: openclaw update
📈 升级建议
立即升级