2pidata/openclaw-security-guard

GitHub: 2pidata/openclaw-security-guard

面向 OpenClaw 平台的一站式安全审计与加固工具,集成密钥扫描、配置审计、提示词注入检测、依赖漏洞分析和实时监控仪表盘。

Stars: 15 | Forks: 2

npm version MIT License Node.js 22+ Tests Passing Zero Telemetry

OpenClaw Security Guard

您的 OpenClaw 安装中缺失的安全层。
审计。监控。保护。一站式工具。

快速开始为何选择此工具功能特性仪表盘CLI贡献

2PiDataMiloud Belarebia 构建 — 面向 OpenClaw 社区。

OpenClaw PR #17273 OpenClaw Discussion

## 问题所在 您安装了 OpenClaw。它运行良好。但请问自己: - 您的 **API 密钥**是否暴露在配置文件或技能(skills)中? - 您的 **沙箱模式**配置是否正确? - 您的 **MCP 服务器**是否来自可信来源? - 您的工作区文件中是否隐藏着 **提示词注入**? - 您的 **npm 依赖项**是否没有已知漏洞? 如果您不确定,您就需要这个工具。 ## 快速开始 ``` # 全局安装 npm install -g openclaw-security-guard # 运行你的第一次审计 openclaw-guard audit # 自动修复问题 openclaw-guard fix --auto # 启动 live dashboard openclaw-guard dashboard ``` **30 秒。**这就是了解您安全态势所需的时间。 ## 为何选择 Security Guard? OpenClaw 生态系统中还有其他安全工具。以下是它们的对比: | | 内置 `security audit` | ClawSec | OpenClaw Shield | **Security Guard** | |---|:---:|:---:|:---:|:---:| | 密钥扫描(API 密钥、令牌) | 基础 | 是 | 是 | **15+ 种格式 + 熵值分析** | | 配置加固与自动修复 | 否 | 部分 | 部分 | **完全自动修复,3 种模式** | | 提示词注入检测 | 否 | 否 | 基础 | **50+ 种模式** | | MCP 服务器验证 | 否 | 否 | 否 | **基于白名单** | | npm 依赖项扫描 | 否 | 否 | 否 | **是** | | 实时 Web 仪表盘 | 否 | 否 | 否 | **实时评分** | | API 成本监控 | 否 | 否 | 否 | **每日/每月** | | Pre-commit 钩子 | 否 | 否 | 否 | **是** | | 多语言支持(EN/FR/AR) | 否 | 否 | 否 | **是** | | 保证零遥测 | 未知 | 未知 | 未知 | **100% 本地运行** | **Security Guard 并不取代这些工具。它填补了它们留下的空白。** ## 您将获得什么 ### 5 个应用扫描器 + 基础设施模块 | 扫描器 | 检测内容 | |---|---| | **密钥扫描器** | API 密钥、令牌、密码、私钥、Webhook URL。使用模式匹配 + Shannon 熵值分析。 | | **配置审计器** | 弱沙箱模式、开放 DM 策略、公共网关绑定、禁用速率限制、提权模式风险。 | | **提示词注入检测器** | 50+ 种模式:指令覆盖、角色劫持、数据泄露、分隔符操纵、越狱尝试。 | | **依赖项扫描器** | 您的 npm 依赖树中的已知 CVE 漏洞。 | | **MCP 服务器审计器** | 不在社区白名单中的未验证 MCP 服务器。 | ### 基础设施安全(可选) 对于生产环境部署,添加 `--infra` 来扫描您的服务器: ``` openclaw-guard audit --infra ``` | 扫描器 | 检查内容 | |---|---| | **网络安全** | 防火墙状态(UFW/firewalld/macOS)、公共端口暴露、网关绑定地址(0.0.0.0 vs 127.0.0.1) | | **SSH 访问控制** | 密码认证、Root 登录、fail2ban 状态、失败登录尝试(24小时内) | | **系统加固** | 可用的安全更新、配置文件权限(600 vs 777)、无人值守升级 | | **TLS / 证书** | 反向代理(Caddy/Nginx)、Tailscale/WireGuard VPN 状态 | | **资源安全** | 磁盘使用率(>90% 时存在 DoS 风险)、内存使用监控 | 基础设施模块能捕捉应用扫描遗漏的问题: - 应用评分显示 85/100,但网关监听在 `0.0.0.0` 且启用了 SSH 密码认证 = 实际存在漏洞 - 使用 `--infra` 后,综合评分才能反映真实情况 ### 自动加固 三种模式,按您的方式修复问题: ``` openclaw-guard fix # Interactive: review each fix openclaw-guard fix --auto # Automatic: fix everything, backup first openclaw-guard fix --dry-run # Preview: see what would change ``` 每次修复都会创建带有时间戳的备份。一切皆可撤销。 ### 安全评分(0-100) 一个数字告诉您当前状况: | 评分 | 含义 | |---|---| | **80-100** | 状态良好。 | | **60-79** | 有待审查的问题。 | | **低于 60** | 需立即采取行动。 | 扣分规则:严重发现 = -10,高危 = -5,中危 = -2。沙箱关闭 = -20。开放 DM 策略 = -15。 ## 实时仪表盘 ``` openclaw-guard dashboard ``` 在 `http://localhost:18790` 打开一个受密码保护的 Web 仪表盘,包含: - **实时安全评分**,随威胁检测实时更新 - **请求监控**,跟踪每分钟请求数 - **API 使用成本追踪**(每日/每月限额) - **威胁动态**,显示提示词注入尝试、被拦截的请求、速率限制触发 - **配置概览**,一目了然 仪表盘仅在 `localhost` 上运行,使用 PBKDF2 密码哈希(10 万次迭代,SHA-512),并通过 WebSocket 连接到您的 OpenClaw 网关。 ## CLI 参考 | 命令 | 描述 | |---|---| | `openclaw-guard audit` | 完整安全审计 | | `openclaw-guard audit --deep` | 深度扫描(含熵值分析) | | `openclaw-guard audit --quick` | 快速扫描,跳过高级检查 | | `openclaw-guard audit --infra` | 包含基础设施扫描(网络、SSH、系统) | | `openclaw-guard audit --ci` | CI 模式(发现严重问题时退出码为 1) | | `openclaw-guard fix` | 交互式修复模式 | | `openclaw-guard fix --auto` | 自动修复并备份 | | `openclaw-guard fix --dry-run` | 预览修复内容,不实际应用 | | `openclaw-guard dashboard` | 启动实时仪表盘 | | `openclaw-guard dashboard -p 3000` | 自定义端口 | | `openclaw-guard scan secrets` | 仅扫描密钥 | | `openclaw-guard scan config` | 仅审计配置 | | `openclaw-guard scan prompts` | 仅检测提示词注入 | | `openclaw-guard report -f html` | 生成 HTML 报告 | | `openclaw-guard report -f json` | 生成 JSON 报告 | | `openclaw-guard hooks install` | 安装 pre-commit 钩子 | | `openclaw-guard hooks status` | 检查钩子状态 | ### 全局选项 | 选项 | 描述 | |---|---| | `-c, --config ` | 自定义配置文件路径 | | `-l, --lang ` | 语言:`en`、`fr`、`ar` | | `-v, --verbose` | 详细输出 | | `-q, --quiet` | 不显示横幅 | ## 配置 在您的项目根目录或用户主目录下创建 `.openclaw-guard.json`: ``` { "scanners": { "secrets": { "enabled": true, "exclude": ["*.test.js", "node_modules/**"] }, "config": { "enabled": true, "strict": true }, "prompts": { "enabled": true, "sensitivity": "high" }, "mcpServers": { "allowlist": [ "mcp-server-filesystem", "mcp-server-fetch", "mcp-server-memory", "mcp-server-sqlite", "mcp-server-git", "mcp-server-github" ], "blockUnknown": false } }, "monitors": { "cost": { "dailyLimit": 10, "monthlyLimit": 100 } }, "dashboard": { "port": 18790 } } ``` ## 编程 API 在您自己的项目中将 Security Guard 作为库使用: ``` import { quickAudit, checkPromptInjection } from 'openclaw-security-guard'; // Full audit const results = await quickAudit('~/.openclaw'); console.log(`Score: ${results.securityScore}/100`); console.log(`Critical: ${results.summary.critical}`); // Check a message for injection const check = await checkPromptInjection('ignore all previous instructions'); console.log(check.safe); // false ``` ``` // Individual scanners import { SecretsScanner, ConfigAuditor, McpServerAuditor } from 'openclaw-security-guard'; const scanner = new SecretsScanner({}); const result = await scanner.scan('/path/to/openclaw'); ``` ## 隐私与安全 这是一个安全工具。它本身也应该是安全的。这是我们的承诺: | | | |---|---| | **遥测** | 无。零。 | | **网络请求** | 无(除了连接到您网关的本地 WebSocket) | | **数据收集** | 无 | | **云依赖** | 无 | | **仪表盘访问** | 仅限 `localhost`,受密码保护 | | **密码存储** | PBKDF2,10 万次迭代,SHA-512 | | **输入验证** | 全面使用 Zod schemas | | **报告生成** | XSS 安全、路径遍历安全 | 完整安全策略请参阅 [SECURITY.md](./SECURITY.md)。 ## 文档 | 语言 | 链接 | |---|---| | English | [docs/en/README.md](./docs/en/README.md) | | French | [docs/fr/README.md](./docs/fr/README.md) | | Arabic | [docs/ar/README.md](./docs/ar/README.md) | ## 许可证 [MIT](./LICENSE)

Miloud Belarebia 创建2PiData
灵感来源于 detect-secretstrivy 以及 OWASP

如果此工具帮助了您,请留下一个 Star。这也能帮助其他人发现它。
github.com/2pidata/openclaw-security-guard

报告 Bug请求新功能2pidata.com

标签:API安全, CISA项目, DNS 反向解析, GNU通用公共许可证, JSON输出, LNA, MCP服务器, MITM代理, Node.js, OpenClaw, StruQ, 云安全监控, 大模型安全, 安全防护层, 实时仪表盘, 暗色界面, 网络安全, 自定义脚本, 配置加固, 隐私保护, 零遥测, 静态分析