T09 · Insecure Skill Coding Practices
- Location
scripts/vetter.py:130- Finding
Security Scanner Bypass Through Unconditional Source-Line Filtering
- Content
View full analysis
- Remediation
View remediation
Security audit
Security checks for vulnerabilities and agentic risk
This is a purpose-aligned local skill scanner, but its results should be treated as advisory because its pattern checks can miss risky skill instructions.
Installing this skill is reasonable if you want an advisory pre-install scanner, but do not rely on it as the only approval gate. It uses simple regex checks and can miss malicious instructions in normal Markdown prose, so pair it with manual review or a stronger scanner for untrusted skills.
scripts/vetter.py:130Security Scanner Bypass Through Unconditional Source-Line Filtering
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
### 🔴 Critical (Block Install)
| Check | Pattern | Action |
|-------|---------|--------|
| Disk wipe | `rm -rf /`, `rm -rf ~`, `dd if=.*of=/dev/sdX` | BLOCK |
| Fork bomb | `:(){ :\|:& };:`, `fork()` loop | BLOCK |
| Format | `mkfs`, `newfs`, `umount -f` | BLOCK |
| SSH key deletion | `rm.*\.ssh/`, `ssh-keygen.*-D` | BLOCK |
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
### 🔴 Critical (Block Install)
| Check | Pattern | Action |
|-------|---------|--------|
| Disk wipe | `rm -rf /`, `rm -rf ~`, `dd if=.*of=/dev/sdX` | BLOCK |
| Fork bomb | `:(){ :\|:& };:`, `fork()` loop | BLOCK |
| Format | `mkfs`, `newfs`, `umount -f` | BLOCK |
| SSH key deletion | `rm.*\.ssh/`, `ssh-keygen.*-D` | BLOCK |
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
### 🔴 Critical (Block Install)
| Check | Pattern | Action |
|-------|---------|--------|
| Disk wipe | `rm -rf /`, `rm -rf ~`, `dd if=.*of=/dev/sdX` | BLOCK |
| Fork bomb | `:(){ :\|:& };:`, `fork()` loop | BLOCK |
| Format | `mkfs`, `newfs`, `umount -f` | BLOCK |
| SSH key deletion | `rm.*\.ssh/`, `ssh-keygen.*-D` | BLOCK |
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
### 🔴 Critical (Block Install)
| Check | Pattern | Action |
|-------|---------|--------|
| Disk wipe | `rm -rf /`, `rm -rf ~`, `dd if=.*of=/dev/sdX` | BLOCK |
| Fork bomb | `:(){ :\|:& };:`, `fork()` loop | BLOCK |
| Format | `mkfs`, `newfs`, `umount -f` | BLOCK |
| SSH key deletion | `rm.*\.ssh/`, `ssh-keygen.*-D` | BLOCK |
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
| Fork bomb | `:(){ :\|:& };:`, `fork()` loop | BLOCK |
| Format | `mkfs`, `newfs`, `umount -f` | BLOCK |
| SSH key deletion | `rm.*\.ssh/`, `ssh-keygen.*-D` | BLOCK |
| System takeover | `chmod 777.*shadow`, `/etc/passwd` edit | BLOCK |
### 🟡 Medium (Warn + Allow)
| Check | Pattern | Action |
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
| Fork bomb | `:(){ :\|:& };:`, `fork()` loop | BLOCK |
| Format | `mkfs`, `newfs`, `umount -f` | BLOCK |
| SSH key deletion | `rm.*\.ssh/`, `ssh-keygen.*-D` | BLOCK |
| System takeover | `chmod 777.*shadow`, `/etc/passwd` edit | BLOCK |
### 🟡 Medium (Warn + Allow)
| Check | Pattern | Action |
Tool parameters are crafted to achieve unintended or unsafe behavior. Parameter abuse can bypass intended safety checks (e.g. shell=True, --force, dangerous glob patterns).
| Fork bomb | `:(){ :\|:& };:`, `fork()` loop | BLOCK |
| Format | `mkfs`, `newfs`, `umount -f` | BLOCK |
| SSH key deletion | `rm.*\.ssh/`, `ssh-keygen.*-D` | BLOCK |
| System takeover | `chmod 777.*shadow`, `/etc/passwd` edit | BLOCK |
### 🟡 Medium (Warn + Allow)
| Check | Pattern | Action |
Code accesses credential files (SSH keys, AWS credentials, etc.). This could indicate credential theft attempts.
WARNING_PATTERNS = [
(r'curl.*\|.*sh', 'Curl pipe to shell'),
(r'wget.*\|.*sh', 'Wget pipe to shell'),
(r'\.env', 'Environment file access'),
(r'\.aws/', 'AWS credentials access'),
(r'ssh-keygen', 'SSH key generation'),
(r'chmod\s+[0-7]{3,4}', 'Permission change'),
The skill advertises behavior that scans skill code and invokes a Python script, implying file-read and likely shell execution capabilities, but it does not declare any tool scope such as permissions or allowed-tools. This creates an authorization ambiguity where an installer or orchestrator may grant broader capabilities than intended, increasing the blast radius if the skill is abused or misrouted.
The automatic invocation conditions are described broadly, such as before installs, updates, or when users ask to "vet" or "check" a skill, without precise scoping rules. Ambiguous trigger boundaries can lead to accidental invocation, unexpected access to files, or security workflow disruption through false activations.
The automatic invocation conditions are described broadly, such as before installs, updates, or when users ask to "vet" or "check" a skill, without precise scoping rules. Ambiguous trigger boundaries can lead to accidental invocation, unexpected access to files, or security workflow disruption through false activations.
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
| Fork bomb | `:(){ :\|:& };:`, `fork()` loop | BLOCK |
| Format | `mkfs`, `newfs`, `umount -f` | BLOCK |
| SSH key deletion | `rm.*\.ssh/`, `ssh-keygen.*-D` | BLOCK |
| System takeover | `chmod 777.*shadow`, `/etc/passwd` edit | BLOCK |
### 🟡 Medium (Warn + Allow)
| Check | Pattern | Action |
Commands invoke sudo or root privileges. Verify this elevated access is necessary and justified.
| Fork bomb | `:(){ :\|:& };:`, `fork()` loop | BLOCK |
| Format | `mkfs`, `newfs`, `umount -f` | BLOCK |
| SSH key deletion | `rm.*\.ssh/`, `ssh-keygen.*-D` | BLOCK |
| System takeover | `chmod 777.*shadow`, `/etc/passwd` edit | BLOCK |
### 🟡 Medium (Warn + Allow)
| Check | Pattern | Action |
No suspicious patterns detected.