ClawAudit verdict
crabukit
A security scanner for OpenClaw skills performing static analysis; executionSinkDetected is from dangerous pattern examples quoted as detection rules, not executed.
⚠ Flagged for review — coarse, uncorroborated signal, not a confirmed exploit. Review the config yourself before installing.
Automated static analysis — not a human review. ClawAudit flags capabilities, not confirmed intent, and can produce false positives. Disagree with this verdict? Use Dispute below.
Permission integrity
package_install
Findings (16)
Uses eval() — can execute arbitrary code
SKILL.md · prose · downgraded · eval(
Pipe-to-shell pattern (curl | sh) — supply chain attack vector
SKILL.md · prose · downgraded · curl \| bash
Pipe to bash — executes piped content as shell commands
SKILL.md · prose · downgraded · | bash
Pipe to python — executes piped content as Python code
.github/workflows/ci.yml · prose · downgraded · |
python
Bash /dev/tcp — raw TCP connection via shell
crabukit/analyzers/bash_static.py · prose · downgraded · /dev/tcp/
Accesses shell history/config
README.md · code · ~/.zshrc
Possible hardcoded credential
tests/fixtures/malicious-skill/scripts/exploit.py · prose · downgraded · API_KEY = "AKIAIOSFODNN7EXAMPLE
Uses exec() — may execute shell commands
SKILL.md · prose · downgraded · exec(
References sudo — requests elevated privileges
crabukit/analyzers/bash_static.py · prose · downgraded · sudo
References SSH/GPG private keys
crabukit/analyzers/bash_static.py · prose · downgraded · SSH_KEY
Accesses .ssh directory
crabukit/analyzers/bash_static.py · prose · downgraded · .ssh/
setuid — privilege escalation mechanism
RESEARCH_SUMMARY.md · prose · downgraded · setuid
subprocess execution — runs system commands from Python
crabukit/cli.py · prose · downgraded · subprocess.run(
Python shutil file operation — copies/moves/deletes files
crabukit/cli.py · prose · downgraded · shutil.rmtree(
Python urllib.request — network access
crabukit/rules/patterns.py · prose · downgraded · urllib.request
Python http.client — stdlib network access
crabukit/rules/patterns.py · prose · downgraded · http.client.HTTPSConnection
Why the tier is capped
Execution sink present in raw bytes (Hard Floor: class A/B/D). Final tier capped at Caution — cannot be lifted by any downgrade, example-payload opt-in, or allowlist.
Permissions & capabilities
No declared permissions — minimal attack surface.
package_install Is this flag fair?
Thanks — recorded.