T09 · Insecure Skill Coding Practices
- Location
SKILL.md:65- Finding
Shell Command Injection Through Untrusted Pull Request Metadata
- Content
View full analysis
(): " --body "$(cat <<'EOF' ## Summary <1-3 sentence overview of what this PR does and why> ## Changes ### Added - ### Changed - ### Fixed - ### Removed - ## Motivation ## Testing - [ ] Unit tests added/updated - [ ] Integration tests added/updated - [ ] Manual testing performed ### Manual Testing Steps ## Breaking Changes ## Related Issues - Closes # - Related to # ## Checklist - [ ] Code follows project style guidelines - [ ] Self-review completed - [ ] Tests pass locally - [ ] Linting passes - [ ] Documentation updated (if needed) EOF )" ``` The values used to replace these placeholders are derived from repository-controlled sources collected earlier in the Skill: ```bash git log --oneline main..HEAD git log --format="### %s%n%n%b" main..HEAD git diff --stat main..HEAD git diff main..HEAD ``` ### Technical Analysis The Skill instructs the agent to derive a pull request title and body from commit messages, branch changes, and file diffs, and then place that generated content directly into shell source code. Commit subjects, commit bodies, branch-related context, file contents, and diffs can be controlled by an untrusted repository contributor. The template does not require shell-safe encoding or validation before this content is embe ...[truncated 2885 chars]- Remediation
View remediation
