ai-agent-skill-scanner@1.0.2
CAUTION· install onlyPublisher claims: "Security scanner for AI agent skills. Detects hardcoded secrets, unsafe code execution, prompt injection, and malware patterns in under 50ms. Scan before you..." Observed in sandbox: no network, touches nothing outside the project, writes no memory.
Coverage
Nothing executable in the bundle ran; the trace covers the install step only.- Tested
- every file read, file written and host contacted by what ran
- Not tested
- use of the skill by an agent
Is [email protected] safe to install?
KillerSkills ran it in the KillerSkills honeypot sandbox (1 scenario; nothing executable in the bundle ran; the trace covers the install step only) on 2026-11-11 and scored it 68/100 (Caution). It is not known to be malicious, but it has behaviour or code a security policy should decide on before install. Notable findings: Destructive file system command detected; Pipe-to-shell pattern; Destructive file system command detected. Summary: no network, touches nothing outside the project, writes no memory.
Behavior trace
Honeypot run · 0 s · 1 scenarios · 0 deviationsStatic findings
| Destructive commands | Critical | `rm -rf /`, `mkfs.` |Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.# Special handling for pipe-to-shell: only flag if curl/wget X | sh/bash patternFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out."fragments": ["ignore previous instructions", "ignore the above", "ignore all instructions", "override instructions", "you are now"],Fix: Keep SKILL.md to visible, descriptive text. Remove comments and encoded text that address the agent."fragments": ["rm -rf /", "rm -rf ~", "rm -rf /*", "mkfs.", "dd if=", "> /dev/sd"],Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell."fragments": ["chmod 777", "chmod 666"],Fix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts."message": "os.system() can execute shell commands"Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell."fragments": ["sudo ", "sudo\t"],Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell."fragments": ["rm -rf /", "rm -rf ~", "rm -rf /*", "mkfs.", "dd if=", "> /dev/sd"],Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.| Pipe to shell | Critical | `curl ... | bash` |Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.| Permission overrides | Medium | `chmod 777` |Fix: Request the narrowest permission that works; replace wildcards with the exact paths or hosts.- 10 new detection signatures (pipe-to-shell, sudo escalation, destructive commands, credential file access, base64 obfuscation, git config, permission overrides)Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell."fragments": ["ignore previous instructions", "ignore the above", "ignore all instructions", "override instructions", "you are now"],Fix: Put hosts, commands and strings in plain source. Decoding at runtime looks identical to malware and costs points on its own."fragments": ["os.system("],Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.| `os.system()` | Critical | Shell commands |Fix: Build commands from fixed arguments; do not interpolate untrusted strings into a shell.| Pipe to shell | Critical | `curl ... | bash` |Fix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.SKIP_DIRS = {"node_modules", "__pycache__", ".git", ".venv", ".env", "venv", "dist", "build", ".next"}Fix: Stop enumerating or reading credential locations; take secrets from a declared environment variable the user sets on purpose.# Special handling for pipe-to-shell: only flag if curl/wget X | sh/bash patternFix: Build commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.Cost to the agent
Tokens estimated at four characters each. Skills load their instruction text when triggered; the figure is what that costs.
Known vulnerabilities
Vulnerability advisories (OSV) cover npm and PyPI packages; this registry has no advisory database.
What would make this Verified
12 points to 80 · weights: behavior 45%, static 25%, prompt 15%, publisher 15%- Pipe-to-shell pattern≈ +9 on the totalBuild commands from fixed arguments, never from interpolated strings; prefer an API client over shelling out.
- OS command execution function call detected≈ +9 on the totalBuild commands from fixed arguments; do not interpolate untrusted strings into a shell.
- Destructive command against a filesystem root or device≈ +9 on the totalBuild commands from fixed arguments; do not interpolate untrusted strings into a shell.
- Unclaimed publisher≈ +8 on the totalClaim certainlogicai: a verified publisher gets +50 on publisher trust. It is free and usually instant with GitHub sign-in.
- Destructive file system command detected≈ +4 on the totalBuild commands from fixed arguments; do not interpolate untrusted strings into a shell.
- Privileged sudo command≈ +4 on the totalBuild commands from fixed arguments; do not interpolate untrusted strings into a shell.