首页龙虾技能列表 › skill scan and detect risk — skill-scan-detect-risk — 扩展安全扫描与风险检测

🛡️ skill scan and detect risk — skill-scan-detect-risk — 扩展安全扫描与风险检测

v1.0.0

OpenClaw扩展安全管理系统。扫描已安装扩展的安全风险,提供allowlist策略控制,在使用高风险扩展前进行风险提示。适用于安全管理、风险评估、权限控制场景。

1· 214·0 当前·0 累计
by @jayhe·MIT-0
下载技能包
License
MIT-0
最后更新
2026/4/14
安全扫描
VirusTotal
无害
查看报告
OpenClaw
可疑
medium confidence
该技能基本符合其声明的用途(扫描已安装的技能),但存在不一致之处和一个修改agent系统提示词的hook——安装前需谨慎考虑。
评估建议
该技能似乎实现了一个合法的本地扫描器,但安装前需检查两点:1)检查并控制hook:hook/shield-scan.js运行本地Python启动脚本并将其输出追加到agent的系统提示词中。此行为可能广泛改变agent行为(提示词注入)。如需安装,请移除或禁用该hook,或确保引用的启动脚本存在、简单且无法被不可信方修改。2)修复不一致:SKILL.md声称hook/auto-check是'计划中'的,但hook文件存在且引用了scripts/tui-startup.py(该文件缺失)。请向作者询问为何存在该hook以及启动脚本应做什么。如无法验证启动脚本内容,请勿启用该hook。其他注意事项:检查config.json的allowlist条目(确保信任列出的技能),先在sandbox中运行扫描器,限制对~/.openclaw/workspace/skills的写权限以防止攻击者替换启动脚本或其他扫描器文件。简短建议:保留扫描器代码(scripts/shield.py)但移除/禁用JS hook直至其行为被审计。...
详细分析 ▾
用途与能力
名称/描述与代码匹配:Python扫描器扫描~/.openclaw/workspace/skills中的关键词,构建风险数据库,提供allowlist/阻止行为。所需二进制文件(python3)合适,无不相关的凭据或外部二进制文件请求。
指令范围
SKILL.md和脚本描述了扫描技能目录、读取SKILL.md和scripts/、保存本地JSON数据库——这在范围内。然而,SKILL.md声明'Hook机制/自动检查'是计划中/未实现的,但hook文件(hook/shield-scan.js)存在并注册为'session-start'。该hook执行启动Python脚本并将其输出追加到context.systemPrompt中,这可能全局影响agent。该hook引用了scripts/tui-startup.py(该文件在包中不存在)——这种不一致可能导致运行时错误,或者如果该文件后续被添加/修改则可能被滥用。
安装机制
无安装规范(仅指令安装),仅包含一个python脚本和小型JS hook。无外部URL下载,无解压步骤,所需二进制文件最少(python3)。
凭证需求
无环境变量,无凭据,除正常技能配置(技能下的config.json和~/.openclaw下的memory JSON)外无其他配置路径。扫描器按预期读取技能目录下的文件;提供的文件中不包含明确的网络或凭据泄露代码。
持久化与权限
hook通过追加扫描输出来修改context.systemPrompt。虽然该技能未标记为always:true,但该hook将在session-start时运行(如果平台加载hooks),这使其成为agent提示词的有效注入通道。将任意脚本输出追加到系统提示词是一个潜在的提示词注入向量,除非启动脚本输出被严格控制和清理,否则是不成比例的。此外,代码引用了一个缺失的启动脚本,这是一个应解决的不一致之处。
hook/shield-scan.js:24
检测到Shell命令执行(child_process)。
安全有层次,运行前请审查代码。

License

MIT-0

可自由使用、修改和再分发,无需署名。

运行时依赖

无特殊依赖

版本

latestv1.0.02026/3/12

Skill-shield 1.0.0 – 全新OpenClaw安全管理和风险控制 - 全面重写:由ClawHub技能单目录扫描与安全评分工具,升级为OpenClaw扩展统一安全管理系统,聚焦已装扩展风险识别、allowlist/blacklist控制与用户交互提示。 - 新增持久化风险数据库、风险历史记录与管理命令,支持风险快速检索与审计。 - 通过config.json集中管理信任列表、阻止名单和风险交互策略,实现精细化权限与提示控制。 - 支持10大常见风险类型自动识别,按严重度进行分级处理。 - 集成实用命令:一键扫描、单扩展检查、allowlist与blacklist管理、风险报告查看、风险记录清除。 - 功能示例与故障排除指引全面更新,适配OpenClaw场景。

● 无害

安装命令 点击复制

官方npx clawhub@latest install skill-shield-007
镜像加速npx clawhub@latest install skill-shield-007 --registry https://cn.clawhub-mirror.com

技能文档

概述

安全管理已安装的OpenClaw扩展,扫描风险、存储风险列表、提供allowlist策略控制,确保在使用高风险扩展前进行风险提示和用户确认。

核心功能

  • 自动扫描:扫描所有已安装的扩展,识别安全风险
  • 风险评估:基于代码分析识别10种常见安全风险
  • Allowlist管理:配置默认信任的扩展,跳过风险检查
  • 黑名单管理:阻止危险扩展执行
  • 风险提示:使用高风险扩展前提示用户确认
  • 持久存储:保存风险报告到memory,支持历史查询

