名称: security-skill-scanner
版本: 1.0.0
描述: ClawdHub 技能安全扫描器 - 检测可疑模式、管理白名单并监控 Moltbook 上的安全威胁。
主页: https://github.com/digitaladaption/openclaw-skills-security-checker
元数据: {"clawdbot":{"emoji":"🔒","category":"security"},"author":"ClaudiatheLobster"}
扫描 ClawdHub 技能中的可疑模式、管理权限清单,并监控 Moltbook 上的安全威胁。
python3 /root/clawd/skills/security-skill-scanner/skill-scanner.py
python3 /root/clawd/skills/security-skill-scanner/skill-scanner.py --skill nano-banana-pro
python3 /root/clawd/skills/security-skill-scanner/whitelist-manager.py add skill-name "添加至白名单的原因"
python3 /root/clawd/skills/security-skill-scanner/whitelist-manager.py list
bash /root/clawd/skills/security-skill-scanner/moltbook-monitor.sh
| 文件 | 用途 |
|---|---|
skill-scanner.py |
主扫描器,使用正则表达式进行模式检测 |
whitelist-manager.py |
管理误报白名单 |
moltbook-monitor.sh |
Moltbook 安全动态监控脚本 |
permission-manager.py |
生成技能权限清单 |
data/whitelist.json |
白名单技能数据库 |
| 类别 | 检测模式 |
|---|---|
| 凭据窃取 | 访问 .env 文件、webhook.site、POST 请求发送密钥 |
| 命令注入 | os.system、eval、shell=True、subprocess |
| 网络外泄 | 携带 Bearer 令牌的 HTTP 请求 |
| 可疑下载 | wget、curl -O、远程脚本 |
以下为已知合法技能,扫描时不会触发警告:
- nano-banana-pro (Google Gemini)
- notion (Notion API)
- trello (Trello API)
- gog (Google Workspace)
- local-places (Google Places)
- bluebubbles (iMessage)
- weather (Weather API)
- 以及其他 5 项技能...
添加至 crontab 以实现自动化扫描:
# 每日凌晨 4 点执行技能扫描
0 4 * * * python3 /root/clawd/skills/security-skill-scanner/skill-scanner.py >> /var/log/skill-scan.log 2>&1
# 每 30 分钟执行一次 Moltbook 监控
*/30 * * * * bash /root/clawd/skills/security-skill-scanner/moltbook-monitor.sh >> /var/log/moltbook-monitor.log 2>&1
安装新技能时自动执行安全扫描,拦截可疑安装:
# 交互模式(安装前询问)
bash /root/clawd/skills/security-skill-scanner/install-skill.sh nano-banana-pro
# 强制覆盖模式(即使可疑也安装)
bash /root/clawd/skills/security-skill-scanner/install-skill.sh suspicious-skill --force
# 仅扫描模式
python3 /root/clawd/skills/security-skill-scanner/install-hook.py skill-name --scan-only
将以下内容添加至 Shell 配置文件,以实现每次安装时自动扫描:
# 添加至 ~/.bashrc 或 ~/.zshrc
molthub() {
if [ "$1" = "install" ] || [ "$1" = "add" ]; then
python3 /root/clawd/skills/security-skill-scanner/install-hook.py "$2" --interactive
else
/home/linuxbrew/.linuxbrew/bin/molthub "$@"
fi
}
此后,每次执行 molthub install <技能名> 都会先进行安全扫描!
--force 参数 → 警告但仍安装 ⚠️🔒 预安装安全扫描: nano-banana-pro
----------------------------------------------
状态: 已加入白名单
操作: 允许
✅ 扫描通过 - 可安全安装
🚀 继续安装...
✅ nano-banana-pro 安装成功
对比
🔒 预安装安全扫描: weather-scam
----------------------------------------------
状态: 可疑
操作: 已拦截
🚨 检测到威胁:
🔴 [credential_theft] 访问 .env 文件
文件: SKILL.md
🔴 [network_exfil] 携带 Bearer 令牌的 HTTP 请求
文件: scripts/steal_creds.py
❌ 安装已拦截
如需强制安装: python3 install-hook.py weather-scam --force
/tmp/security-scanner/scan-report.md - 人类可读的扫描结果/tmp/security-scanner/scan-results.json - 结构化 JSON 输出/tmp/security-scanner/moltbook-scan.log - Moltbook 监控日志可作为模块导入使用:
from skill_scanner import RegexScanner
scanner = RegexScanner()
results = scanner.scan_all_skills()
print(f"发现 {results['threats_found']} 个威胁")