T09 · Insecure Skill Coding Practices
- Location
modules/phase-routing.md:148- Finding
Artifact-Derived Content Can Cause Shell Command Injection
- Content
View full analysis
: " \ --body "## Context Identified during phase. Artifact: ## Description " \ --label "feature,low-priority" ``` ``` ### Technical Analysis The documented procedure extracts project names, summaries, artifact paths, and complete item text from project artifacts and interpolates those values into a Bash command. Shell double quotes do not neutralize command substitutions such as `$(command)` or backtick expressions. If the documented command is implemented by textual substitution and passed to a shell, an attacker-controlled Out of Scope item such as: ```text - Add reporting support $(malicious_command) ``` could cause `malicious_command` to execute locally before `gh` receives the final argument. The same risk applies to any interpolated field derived from an untrusted or generated artifact. The Markdown documentation does not require shell-free process invocation, robust escaping, validation, or use of a body file. This finding is conditional on an implementation executing the shown command through a shell after textual interpolation. The package contains documentation rather than an executable implementation, but following the protocol literally creates an exploitable command-injection channel. ### Attack Path 1. An attacker contributes or modifies `docs/project-brief.md` or `docs/specification.md`. 2. The attack ...[truncated 1299 chars]- Remediation
View remediation
