T09 · Insecure Skill Coding Practices
- Location
checks.sh:74- Finding
Automatic Execution of Project-Controlled Shell Scripts
- Content
View full analysis
/dev/null 2>&1; then echo " ✅ $basename_check" else echo " ❌ $basename_check (failed)" CHECKS_PASS=false fi ``` ### Technical Analysis The check runner automatically executes every shell script under the target project's `backstage/checks/local/` directory. These files are controlled by the project and may therefore be supplied by any contributor with permission to add repository files. There is no script allowlist, integrity manifest, signature verification, content inspection, sandbox, or per-script execution confirmation. The scripts inherit the privileges, environment, filesystem access, network access, and credentials available to the user running the Skill. Redirecting both standard output and standard error to `/dev/null` further reduces transparency by hiding payload output and error messages. ### Attack Path 1. An attacker adds a file such as `backstage/checks/local/health.sh` to a repository. 2. The file contains arbitrary shell commands, such as commands that read credentials, alter sourc ...[truncated 918 chars]- Remediation
View remediation
