Back to skill
Skillv1.11.0
ClawScan security
Openclaw Rescue Kit · ClawHub's context-aware review of the artifact, metadata, and declared behavior.
Scanner verdict
ReviewMar 7, 2026, 9:03 AM
- Verdict
- Review
- Confidence
- medium
- Model
- gpt-5-mini
- Summary
- 脚本总体与“网关自救/看门狗/配置回滚”目的相符,但声明的依赖与运行时实际需要不一致,且脚本会修改用户启动项、强杀进程、读取/修改会话和配置文件并提交到本地 Git,存在明显的权限/敏感数据和持久化风险,建议在信任之前进行人工审查并在隔离环境中测试。
- Guidance
- 要点与建议: - 主要不一致:技能声明不需要任何外部二进制或环境变量,但脚本实际会调用 openclaw、jq、curl、lsof、git、launchctl/systemctl、node/npm 等。不要以 “不需依赖” 为由盲目安装。 - 在安装前人工审查:逐行查看 install-rescue-kit.sh、gateway-start.sh、gateway-watchdog.sh、git-tag.sh 等脚本,确认要被修改的 LaunchAgent plist 内容、crontab 条目与写入路径。特别检查任何会读取或提交 ~/.openclaw/agents/main/sessions、~/.openclaw/openclaw.json、logs 目录的代码(这些可能包含敏感会话或凭据)。 - 敏感数据与 Git:脚本会 init 一个本地 Git 仓库并提交配置,若 openclaw.json 或其他文件包含令牌/凭据,会被提交并长期保留。请在安装前将敏感项移出或在 .gitignore 中显式忽略,或手动管理初始化/提交步骤。 - Webhook/通知令牌:notify.conf 为空模板,脚本只在用户填入后才会向这些 Webhook 发送告警。仅使用受信任的 Webhook URL,并限制其权限(群机器人的 Webhook 通常是合适的选择)。 - 测试与回滚:先在隔离环境或非生产的 OpenClaw 实例上运行安装与监控脚本,观察行为;确认 kill/cleanup 逻辑不会误杀其他关键进程。保留原始 plist 和配置备份(install 脚本会备份,但建议手动备份)。 - 依赖安装:确保系统安装了 jq、curl、lsof(可选但建议)与 git,或修改脚本以适配你的环境。 - 最小权限原则:以普通用户身份运行安装(脚本主要操作用户目录),不要用 root 运行;在 macOS 上对 plist 的修改可能需要你手动批准,谨慎执行自动加载步骤。 如果你希望我给出更精确的风险点,我可以: - 列出所有脚本中对外部命令/路径/网络的具体调用清单; - 标注会读取或写入可能包含敏感内容的具体文件路径; - 提供一个“安全化安装”步骤清单(如何先备份、如何手动审查并只启用部分功能)。
Review Dimensions
- Purpose & Capability
- concern技能名与描述(看门狗、端口清理、回滚等)与脚本实际功能基本一致 — 脚本会做端口清理、重启、配置验证、回滚、告警与日志清理。但 SKILL metadata 声称“Required binaries: none / Required env vars: none”,与脚本中大量对 openclaw、jq、curl、lsof、git、launchctl/systemctl、node/npm 等外部命令的依赖不符。声明与实际需求不匹配,可能让用户误以为安装无额外依赖。
- Instruction Scope
- concern运行说明要求复制并执行 install-rescue-kit.sh,会:拷贝脚本到 ~/.openclaw、初始化/修改用户 LaunchAgents 或 crontab、运行 PlistBuddy 修改 plist、强制 kill 占用端口的进程、init 本地 Git 仓库并提交配置、读取/解析会话文件和日志等。大部分行为在“自救套件”范畴内,但脚本会读取会话文件(可能包含敏感对话)、写入/删除日志与 session、并自动将配置提交到 Git,这些操作触及敏感数据与持久化变更,应在安装前得到明确授权与审查.
- Install Mechanism
- note没有远程下载或不可信 URL,安装通过运行自带的 install-rescue-kit.sh 或手动复制脚本完成,未从外部服务器拉取并执行代码——这降低了远程代码注入风险。但 install 脚本会修改用户启动项(LaunchAgents / crontab)并尝试自动加载 plist,这属于高影响的本地修改,用户应手动审核将被写入的 plist 内容。
- Credentials
- concernmetadata 未声明任何环境变量或凭据,但脚本使用并尊重多种 env/config(OPENCLAW_HOME, OPENCLAW_GATEWAY_PORT, OPENCLAW_LOG_DIR、notify.conf 中的 FEISHU/TELEGRAM 等令牌)。此外脚本会初始化 Git 并把配置文件提交到 ~/.openclaw 的仓库(若配置中含有令牌或凭据,会被纳入版本控制,尽管 .gitignore 尝试忽略某些目录)。声明中没有提示会访问/依赖这些环境变量与凭据,存在不透明性。
- Persistence & Privilege
- note脚本会创建长期运行的守护任务(macOS LaunchAgent 条目或 Linux crontab),并在用户主目录下建立日志、备份和 Git 仓库,实现持续存在与自动运行。always:false(正常),但该持久化会在用户层面修改启动项和定时任务,安装前应知晓并同意这些修改。
