This report was generated in Chinese. Some content may be in Chinese.
High Risk — Risk Score 68/100
Last scan:2 hr ago Rescan
68 /100
skill-registry-unified
一体化技能注册表 - 本地优先匹配,无匹配则自动搜索ClawHub并安全安装
该技能存在未声明的远程代码执行能力:代码通过 child_process.spawn 执行 npx clawdhub search 从外部安装技能,但 SKILL.md 未声明 shell 权限和远程安装行为。
Skill Nameskill-registry-unified
Duration37.9s
Enginepi
ClawHub skill-registry-unified v1.0.2 by xuwei-stream
📥 233 📦 1
ClawHub Verdict Suspicious dangerous_execllm_suspicious
Do not install this skill
必须删除未声明的远程安装功能,或在 SKILL.md 中明确声明 shell:WRITE 和 network:READ 权限,并增加安装前安全确认机制。

Attack Chain 4 steps

Entry 用户输入技能搜索请求
SKILL.md:1
Escalation 未声明的 shell 执行 spawn npx clawdhub search
registry_unified.js:40
Escalation 从 ClawHub 下载并安装未知技能
registry_unified.js:40
Impact 恶意技能获得同等权限,可执行代码/窃取数据
registry_unified.js:40

Findings 4 items

Severity Finding Location
Critical
未声明的远程代码执行 RCE
代码通过 child_process.spawn 执行 npx clawdhub search 命令,该命令会从远程仓库搜索并安装技能。SKILL.md 完全未声明此 shell:WRITE 和 network:READ 能力。
const p=spawn('npx',['clawdhub','search',s,'--limit','3'],{timeout:30000,stdio:['pipe','pipe','pipe']});
→ 必须在 SKILL.md 的 allowed-tools 或 permissions 中声明 shell:WRITE 和 network:READ 权限。
registry_unified.js:40
High
阴影功能:远程安装技能 Doc Mismatch
SKILL.md 声称'安全安装'但未说明实际通过 clawdhub 从外部源安装代码,存在供应链风险。
description: 一体化技能注册表 - 本地优先匹配,无匹配则自动搜索ClawHub并安全安装
→ 明确列出安装来源、验证机制和权限需求。
SKILL.md:1
Medium
缺少依赖版本锁定 Supply Chain
代码依赖 js-yaml 但无 package.json 或 requirements.txt 锁定版本。
const yaml = require('js-yaml');
→ 添加 package.json 并锁定 js-yaml 版本。
registry_unified.js, scan-all-skills.js:3
Low
有限的安全扫描 Sensitive Access
vetSkill() 仅检查文件名包含敏感关键字,不扫描文件内容,且发现可疑文件后仅返回 false 而非阻止安装。
const sus=['.env','credentials.json','id_rsa','password'];
→ 增强安全扫描深度,扫描文件内容,并在发现敏感文件时明确阻止安装流程。
registry_unified.js:28
ResourceDeclaredInferredStatusEvidence
Filesystem NONE READ ✗ Violation registry_unified.js:18, scan-all-skills.js:26
Filesystem NONE WRITE ✗ Violation registry_unified.js:0, scan-all-skills.js:60
Shell NONE WRITE ✗ Violation registry_unified.js:40 npx clawdhub search
Network NONE READ ✗ Violation registry_unified.js:40 通过npx clawdhub访问远程仓库

File Tree

3 files · 6.6 KB · 187 lines
JavaScript 2f · 153L Markdown 1f · 34L
├─ 📜 registry_unified.js JavaScript 83L · 2.7 KB
├─ 📜 scan-all-skills.js JavaScript 70L · 3.1 KB
└─ 📝 SKILL.md Markdown 34L · 812 B

Dependencies 1 items

PackageVersionSourceKnown VulnsNotes
js-yaml * require (implicit) No 无 package.json,版本未知

Security Positives

✓ sanitizeInput() 对用户输入做了基础过滤
✓ vetSkill() 尝试检测敏感文件名
✓ 代码结构清晰,模块化良好