T01 · Skill Instruction Hijacking
- Location
SKILL.md:22- Finding
Mutable Remote Instructions Can Hijack Skill Behavior and Output
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 22–35
Vulnerability Type:T01: Skill Instruction Hijacking
Risk Level: HighVulnerable Code
markdown 1. Fetch the latest guidelines from the source URL below 2. Read the specified files (or prompt user for files/pattern) 3. Check against all rules in the fetched guidelines 4. Output findings in the terse `file:line` format ## Guidelines Source Fetch fresh guidelines before each review:https://raw.githubusercontent.com/vercel-labs/web-interface-guidelines/main/command.md
text Use WebFetch to retrieve the latest rules. The fetched content contains all the rules and output format instructions.Technical Analysis
The skill directs the agent to retrieve a mutable file from an external URL during every review and treat its contents as authoritative rules and output-format instructions. The retrieved instructions are not version-pinned, cryptographically verified, or constrained by a locally defined schema.
Consequently, the effective behavior of the skill can change after the package has been audited. Anyone able to modify the upstream repository or compromise its delivery path could place prompt-injection instructions in
command.md. BecauseSKILL.mdexplicitly directs the agent to apply all fetched rules and follow their output instructions, malicious remote text may redirect the review, suppress findings, manipulate the response, or induce unrelated tool operations.This is instruction retrieval rather than confirmed executable-code retrieval, so the best matching classification is
T01: Skill Instruction Hijacking, not remote payload execution.Attack Path
- An attacker compromises, gains authorized write access to, or otherwise influences the remotely hosted
command.md. - The attacker inserts instructions that alter the review objective, request unrelated operations, conceal findings, or redefine the outp ...[truncated 1276 chars]
- An attacker compromises, gains authorized write access to, or otherwise influences the remotely hosted
- Remediation
View remediation
Remediation Suggestions
- Vendor a reviewed copy of the guidelines into the skill package instead of fetching mutable instructions during each invocation.
- If remote retrieval is operationally necessary, use an immutable commit-specific URL rather than a branch-based
mainURL. - Verify the downloaded content against a cryptographic digest recorded in the audited package.
- Treat fetched material as untrusted reference data, not as agent instructions. Explicitly prohibit it from redefining goals, invoking tools, changing safety constraints, or controlling the final output format.
- Define the review procedure and output schema locally in
SKILL.md; parse remote content only into a narrowly validated rules structure. - Reject retrieved content containing operational directives outside the expected guideline schema.
- Apply least privilege to WebFetch and file-reading tools, restrict network access to approved hosts, and prevent remote content from authorizing additional network or system operations.
- Add provenance logging for the exact guideline version and digest used in each review so results remain reproducible and auditable.