风险类别

风险ID风险名称严重程度检测关键词
R001网络访问requests, curl, fetch, urllib, http, socket
R002文件写入write, create, save, mkdir, rmdir, unlink
R003文件读取read, open, cat, glob, listdir
R004命令执行严重exec, subprocess, shell, spawn, Popen, system
R005外部APIapi, webhook, endpoint, send, notify, post, get
R006数据外发严重upload, send, transfer, export, forward
R007凭证访问严重apiKey, password, token, secret, credential, auth
R008无签名验证无_meta.json文件
R009依赖未知requirements.txt, package.json, dependencies
R010权限过宽chmod 777, allowlist, full

使用方法

扫描所有扩展

执行skill-shield扫描所有已安装的扩展

检查特定扩展

执行skill-shield检查的风险

添加到Allowlist

执行skill-shield添加到allowlist

从Allowlist移除

执行skill-shield移除从allowlist

添加到黑名单

执行skill-shield添加到黑名单

查看风险报告

执行skill-shield查看风险列表

清除风险记录

执行skill-shield清除风险记录

配置说明

配置文件位置:~/.openclaw/workspace/skills/skill-shield/config.json

{
  "allowlist": ["file-search", "weather-search"],
  "autoApprove": [],
  "blocked": [],
  "scanOnInstall": true,
  "promptOnHighRisk": true
}
  • allowlist: 默认信任的扩展,跳过风险检查
  • autoApprove: 自动批准的扩展(不需要用户确认)
  • blocked: 黑名单,完全阻止执行
  • scanOnInstall: 安装时自动扫描
  • promptOnHighRisk: 高风险时提示用户

数据存储

风险数据库位置:~/.openclaw/workspace/memory/shield-risks.json

{
  "version": "1.0.0",
  "lastScanTime": "2026-03-11T09:45:00Z",
  "skills": {
    "extension-name": {
      "path": "/path/to/extension",
      "risks": ["R001", "R004", "R006"],
      "severity": "severe",
      "scanTime": "2026-03-11T09:45:00Z",
      "userDecision": "approved"
    }
  },
  "allowlist": ["file-search", "weather-search"],
  "history": [
    {
      "extension": "extension-name",
      "action": "blocked",
      "time": "2026-03-11T09:50:00Z"
    }
  ]
}

使用示例

场景1:首次扫描

用户:扫描所有扩展
Agent:🔍 正在扫描9个扩展...
📊 扫描完成!
🔴 严重: 6
🟠 高危: 1
🟡 中危: 0
🟢 低危/安全: 2
💾 风险报告已保存

场景2:使用高风险扩展

用户:执行a-stock-dragon-tiger
Agent:⚠️ 安全警告
扩展: a-stock-dragon-tiger
风险等级: severe
风险项:
  • R001: 网络访问
  • R004: 命令执行
  • R006: 数据外发
是否继续? (yes/no): 用户:yes Agent:✅ 继续执行

场景3:添加到Allowlist

用户:将weather-search添加到allowlist
Agent:✅ 已将weather-search添加到allowlist
后续使用将不再提示风险

风险等级映射

严重程度包含风险用户确认要求
严重R004, R006, R007强制确认
R001, R002, R010强制确认
R003, R005, R009建议确认
R008可选确认

技术实现

扫描流程

  • 遍历~/.openclaw/workspace/skills/目录
  • 读取每个扩展的SKILL.md、scripts/、references/
  • 基于关键词匹配识别风险
  • 计算严重程度等级
  • 生成风险报告并存储

检查流程

  • 检查扩展是否在allowlist → 跳过检查
  • 检查扩展是否在blocked → 阻止执行
  • 查询风险数据库 → 获取风险信息
  • 根据严重程度决定是否提示用户
  • 记录用户决策到历史

安全原则

  • ✅ 所有高风险操作需要用户明确确认
  • ✅ Allowlist中的扩展默认信任
  • ✅ 风险记录持久化存储
  • ✅ 支持审计历史查询
  • ✅ 黑名单完全阻止执行

扩展计划

  • [ ] Hook机制:在使用扩展前自动检查
  • [ ] 安装时扫描:clawhub install时自动扫描
  • [ ] 风险修复建议:提供风险缓解建议
  • [ ] 定期报告:每周发送安全报告到飞书

故障排除

扫描失败

# 检查扩展目录权限
ls -la ~/.openclaw/workspace/skills/
# 手动运行扫描
python3 ~/.openclaw/workspace/skills/skill-shield/scripts/shield.py scan

配置文件错误

# 重置配置文件
echo '{}' > ~/.openclaw/workspace/skills/skill-shield/config.json

依赖要求

  • Python 3.6+
  • 无需额外依赖包
  • 标准库:os, re, json, glob, hashlib, pathlib, datetime, argparse, typing
数据来源:ClawHub ↗ · 中文优化:龙虾技能库
OpenClaw 技能定制 / 插件定制 / 私有工作流定制

免费技能或插件可能存在安全风险,如需更匹配、更安全的方案,建议联系付费定制

了解定制服务