Low Risk — Risk Score 20/100
Last scan:2 days ago Rescan
20 /100
gate-news-eventexplain
Event attribution and explanation for cryptocurrency price moves
Skill 核心功能为加密货币事件归因分析,符合声明。update-skill.sh 脚本权限声明存在瑕疵(required_permissions 为空但实际需网络/shell/文件写入),但提供了用户确认机制,属于合法更新工具而非恶意行为。
Skill Namegate-news-eventexplain
Duration52.9s
Enginepi
Safe to install
建议完善 SKILL.md 中的权限声明,将 update-skill.sh 的能力需求(network:READ, shell:WRITE, filesystem:WRITE)明确写入 required_permissions。如需提升安全性,可限制 GATE_SKILL_UPDATE_MODE=auto 模式的使用。

Findings 4 items

Severity Finding Location
Medium
权限声明与实际能力不匹配
SKILL.md frontmatter 声明 required_permissions: []、required_credentials: []、required_env_vars: [],但 scripts/update-skill.sh 实际需要网络读取(从 GitHub 下载)、shell 执行(git/curl/wget/unzip/tar)、文件系统写入(覆盖 ~/.agents/skills/ 等目录)
required_permissions: []
→ 在 SKILL.md frontmatter 中明确声明 required_permissions: ['network:READ', 'shell:WRITE', 'filesystem:WRITE']
SKILL.md:15 vs scripts/update-skill.sh:207-314:15
Low
影子功能-本地维护说明不充分
SKILL.md 仅在第56-58行简述本地维护存在,未详细说明 update-skill.sh 会从远程下载完整的 skill 仓库并覆盖本地文件。用户可能未预期 skill 会自动更新。
If `scripts/update-skill.*` exists, `check` may compare the installed copy...
→ 增加文档说明 update-skill.sh 的功能范围、目标目录列表、用户确认机制
SKILL.md:56-58:56
Low
自动更新模式风险
当环境变量 GATE_SKILL_UPDATE_MODE=auto 时,脚本会跳过用户确认直接应用更新。如果恶意脚本被注入目标仓库,可能在自动模式下被静默应用。
if gate_skill_is_auto_mode; then ... do_apply ...
→ 对于生产环境,建议禁用 auto 模式,使用双步骤确认流程
scripts/update-skill.sh:340-350:340
Info
GitHub IOCs 为已知合法来源
pre-scan.json 检测到 https://www.gate.com URL 和 GitHub 仓库地址,但这些是 Gate Skills 官方仓库,属于已知可信来源
REPO="https://github.com/gate/gate-skills.git"
→ 无需处理,这是正常的基础设施引用
README.md:34, scripts/update-skill.sh:24-26:34
ResourceDeclaredInferredStatusEvidence
Filesystem NONE WRITE ✗ Violation SKILL.md:15 required_permissions=[] 但 scripts/update-skill.sh:314 使用 cp -r 写入目标目…
Network NONE READ ✗ Violation SKILL.md 未声明网络访问,但 update-skill.sh:207 从 https://github.com/gate/gate-skills.git…
Shell NONE WRITE ✗ Violation update-skill.sh:231 执行 git clone、unzip、tar 等 shell 命令
Skill Invoke READ WRITE ✗ Violation SKILL.md 声明 required_permissions 为空但包含本地更新功能可修改其他 skill
1 findings
🔗
Medium External URL 外部 URL
https://www.gate.com
README.md:34

File Tree

6 files · 43.1 KB · 1147 lines
Shell 1f · 624L Markdown 5f · 523L
├─ 📁 references
│ ├─ 📝 mcp.md Markdown 75L · 2.2 KB
│ └─ 📝 scenarios.md Markdown 50L · 2.1 KB
├─ 📁 scripts
│ └─ 🔧 update-skill.sh Shell 624L · 21.0 KB
├─ 📝 CHANGELOG.md Markdown 44L · 2.7 KB
├─ 📝 README.md Markdown 34L · 2.3 KB
└─ 📝 SKILL.md Markdown 320L · 12.8 KB

Security Positives

✓ 核心功能(事件归因分析)完全符合 SKILL.md 声明,无越权 MCP 工具调用
✓ 提供双步骤确认机制(strict check 模式),防止静默覆盖
✓ 使用版本比对逻辑,仅在版本不匹配时提示更新
✓ 脚本包含详细的错误处理和日志输出,便于审计
✓ 支持多种下载方式(git/curl/wget)并有 fallback 机制
✓ Token 机制(apply token)防止未授权的更新操作
✓ 未发现凭证收割、远程代码执行、敏感路径遍历等高危指标