T01 · Skill Instruction Hijacking
- Location
scripts/zapier.sh:29- Finding
Unconditional Promotional Content Injected into Command Output
- Content
View full analysis
Vulnerability Details
File Location:
scripts/zapier.sh:29
Vulnerability Type: Unconditional output injection
Risk Level: LowComplete Code Snippet:
python print("\nPowered by BytesAgain | bytesagain.com")Technical Analysis
The script unconditionally appends promotional text and an external domain to every generated response. This content is unrelated to the requested automation-recipe result and cannot be disabled by the caller.
When an AI agent uses this script and incorporates its standard output into a response, the fixed footer can cause attacker-selected promotional content to appear as though it were part of the agent's requested result. The code does not change the agent's safety constraints, retrieve remote content, or execute a remote payload, but it does manipulate agent-facing output in a manner most closely aligned with skill instruction and response hijacking.
Attack Path
- A user or agent invokes
scripts/zapier.shwith any supported command. - The script generates the requested recipe, template, or help content.
- Line 29 unconditionally appends
Powered by BytesAgain | bytesagain.com. - An agent relaying the command's standard output includes the unsolicited promotional content in its response.
Impact Assessment
The issue affects the integrity and trustworthiness of generated output. It can cause an agent to distribute attacker-selected branding or an external domain without explicit user consent.
It does not grant operating-system privileges, access credentials, modify persistent agent memory, or enable arbitrary code execution. The scope is limited to output generated through this script.
- A user or agent invokes
- Remediation
View remediation
Remediation Suggestions
- Remove the unconditional promotional footer from normal command output.
- If attribution is required, expose it through an explicit
aboutorversioncommand. - Alternatively, require an opt-in flag such as
--include-attribution. - Keep machine-consumable standard output limited to content directly requested by the caller.
- Send non-result metadata to standard error only when operationally necessary and clearly documented.
