run402-test
Skill performs undeclared filesystem access to read stored API credentials from ~/.config/run402/ that is not mentioned in SKILL.md documentation.
为什么得出这个结论
1/4 个维度触发发现 3 项声明之外的能力或越权行为。
提取到 4 个一般风险产物,需要结合上下文判断。
没有形成明确的恶意路径。
没有完整依赖信息,供应链判断需要保留弹性。
风险分是怎么被拉高的
SKILL.md only shows curl examples but script reads ~/.config/run402/projects.json
Reads service_key from local config without documentation
Makes HTTP POST requests to api.run402.com not declared as capability
最关键的证据
Documentation mismatch - curl examples vs actual implementation
SKILL.md only shows curl commands for database operations but the actual sql2.mjs script reads local config files from ~/.config/run402/projects.json. This hidden file access is not documented.
sql2.mjs:10 Accesses sensitive application config directory
Script reads from ~/.config/run402/ directory which is a sensitive application configuration path containing service credentials.
sql2.mjs:8 Reads service_key credential from local file
The script extracts service_key from projects.json and uses it as Bearer token for API authorization. While this may be legitimate, credential access is undeclared.
sql2.mjs:12 声明能力 vs 实际能力
sql2.mjs:10 reads readFileSync(join(CONFIG_DIR, "projects.json")) sql2.mjs:14 performs fetch() POST to api.run402.com No shell execution detected No environment variable access detected No cross-skill invocation detected No clipboard access detected No browser access detected sql2.mjs:12 reads service_key from projects.json 可疑产物与外联
https://api.run402.com/v1/projects SKILL.md:13
https://api.run402.com/admin/v1/projects/$PROJECT_ID/sql SKILL.md:24
https://api.run402.com/rest/v1/todos?done=eq.false SKILL.md:33
https://api.run402.com sql2.mjs:5
依赖与供应链
没有结构化依赖告警。
文件构成
SKILL.md sql2.mjs