- AI 安全治理
- 提示词注入防护
- 应用安全
- 模型安全
- 后端
- API网关
【免费下载链接】ClawVault
OpenClaw Security Vault — Atomic "claw" control: every AI reach, within your sight.
ClawVault 是面向 OpenClaw 智能体的开源 AI 安全保险箱(Security Vault),核心能力是敏感数据检测与自动脱敏:在 AI 发出请求的链路上实时拦截 API 密钥、密码、私钥等敏感信息,要么直接阻断,要么替换成占位符后再放行,从根源上防止密钥泄露。本文带你完整看懂这套机制的原理与上手方法。
为什么 AI 智能体会泄露敏感数据?🕳️
用 AI 干活时,这些场景几乎必然发生:
- 📋 你把包含
api_key、password的配置文件直接贴进对话,请求原文被原封不动发往外部模型 API; - 🔁 AI 的回复里会引用你给过的密码、内部 IP,甚至把它们写进会话记录;
- 💉 提示词注入(Prompt Injection)诱导 AI 执行
curl 远程脚本 | bash、读取~/.aws/credentials等危险操作。
没有防护层时,任何一条链路都可能是泄露的起点。ClawVault 的思路是:在 AI 工具和外部模型 API(OpenAI、Anthropic 等)之间架一层透明代理网关(默认127.0.0.1:8765),所有请求先过检测流水线,再决定放行、阻断还是脱敏。
用户输入 → 代理拦截 → 检测流水线 → 规则引擎 → 放行 / 阻断 / 脱敏 (敏感数据? 危险命令? 注入攻击?) AI 响应 → 占位符还原 → 响应扫描 → 审计日志整体架构可参考 doc/architecture.md,核心拦截逻辑在 src/claw_vault/proxy/interceptor.py。
敏感数据检测:15+ 类别、40+ 内置模式 🔍
ClawVault 的检测引擎(src/claw_vault/detector/)内置了覆盖主流场景的正则模式库,定义在 src/claw_vault/detector/patterns.py,匹配逻辑在 src/claw_vault/detector/sensitive.py。常用类别与风险评分(满分 10)如下:
| 检测类别 | 典型示例 | 风险评分 |
|---|---|---|
| AWS 密钥 | AKIA开头的 Access Key ID | 9.5 |
| OpenAI / Anthropic API Key | sk-proj-...、sk-ant-... | 9.0 |
| GitHub / Stripe / Slack Token | ghp_...、sk_live_... | 8.5~9.0 |
| SSH 私钥 / 区块链私钥 / 助记词 | -----BEGIN PRIVATE KEY-----等 | 9.5 |
| 密码与数据库连接串 | password=...、postgres://user:pass@... | 8.0~8.5 |
| 信用卡号 / 身份证号 | 16~19 位卡号、18 位身份证 | 8.0 |
| 手机号 / 邮箱 | 1[3-9]xxxxxxxxx、邮箱地址 | 4.0~6.0 |
| 内网 IP / JWT / 通用 Secret | 192.168.x.x、eyJ... | 5.0~7.0 |
每个命中的结果都带有风险评分与置信度,引擎再把所有命中汇总为四级威胁等级:safe/low/medium/high/critical(最高分 ≥9.0 即为 critical)。同一位置的重叠命中会自动去重,保留风险分更高的一条,避免误报叠加。
💡 内置模式不够用?支持运行时添加自定义模式(
custom_patterns),详见 src/claw_vault/detector/sensitive.py 中的add_custom_pattern。
自动脱敏机制:占位符替换,响应时还原 🔄
这是 ClawVault 最巧妙的部分:不是简单地把敏感内容拦下来,而是"打码后照常用"。
以一次真实请求为例:
请求: "password is MyP@ss" → 检测命中 password 模式 → 替换为 "password is [CREDENTIAL_1]" → 发给 AI 响应: "请检查 [CREDENTIAL_1] 是否正确" → 还原为 "请检查 MyP@ss 是否正确" → 返回给用户工作机制拆成三步:
- 替换:脱敏器把命中的值换成带类别前缀的占位符,如
[API_KEY_1]、[EMAIL_2]、[IP_ADDR_1],同一原值在会话内复用同一个占位符(见 src/claw_vault/sanitizer/replacer.py); - 映射:占位符与原始值的映射只保存在本地内存中,按会话隔离,会话结束自动清空——敏感数据不出本机,也不进模型上下文;
- 还原:AI 的响应回来时,还原器把占位符换回原值(src/claw_vault/sanitizer/restorer.py),你看到的对话依然完整连贯。
也就是说:上游模型从头到尾只能看到[API_KEY_1]这样的占位符,而你的使用体验几乎无感。
三种安全模式:按场景自由切换 🛡️
检测到了敏感数据,到底"拦"还是"脱"?ClawVault 提供三种 Guard 模式,可在仪表盘(:8766)实时切换、立即生效,详细说明见 doc/GUARD_MODE.md:
| 威胁类型 | Strict 严格 | Interactive 交互(自动脱敏开) | Permissive 宽松 |
|---|---|---|---|
| 敏感数据 | 拦截(HTTP 403) | 自动脱敏替换 | 放行 + 记录日志 |
| 注入攻击 | 拦截 | 拦截 | 放行 + 记录日志 |
| 危险命令 | 拦截 | 警告提醒 | 放行 + 记录日志 |
- Strict:安全要求最高的生产环境首选,检测到即返回 403,且只回显脱敏摘要;
- Interactive:日常推荐。开了
auto_sanitize就自动"打码转发",没开则返回一条安全提醒让你修改后重发; - Permissive:开发调试期用,全部放行但每条检测都进 Events 日志,方便观察效果。
快速上手:三步开启防护 🚀
一键安装启动
git clone https://gitcode.com/gh_mirrors/cla/ClawVault cd ClawVault pip install -e . clawvault start # 同时启动透明代理 :8765 与仪表盘 :8766零成本试扫描
不需要接入 AI,先对任意文本做一次检测,感受风险评分:
clawvault scan "password=MySecret key=sk-proj-abc123" clawvault demo # 交互式演示上面这条文本会同时命中 OpenAI API Key(9.0 分)与 password 赋值(8.0 分),整体判为critical。
两个关键配置
复制 config.example.yaml 到~/.ClawVault/config.yaml,重点改两处:
guard: mode: "interactive" # strict | interactive | permissive auto_sanitize: true # 开启自动脱敏 detection: api_keys: true # 按需开关各类别 passwords: true pii: true代理默认拦截api.openai.com、api.anthropic.com等主机,可通过proxy.intercept_hosts增删。完整部署流程(含服务器部署脚本)见 QUICKSTART.md 与 scripts/deploy.sh。
拦截效果:终端与仪表盘双重可见 👀
当一条携带注入与危险命令的消息被 Strict 模式拦下时,OpenClaw TUI 会直接看到带检测摘要的 403 错误,而不是模糊的失败:
打开仪表盘http://<服务器IP>:8766的 Events 页面,每次拦截/脱敏都会留档:威胁摘要、风险分(Risk 9.5 · critical)、危险命令与注入分类一目了然。注意 INPUT TEXT 区域显示[Content blocked - see detection details below]——原始敏感内容被刻意隐藏,审计日志里只存脱敏后的摘要,防止日志本身成为二次泄露源。
常见问题 FAQ
❓ 需要修改 AI 工具的地址吗?需要把 API 基址指向本地代理(或 OpenAI 兼容适配器http://127.0.0.1:8766/v1),模型名与密钥保持不变,配置方法见 doc/OPENCLAW_INTEGRATION.md。
❓ 脱敏映射存在哪?会泄露吗?映射仅保存在本地内存中,按会话隔离、结束即销毁;审计日志存本地 SQLite,敏感值一律以掩码形式(如AKIA***MPLE)落盘。
❓ 拦截了消息,会话还能继续吗?可以。被拦截的消息及其错误响应会在后续请求中自动剥离,对话不会卡死。
总结
ClawVault 用一条透明链路解决了 AI 时代的头号焦虑:40+ 内置模式检测 15+ 类敏感数据 → 按风险评分定级 → 拦截或占位符脱敏 → 响应自动还原 → 全程留痕。敏感数据不出本机,模型只见到占位符,而你的 AI 体验几乎无感。现在就clawvault start一下,给你的 AI 装上一道"保险箱"吧 🦞
- AI 安全治理
- 提示词注入防护
- 应用安全
- 模型安全
- 后端
- API网关
【免费下载链接】ClawVault
OpenClaw Security Vault — Atomic "claw" control: every AI reach, within your sight.
相关推荐
终极Kubescape敏感信息检测指南:快速扫描密钥与证书泄露风险
终极Kubescape敏感信息检测指南:快速扫描密钥与证书泄露风险 Kubescape是一款开源的Kubernetes安全平台,专为IDE、CI/CD管道和集群
网络安全云原生应用安全运维SOPS终极密钥管理指南:5步防止敏感数据本地泄露
SOPS终极密钥管理指南:5步防止敏感数据本地泄露 SOPS(Secret Operations)是一个开源的加密和密钥管理工具,专门用于保护敏感数据的传输和存
密码学应用安全EMQX 认证器 API 敏感信息脱敏修复:`POST /authentication` 创建响应不再泄露 Provider 密钥(fix-17654)
EMQX 认证器 API 敏感信息脱敏修复: POST /authentication 创建响应不再泄露 Provider 密钥(fix 17654) 导读 E
后端物联网消息队列通信
创作声明:本文部分内容由AI辅助生成(AIGC),仅供参考