ClawAudit verdict
ict
This is a static security auditor for Claw Skills that scans for malicious patterns (eval, exec, C2, etc.); the detection rule keywords are documentation of what the tool looks for, not actual execution of malicious code, and the tool operates locally on skill folders.
⚠ 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.
Findings (18)
Pipe-to-shell pattern (curl | sh) — supply chain attack vector
SKILL.md · prose · downgraded · curl | bash
Pipe-to-shell pattern (wget | sh)
SKILL.md · prose · downgraded · wget | sh
Accesses sensitive system files
SKILL.md · prose · downgraded · /etc/passwd
Prompt injection — tries to override agent instructions
run_tests.py · prose · downgraded · Ignore all previous instructions
Pipe to bash — executes piped content as shell commands
SKILL.md · prose · downgraded · | bash
Pipe to sh — executes piped content as shell commands
SKILL.md · prose · downgraded · | sh
Possible hardcoded credential
ast_analyzer.py · prose · downgraded · API_KEY = "sk-1234567890abcdef
Uses eval() — can execute arbitrary code
ast_analyzer.py · prose · downgraded · eval(
References sudo — requests elevated privileges
SKILL.md · prose · downgraded · sudo
Accesses cloud provider credentials
SKILL.md · prose · downgraded · ~/.aws
os.system/popen — direct OS command execution
ast_analyzer.py · prose · downgraded · os.system(
subprocess execution — runs system commands from Python
incremental_scanner.py · prose · downgraded · subprocess.run(
Sets world-executable permissions
SKILL.md · prose · downgraded · chmod 777
References tunneling service
SKILL.md · prose · downgraded · ngrok
Popular HTTP library — network access
ast_analyzer.py · prose · downgraded · axios
Python urllib.request — network access
dependency_scanner.py · prose · downgraded · urllib.request
Python shutil file operation — copies/moves/deletes files
run_tests.py · prose · downgraded · shutil.rmtree(
Python os.environ.get — reads environment variable
run_tests.py · prose · downgraded · os.environ.get(
Why the tier is capped
Execution sink present in raw bytes (Hard Floor: class A/D). Final tier capped at Caution — cannot be lifted by any downgrade, example-payload opt-in, or allowlist.
Permissions & capabilities
Requires 1 system binary.
Is this flag fair?
Thanks — recorded.