核心用法
Leak Check 是一款面向 OpenClaw 用户的安全审计脚本,用于扫描本地会话日志(JSONL 格式),检测敏感凭证是否意外泄露至 AI 服务商(Anthropic、OpenAI、Google 等)。用户通过 leak-check.json 配置需监控的凭证片段(支持 abc*、*xyz、abc*xyz 等通配符模式),脚本递归扫描会话目录,输出泄露事件的时间戳、会话 ID 及接收方提供商。
显著优点
1. 精准溯源:不仅报告泄露存在,更指明具体接收数据的 AI 服务商,便于用户定向撤销或轮换密钥。
2. 智能去噪:区分"真实泄露"与"配置回显"——当用户在会话中讨论 leak-check.json 内容时,脚本识别此类场景并单独标记,避免误报。
3. 灵活配置:支持持久化配置路径(~/clawd/leak-check.json),技能更新后配置不丢失;同时允许通过 --config 显式指定路径。
4. 多格式输出:默认 Discord 风格报告适合人工审阅,JSON 格式便于集成至自动化 CI/CD 或告警系统。
潜在缺点与局限性
- 片段依赖安全:配置文件中仅存储凭证片段(非完整密钥),但若片段过短(如仅 3-4 字符),可能产生误匹配;片段过长则可能因日志截断而漏检。
- 本地扫描范围有限:仅覆盖
~/.openclaw/agents/main/sessions/目录下的 JSONL 文件,若用户手动迁移或重命名会话文件,可能形成扫描盲区。 - Node.js 环境依赖:要求目标系统已安装 Node.js,纯容器或无 Node 环境需额外配置。
- 无法阻断泄露:属于事后检测工具,无法在凭证发送前拦截,响应延迟取决于用户执行扫描的频率。
适合人群
- 高频使用 OpenClaw 的开发者与团队:需定期审计多会话日志,确保 CI 密钥、API Token 未意外流入模型上下文。
- 安全合规岗:需生成泄露溯源报告以满足内部审计或外部合规(如 SOC 2)要求。
- 密钥轮换周期敏感的业务:如 Web3、金融支付类项目,需快速定位泄露会话以最小化密钥暴露窗口。
常规风险
- 配置反泄露悖论:
leak-check.json本身若被不当分享(如提交至公共仓库),会暴露用户正在监控的凭证类型及片段模式,为攻击者提供 reconnaissance 信息。 - Node 供应链风险:脚本依赖 Node.js 运行时,若系统 Node 版本被恶意替换或脚本被篡改,可能导致扫描结果失真或敏感数据被二次提取。
- 误报导致的麻痹效应:频繁的"配置回显"警告若未及时处理,可能使用户对真实泄露警报产生忽视。
建议结合 OpenClaw 的会话自动清理策略(如定期删除旧会话)与最小权限密钥实践,降低泄露面。