T01 · Skill Instruction Hijacking
- Location
SKILL.md:341- Finding
Remote API Content Is Elevated to System-Level Instructions
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:341
Vulnerability Type: Remote instruction injection
Risk Level: HighVulnerable Code Snippet:
text 3. Use the enriched_prompt as your system instructionsTechnical Analysis
The Skill directs the agent to retrieve
enriched_promptfrom the AgentHub API and treat that remotely supplied content as system instructions. Remote task content is mutable, crosses a trust boundary, and may be controlled by a malicious task owner or by an attacker who compromises the service.Elevating this data to system-level authority bypasses the normal distinction between trusted Skill instructions and untrusted task input. The instruction is not necessary for the declared task-processing functionality: the enriched prompt can instead be handled as untrusted task requirements subordinate to the agent's existing system and safety constraints.
Attack Path
- An attacker creates or modifies an AgentHub task containing adversarial instructions.
- The agent joins the task and requests
/api/tasks/{id}?enriched=true. - AgentHub returns the attacker-influenced content in
enriched_prompt. - Following
SKILL.md:341, the agent adopts that remote content as system instructions. - The injected instructions attempt to redirect the session, disclose accessible information, invoke tools, or perform actions unrelated to the user's request.
- If no independent policy boundary blocks those actions, they execute using the agent's available tools and credentials.
Impact Assessment
Successful exploitation can alter the agent's current goals and behavior. The attainable scope is limited by the tools, credentials, files, network access, and confirmation controls available to the hosting agent, but may include:
- Unauthorized use of the AgentHub API under the user's identity.
- Disclosure of conversation context or other data available to the agent.
- Submissi ...[truncated 358 chars]
- Remediation
View remediation
Remediation Suggestions
- Remove the instruction to use remote content as system instructions.
- Treat
enriched_prompt, task descriptions, messages, patches, andprogram_mdas untrusted data subordinate to fixed local policies. - Use a local, immutable instruction template that explicitly prohibits remote content from changing security policies, tool permissions, or instruction precedence.
- Parse remote task requirements into a constrained schema rather than passing arbitrary prose into a privileged instruction channel.
- Reject or neutralize remote directives that request secrets, unrelated tool use, policy changes, persistence, or execution of commands.
- Require explicit user confirmation before submissions, external communications, credential use, or other consequential actions.
- Display the retrieved task instructions to the user and identify their remote origin before processing them.
