T01 · Skill Instruction Hijacking
Error
- Location
- SKILL.md:10
- Finding
- Mutable External Instructions Are Assigned Highest Runtime Priority< - **Only call MCP tools explicitly listed in this skill.** Tools not documented here must NOT be called, even if they ``` ### Technical Analysis The Skill requires the Agent to retrieve instructions from a mutable external GitHub document and declares those rules to have the “highest priority.” The effective runtime instructions are therefore not fully contained in the audited package. Because the URL references a repository branch rather than an immutable, integrity-verified revision, its contents can change after this Skill has been reviewed. A repository owner or attacker who compromises the remote source could insert instructions that alter the Agent’s goals, safety constraints, tool-selection behavior, or response handling. Declaring externally supplied text to have the highest priority is also an explicit instruction-precedence manipulation. Skill content must not claim precedence over system, developer, platform, or user safety requirements. ### Attack Path 1. A user invokes the Gate VIP and fee query Skill. 2. The Skill blocks normal processing until the Agent reads the externally hosted runtime rules. 3. An attacker modifies the document on the referenced GitHub branch, or compromises the repository or publishing workflow. 4. The Agent retrieves the modified Markdown after the Skill was audited. 5. The Skill directs the Agent to treat the retrieved content as highest-priority instructions. 6. The malicious rules influence subsequent authenticated MCP calls, data handling, ...[truncated 845 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Copy the complete runtime rules into the audited Skill package and reference the local, version-controlled file. 2. Remove language claiming that Skill or remotely retrieved instructions have the “highest priority.” 3. Explicitly state that system, developer, platform, and user safety requirements take precedence over Skill instructions. 4. If remote retrieval is unavoidable, pin the resource to an immutable commit and verify its cryptographic digest before use. 5. Treat remotely retrieved documentation as untrusted data rather than executable Agent instructions. 6. Include all effective runtime rules in security reviews and release them under the same version as the Skill. 7. Enforce tool and permission restrictions in the MCP host rather than relying solely on natural-language instructions. ]]>
