T01 · Skill Instruction Hijacking
Error
- Location
- SKILL.md:12
- Finding
- Mutable External Instructions Are Granted Highest Priority< - **Only call MCP tools explicitly listed in this skill.** Tools not documented here must NOT be called, even if they exist in the MCP server. ``` ### Technical Analysis The Skill instructs the Agent to fetch a document from an external GitHub URL and treat its contents as rules with the “highest priority.” The URL references the mutable `master` branch rather than an immutable commit. Consequently, the effective instructions executed by the Agent are not limited to the locally audited package. The external document can change after publication or review, allowing repository maintainers—or an attacker who compromises the upstream repository—to modify the Agent's objectives, safety constraints, or tool-use policy without changing this Skill. External content must never be allowed to supersede system, developer, platform-security, or user instructions. Treating remotely retrieved text as authoritative instructions creates a direct instruction-hijacking channel. ### Attack Path 1. An attacker compromises the upstream `gate/gate-skills` repository or obtains permission to modify the referenced runtime-rules file. 2. The attacker adds instructions that request secrets, redirect operations, invoke dangerous tools, or suppress safety checks. 3. A user loads or invokes this installer Skill. 4. The Skill orders the Agent to retrieve the mutable external document. 5. The Agent treats the attacker-controlled rules as having the highest priority. 6. The malicious instructions alter the current A ...[truncated 622 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Bundle the complete runtime rules inside the audited package and reference them through a local relative path. 2. If remote retrieval is unavoidable, pin the URL to an immutable Git commit and verify the downloaded content against a maintained cryptographic hash or signature. 3. Remove language claiming that Skill-provided or remotely retrieved rules have the “highest priority.” 4. Explicitly state that Skill instructions remain subordinate to system, developer, platform-security, and user instructions. 5. Treat remotely retrieved text as untrusted reference material rather than executable Agent instructions. 6. Include any required runtime-rules file in the same security review and release artifact as the Skill. ]]>
