低风险 — 风险评分 15/100
上次扫描:2 天前 重新扫描
15 /100
daily-movie
每日影视推荐
合法的影视推荐技能,代码无恶意行为,存在轻微的未声明文件系统访问(用于存储用户推送配置)
技能名称daily-movie
分析耗时28.2s
引擎pi
可以安装
建议在 SKILL.md 中补充声明 data/users/ 目录的文件系统访问权限,以符合规范

安全发现 1 项

严重性 安全发现 位置
低危
未声明的文件系统访问
push-toggle.js 需要读写 data/users/ 目录以存储用户推送配置(开启/关闭状态、时间、渠道),但 SKILL.md 未声明此 filesystem 权限。功能上合理但规范上违规。
fs.writeFileSync(safeUserPath(userId),JSON.stringify(d,null,2),'utf8')
→ 在 SKILL.md 的 allowed-tools 中声明 filesystem:READ/WRITE,或将用户配置迁移至 skill metadata 机制
scripts/push-toggle.js:27
资源类型声明权限推断权限状态证据
文件系统 NONE WRITE ✗ 越权 scripts/push-toggle.js:27 fs.writeFileSync写入用户配置到data/users/
命令执行 NONE NONE 无subprocess/exec调用
网络访问 NONE NONE 无HTTP请求代码
1 项发现
🔗
中危 外部 URL 外部 URL
https://openclaw.ai
README.md:5

目录结构

7 文件 · 10.1 KB · 225 行
Markdown 2f · 125L JavaScript 3f · 85L JSON 2f · 15L
├─ 📁 scripts
│ ├─ 📜 evening-push.js JavaScript 18L · 1.4 KB
│ ├─ 📜 morning-push.js JavaScript 18L · 1.5 KB
│ └─ 📜 push-toggle.js JavaScript 49L · 3.5 KB
├─ 📋 _meta.json JSON 7L · 137 B
├─ 📋 package.json JSON 8L · 165 B
├─ 📝 README.md Markdown 52L · 1.5 KB
└─ 📝 SKILL.md Markdown 73L · 1.8 KB

安全亮点

✓ 用户 ID 输入有严格的正则验证 /^\[a-zA-Z0-9_-\]{1,128}$/
✓ 实现了目录遍历防护 safeUserPath() 确保文件操作在 data/users/ 内
✓ 时间参数有格式校验(HH:MM,小时 0-23,分钟 0-59)
✓ 渠道白名单控制(telegram/feishu/slack/discord)
✓ 无 shell 执行、无网络请求、无敏感路径访问
✓ 无凭证收割、无数据外传、无恶意编码模式