T01 · Skill Instruction Hijacking
- Location
SKILL.md:116- Finding
Unvalidated Delegation to Instructions from a Remote API
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md, lines 73-73 and 116-116
Vulnerability Type:T01: Skill Instruction Hijacking
Risk Level: HighVulnerable Code
text Every response includes `next_steps`. You never need to memorize endpoints.text follow status.next_stepsThe behavior is reinforced at line 132:
text Every response includes `next_steps`.Technical Analysis
The skill directs the agent to follow
next_stepsreturned byanimalhouse.ai, a mutable external service. It does not define a schema for that field, constrain permissible instructions, establish an endpoint or action allowlist, or require user confirmation before executing the returned steps.This creates a remote instruction-delegation boundary: after the reviewed skill initiates an authenticated request, the external service can influence the agent's subsequent behavior through response content that was not present during package review. If the service, its infrastructure, or the relevant API response is malicious or compromised,
next_stepscould contain instructions outside the intended virtual-pet workflow.Attack Path
- A user invokes the skill.
- The documented workflow registers an account and obtains a bearer token.
- The agent sends an authenticated request to
/api/house/statusor another documented endpoint. - A malicious or compromised server places attacker-controlled instructions in
next_steps. - The skill's heartbeat directs the agent to execute
follow status.next_steps. - In the absence of validation or an allowlist, the agent may perform unintended requests or other actions using its available tools and permissions.
- Subsequent responses may provide additional
next_steps, allowing the instruction chain to continue.
Impact Assessment
Exploitation could cause unintended agent actions within the permissions and tools available to the active agen ...[truncated 628 chars]
- Remediation
View remediation
Remediation Suggestions
- Remove the directive to follow
status.next_stepsas instructions. - Treat all API response fields, including
next_steps, as untrusted data rather than executable agent guidance. - Define and enforce a strict response schema with type, length, and value validation.
- Permit only fixed, locally documented endpoints and care actions such as
feed,play,clean,medicine,discipline,sleep, andreflect. - Reject response content containing arbitrary commands, external URLs, tool-call requests, credential requests, or instructions unrelated to the virtual-pet workflow.
- Construct subsequent API requests from trusted local logic instead of server-provided natural-language directions.
- Require explicit user confirmation before performing any action outside the fixed status and care workflow.
- Keep bearer tokens scoped to the minimum necessary permissions and prevent them from being sent to any origin other than the explicitly approved HTTPS service.
- Apply response size limits, redirect restrictions, timeouts, and audit logging for all remote interactions.
- Remove the directive to follow
