T09 · Insecure Skill Coding Practices
- Location
scripts/rolling-journal.js:324- Finding
Command Injection Through Unvalidated Journal Path
- Content
View full analysis
"${filename}" << 'EOF' ${escapedContent} EOF`, { encoding: 'utf-8' }); } catch (shellErr) { console.error('Shell write also failed:', shellErr.message); throw e; } } return filename; } ``` ### Technical Analysis The `journal_path` value originates in `~/.phoenixclaw/config.yaml`, but the implementation parses it with a regular expression and performs no validation against shell metacharacters, command substitutions, control characters, or an approved storage root. The path is interpolated directly into commands executed through `child_process.execSync() ...[truncated 1861 chars]- Remediation
View remediation
