qcsd-ideation-swarm
Warn
Audited by Gen Agent Trust Hub on Oct 6, 2026
Risk Level: MEDIUMINDIRECT_PROMPT_INJECTIONCOMMAND_EXECUTIONEXTERNAL_DOWNLOADSDYNAMIC_EXECUTION
Full Analysis
- [INDIRECT_PROMPT_INJECTION]: The skill ingests content from arbitrary external URLs and processes this data through multiple analysis agents without employing boundary markers or sanitization. This establishes an attack surface where malicious content on a target website could attempt to influence the agent's behavior, file writes, or generated reports.
- Ingestion points: The
steps/01-flag-detection.mdfile implements a browser cascade to fetch content from user-specified URLs. - Boundary markers: No specific delimiters or safety instructions are defined to separate the untrusted content fetched from the URL from the agent's internal instructions.
- Capability inventory: The skill is capable of spawning sub-agents via the
Tasktool, writing multiple files to the local file system (e.g., reports in Step 2, Step 4, and Step 6), and executing shell commands (Step 7). - Sanitization: There is no evidence of filtering, escaping, or validation logic for the content retrieved from external URLs before it is passed to sub-agents.
- [COMMAND_EXECUTION]: The skill instructs the agent to execute a shell command (
aqe memory store) insteps/07-learning-persistence.mdthat incorporates dynamic variables, creating a potential command injection vector. - Evidence: The command
aqe memory store --key "qcsd-ideation-${epicId}-${Date.now()}"performs shell interpolation. If theepicIdvariable is populated with unsanitized data extracted from the user-provided epic or URL content, it could lead to unauthorized command execution. - [EXTERNAL_DOWNLOADS]: The skill implements a sophisticated "5-tier browser cascade" (Vibium, agent-browser, Playwright+Stealth, WebFetch, and WebSearch) to retrieve live content from external websites. While this is the intended functionality, it facilitates the ingestion of untrusted data.
- [DYNAMIC_EXECUTION]: The skill dynamically generates and executes a shell command for state persistence in
steps/07-learning-persistence.md. It also relies on local scripts such asscripts/fetch-content.jsto handle the complexity of the browser-based content retrieval.
Audit Metadata