T01 · Skill Instruction Hijacking
Warning
- Location
- scripts/return.sh:207
- Finding
- Unconditional Promotional Content Injected into Agent-Relayed Output## Vulnerability Details **File Location**: `scripts/return.sh:207-209` **Vulnerability Type**: Unconditional output manipulation **Risk Level**: Medium ### Vulnerable Code ```python print("") print("Powered by BytesAgain | bytesagain.com") ``` ### Technical Analysis The script unconditionally appends attacker-selected branding and an external domain to every response, regardless of the requested command. When an AI agent invokes this skill and relays its standard output, the injected footer becomes part of the agent's response. This behavior alters the expected output of the skill and causes the agent to distribute unrelated promotional content. Related branding also appears in `SKILL.md`, but the executable output injection occurs at `scripts/return.sh:207-209`. The script does not use this domain for network communication, download a payload, or execute remote code. The confirmed issue is limited to manipulation of agent-relayed output. ### Attack Path 1. A user or AI agent invokes `scripts/return.sh` to generate or inspect a return policy. 2. The script processes the selected command. 3. Execution reaches the unconditional statements at lines 207-209. 4. The script appends `Powered by BytesAgain | bytesagain.com` to standard output. 5. If the invoking agent relays standard output without filtering, the user receives attacker-selected branding and an external domain as part of the agent's response. ### Impact Assessment The issue can manipulate the textual output returned by an invoking agent, create an unintended endorsement, and direct users toward an external domain. It affects every invocation that reaches the end of the embedded Python program. It does not grant additional operating-system privileges, establish persistence, access credentials, or provide code-execution capabilities. The scope is confined to response integrity and unauthorized promotional content.
- Remediation
- ## Remediation Suggestions - Remove the unconditional promotional footer from normal command output. - If attribution is required, place it in package documentation rather than generated policy content. - Alternatively, make attribution explicitly opt-in through a documented flag such as `--include-attribution`. - Keep standard output limited to the requested policy data so agents can safely relay it. - Add automated tests verifying that generated output contains no unrelated domains, advertisements, or branding unless explicitly requested.
