ClawSec Suite 是 ClawSec 安全套件的管理器,运行于 OpenClaw 相关环境。其核心用途是让代理能够持续跟踪安全公告,并把公告与本地已安装技能关联起来,从而对风险技能给出处置建议。
主要能力
套件可以监控 ClawSec 公告订阅源、跟踪哪些公告是自上次检查以来的新增项、将公告与本地已安装技能交叉比对、对恶意技能公告给出移除建议并先要求用户明确批准,同时仍作为其他 ClawSec 防护的安装与管理入口。
内置的防护包括:已签名的内嵌公告信任集(advisories/feed.json、feed.json.sig、checksums.json、checksums.json.sig、feed-signing-public.pem);HEARTBEAT.md 中的可移植心跳工作流;公告轮询、状态跟踪与受影响技能检查;OpenClaw 公告守卫钩子包 hooks/clawsec-advisory-guardian/;钩子与可选 cron 调度的安装脚本 scripts/;受保护的安装器 scripts/guarded_skill_install.mjs;以及用于发现可安装技能的动态目录脚本 scripts/discover_skill_catalog.mjs。
附加技能并不在文档中硬编码,而是运行时从权威索引 https://clawsec.prompt.security/skills/index.json 发现。若远程目录索引可达且有效,套件使用它;若远程索引不可用或格式错误,脚本回退到 skill.json 中的套件本地目录元数据。
安装方式
运行所需环境:node、npx、openclaw、curl、jq、shasum、openssl、unzip。
通过 clawhub 安装(推荐):npx clawhub@latest install clawsec-suite。
也可使用 Vercel Skills CLI 安装:npx skills add prompt-security/clawsec --skill clawsec-suite -a openclaw -y。
手动下载并使用签名与校验和验证:需设置 SKILL_VERSION(例如 0.0.8)与 INSTALL_ROOT,然后从 https://github.com/prompt-security/clawsec/releases/download/clawsec-suite-v${VERSION} 下载发布压缩包、已签名校验和清单与签名公钥,先用固定指纹(SHA-256 of SPKI DER:711424e4535f84093fefb024cd1ca4ec87439e53907b305b79a631d5befba9c8)核对发布公钥,再验证 checksums.json 签名,之后比对压缩包 SHA-256 校验和,最后解压安装。
路径注意:bash/zsh 中路径变量需保持可展开(如 INSTALL_ROOT="$HOME/.openclaw/skills"),不要对家目录变量路径加单引号;PowerShell 中设置显式路径:$env:INSTALL_ROOT = Join-Path $HOME ".openclaw\skills"。若传入含未解析令牌(如 $HOME/...)的路径,套件脚本会快速失败并给出明确错误。
OpenClaw 自动化(钩子与可选 cron)
安装套件后启用公告守卫钩子:node "$SUITE_DIR/scripts/setup_advisory_hook.mjs"。该脚本在安装并启用持久钩子前会打印预检复核。
可选:创建或更新周期性 cron 提醒(默认每 6 小时),触发主会话公告扫描:node "$SUITE_DIR/scripts/setup_advisory_cron.mjs"。该脚本在创建或更新无人值守任务前同样打印预检复核。
启用钩子后需重启 OpenClaw 网关,然后运行一次 /new 以在下一个会话上下文中强制立即扫描。
受保护的技能安装流程(双重确认)
当用户请求安装技能时,先运行受保护安装检查:node "$SUITE_DIR/scripts/guarded_skill_install.mjs" --skill helper-plus --version 1.0.1。若未找到匹配公告,安装继续;若省略 --version,匹配更保守,任何引用该技能名称的公告都视为匹配;若找到匹配公告,脚本打印公告上下文并以退出码 42 结束。此时需用户明确二次确认,再用 --confirm-advisory 重跑:node "$SUITE_DIR/scripts/guarded_skill_install.mjs" --skill helper-plus --version 1.0.1 --confirm-advisory。即第一次确认是用户要求安装,第二次确认是用户看到公告详情后明确批准安装。
内嵌公告订阅源行为
默认远程合并订阅源 URL:https://clawsec.prompt.security/advisories/feed.json;内容含 NVD CVE、已批准的社区公告以及临时的无 CVE 的 GHSA 公告。远程签名 URL 为 ${CLAWSEC_FEED_URL}.sig(可用 CLAWSEC_FEED_SIG_URL 覆盖);远程校验和清单 URL 为同级 checksums.json(可用 CLAWSEC_FEED_CHECKSUMS_URL 覆盖);本地种子回退为 ~/.openclaw/skills/clawsec-suite/advisories/feed.json;本地签名可用 CLAWSEC_LOCAL_FEED_SIG 覆盖;本地校验和清单为 ~/.openclaw/skills/clawsec-suite/advisories/checksums.json;固定订阅源签名密钥为 ~/.openclaw/skills/clawsec-suite/advisories/feed-signing-public.pem(可用 CLAWSEC_FEED_PUBLIC_KEY 覆盖);状态文件为 ~/.openclaw/clawsec-suite-feed-state.json;钩子限速环境变量为 CLAWSEC_HOOK_INTERVAL_SECONDS(默认 300)。验证默认失败关闭:订阅源签名默认必需,配套校验和工件可用时验证校验和清单;仅在采用版本而上游尚无签名工件时,才临时设置 CLAWSEC_ALLOW_UNSIGNED_FEED=1 作为迁移绕过。
可利用性上下文
公告可包含 exploitability_score 与 exploitability_rationale 字段,评分取值为 high、medium、low 或 unknown,用于综合攻击向量、认证要求与 AI 代理部署模式进行评估,并检测公开利用与武器化状态。处理公告时应同时按严重性与可利用性排优先级。
心跳集成
使用套件心跳脚本作为单一周期性安全检查入口:skills/clawsec-suite/HEARTBEAT.md。它处理套件更新检查、订阅源轮询、新公告检测、受影响技能交叉引用、针对恶意或移除建议公告的需审批响应指引以及持久状态更新。
需审批的响应契约
若某公告指出某技能为恶意或建议移除,且该技能已安装:立即向用户通知公告详情与严重性;建议移除或禁用受影响技能;将原始安装请求仅视为第一意图;在删除或禁用(或继续有风险的安装)前要求明确的第二次确认;仅在第二次确认后继续。套件钩子与心跳指引默认非破坏性。
公告抑制与允许列表
公告守卫管道支持对已由安全团队审查并接受的公告进行选择性抑制。激活只需一个门:配置文件需包含 "enabledFor" 且数组内含 "advisory",无需 CLI 标志,配置中的哨兵值即为启用门。若 enabledFor 数组缺失、为空或不包含 "advisory",所有公告正常上报。配置文件解析优先级为:显式 --config <path> 参数、OPENCLAW_AUDIT_CONFIG 环境变量、~/.openclaw/security-audit.json、.clawsec/allowlist.json。每条抑制项需 checkId(与公告 ID 精确匹配)、skill(与受影响技能名大小写不敏感匹配)、reason(审计追踪所需理由)、suppressedAt(ISO 8601 日期 YYYY-MM-DD);两字段都匹配才抑制。审计与公告管道共享同一配置文件,通过 enabledFor 数组控制哪些管道遵守抑制列表;审计条目仅由审计管道匹配,公告条目仅由公告管道匹配。
可选技能安装
先动态发现当前可用可安装技能:node "$SUITE_DIR/scripts/discover_skill_catalog.mjs",再按名称安装:npx clawhub@latest install <skill-name>。自动化可加 --json 获取机器可读输出。
安全注意事项
务必先验证 checksums.json 签名再信任其文件 URL 与哈希,然后验证每个文件校验和;验证公告订阅源的分离签名,除非处于临时迁移窗口,否则不要启用 CLAWSEC_ALLOW_UNSIGNED_FEED;公告轮询需限速(每次检查至少间隔 5 分钟);将影响已安装技能的关键与高危公告视为立即行动项;若从独立 clawsec-feed 迁移,保留单一规范状态文件以避免重复通知;首次使用前离线固定并核对公钥指纹。
副作用与网络行为
设置脚本会在 ~/.openclaw/hooks 下安装公告钩子,并可选创建无人值守的 openclaw cron 任务,且使用 npx clawhub@latest install 进行受保护安装。网络行为上,套件会获取已签名公告订阅源工件与远程目录元数据,除非固定为本地路径。信任模型上,套件可以建议移除或阻止有风险的安装,但移除与安装覆盖仍需审批门控。
限制说明:文档未提供具体价格、收费模式、性能指标或平台兼容性清单,这些信息暂未提供。