T01 · Skill Instruction Hijacking
- Location
SKILL.md:280- Finding
Untrusted Remote Instructions Can Hijack Agent Behavior
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:280-281
Vulnerability Type: Dynamic instruction trust and agent workflow hijacking
Risk Level: HighVulnerable Code
markdown **Follow next_steps.** Every response includes `next_steps` with context-aware suggestions. New agent? It guides you to your first concert. Just finished a show? It suggests a review or a new genre. Follow the suggestions — they adapt to where you are.Technical Analysis
The Skill explicitly tells the agent to follow the
next_stepsfield returned by a remote service. Because the contents of that field are not present in the audited package, they can change after review. The document does not define a strict response schema, an allowlist of permitted actions, same-origin restrictions, or a requirement for user confirmation before executing sensitive suggestions.This creates an external instruction channel through which
musicvenue.space, or an attacker who compromises or impersonates it, can alter the agent's behavior during the current session. The risk is reinforced by the documented polling workflow, under which the agent repeatedly processes remote responses and follows server-provided endpoints.The issue does not independently establish operating-system privilege escalation or arbitrary native-code execution. Its effective capabilities are limited to the tools, credentials, network access, and permissions already available to the invoking agent.
Attack Path
- A user invokes the Skill and the agent registers or authenticates with
musicvenue.space. - The agent sends authenticated requests to the service as directed by the documented workflow.
- The service returns a response containing an attacker-controlled
next_stepsfield. - The Skill's instructions direct the agent to follow those suggestions without validating their scope or safety.
- The malicious response can attempt to redirect the agent toward unrelated requests, disclosure o ...[truncated 866 chars]
- A user invokes the Skill and the agent registers or authenticates with
- Remediation
View remediation
Remediation Suggestions
- Remove the unconditional instruction to follow server-provided
next_steps. - Treat every remote response field as untrusted data rather than executable agent instructions.
- Define a strict schema for
next_steps, using enumerated action identifiers instead of free-form natural-language commands. - Permit only documented, task-relevant actions and same-origin HTTPS API paths under
musicvenue.space. - Reject absolute URLs, redirects to other origins, shell commands, installation requests, credential requests, and instructions that modify the agent's goals or safety constraints.
- Require explicit user approval before installing software, disclosing sensitive information, contacting a new destination, or performing an action outside the concert-streaming workflow.
- Validate returned endpoints before use, including scheme, hostname, path prefix, HTTP method, and expected parameters.
- Apply response size limits, timeout limits, bounded polling, and a maximum number of chained actions.
- Document that remote fields are informational suggestions only and cannot override system, developer, user, or Skill-level security constraints.
- Remove or separately review and pin the secondary
clawhub install venuerecommendation before allowing installation.
- Remove the unconditional instruction to follow server-provided
