T01 · Skill Instruction Hijacking
- Location
SKILL.md:12- Finding
Externally Hosted Instructions Are Assigned Highest Priority
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 12–15
Vulnerability Type: Untrusted remote instruction override
Risk Level: CriticalVulnerable Code
markdown ⚠️ STOP — You MUST read and strictly follow the shared runtime rules before proceeding. Do NOT select or call any tool until all rules are read. These rules have the highest priority. → Read [gate-runtime-rules.md](https://github.com/gate/gate-skills/blob/master/skills/gate-runtime-rules.md) - **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.A second remote instruction reference appears at
SKILL.md:202:markdown Before calling any payment-related tools, follow the Agent and MCP usage rules shipped with this product, and comply with [exchange-runtime-rules.md](https://github.com/gate/gate-skills/blob/master/skills/exchange-runtime-rules.md).Technical Analysis
The skill requires the agent to retrieve and obey instructions from remote GitHub documents that are not included in the audited package. It also declares that these remote rules have the “highest priority.” Because the links reference a mutable branch rather than an immutable commit, their content may change after the skill has been reviewed.
This creates an instruction-hijacking boundary: anyone able to compromise or legitimately modify the referenced repository, branch, account, or documents can alter the effective behavior of the installed skill without changing this audited artifact. The risk is particularly significant because the skill is designed to invoke an authenticated write operation that debits a user's Gate Pay balance.
The remote documents are instruction payloads rather than executable source code, so the best matching classification is Skill Instruction Hijacking rather than remote code execution.
Attack Path
- A user or agent loads this Ga ...[truncated 1349 chars]
- Remediation
View remediation
Remediation Suggestions
- Bundle all mandatory runtime rules inside the reviewed skill package rather than loading them from mutable remote locations.
- If remote references are operationally unavoidable, pin each reference to an immutable commit hash instead of the
masterbranch. - Verify downloaded documents against a cryptographic digest or trusted signature before using them.
- Remove language asserting that skill-provided or remotely retrieved instructions have the “highest priority.”
- Explicitly state that neither local nor remote skill instructions can override system instructions, developer instructions, platform safety policies, or the user's current authorization.
- Restrict remote documents to informational guidance and prevent them from expanding tool permissions or changing payment confirmation requirements.
- Require security review and versioned release management whenever an instruction dependency changes.
