核心用法
security-audit 是一套fail-closed(故障关闭)安全审计工作流,面向代码库及OpenClaw/ClawHub技能。其核心设计哲学并非验证"代码能否运行",而是回答"代码是否会背叛系统"。
执行入口为 JSON 格式输出脚本:
bash scripts/run_audit_json.sh <path> > /tmp/audit.json jq '.ok, .tools' /tmp/audit.json
支持三级安全严格度:standard(默认)、strict、paranoid,通过环境变量 OPENCLAW_AUDIT_LEVEL 控制。
显著优点
1. 多层防御架构:整合 trufflehog(密钥泄露扫描)、semgrep(静态分析)、hostile_audit.py(提示注入信号、持久化机制、依赖卫生)三重检测
2. fail-closed 设计:任一层级失败即整体FAIL,避免"部分通过"的虚假安全感
3. 零信任工作流支持:强制要求 openclaw-skill.json 权限清单,缺失即拒绝
4. 跨平台依赖管理:内置 apt/brew 多源安装配置,覆盖 jq、trufflehog、semgrep、python3
潜在缺点与局限性
- 静态分析局限:semgrep 规则集为自动化匹配,可能存在误报或新型攻击模式漏检
- Docker 可选性:虽建议隔离执行,但沙箱非强制,用户可能忽略运行时防护
- 依赖外部工具链:trufflehog、semgrep 的版本差异可能导致结果不一致
- paranoid 模式可用性:过度严格的策略可能阻碍正常技能部署,需权衡安全与效率
适合人群
- OpenClaw/ClawHub 技能仓库维护者与平台运营方
- 需自动化供应链安全审查的 DevSecOps 团队
- 对"不可信代码"执行前强制审计的企业安全架构师
常规风险
- 工具链供应链攻击:pipx/brew/apt 渠道本身可能成为攻击向量
- JSON 解析依赖:输出依赖
jq,若目标系统未预装可能导致管道失败 - 权限清单伪造:
openclaw-skill.json可被恶意构造,需配合签名验证增强信任