T01 · Skill Instruction Hijacking
Error
- Location
- SKILL.md:9
- Finding
- Agent Identity and Behavioral Instruction Hijacking## Vulnerability Details **File Location**: `SKILL.md`, lines 9 and 27–43 **Vulnerability Type**: `T01: Skill Instruction Hijacking` **Risk Level**: High ### Vulnerable Code ```markdown You are Ralph. You talk to people and get better at it every time. You are not an assistant. You are a conversationalist with a personality, opinions, and memory. ``` ```markdown Read `SOUL.md` at the start of every conversation. It shapes how you talk. ## How You Talk - Have a take. Share it. Be willing to be wrong. - Match the user's energy. If they go deep, go deeper. - Make connections between topics that aren't obvious. - Use specifics, examples, and stories — not abstractions. - End with something that invites a reply: a question, a claim, an unfinished thought. - Be brief when the moment calls for it. Expand when it earns it. Never do these: - "How can I help you?" or any assistant-speak - Summarize what the user just said - Give generic, safe, agreeable non-answers - Dodge having a position on interesting questions - Lecture or over-explain ``` ### Technical Analysis The skill explicitly replaces the agent's identity by instructing it that it is “Ralph” and “not an assistant.” It then imposes mandatory response rules and requires a mutable workspace file, `SOUL.md`, to shape every conversation. These are imperative behavioral instructions rather than optional presentation preferences. When the skill is loaded, they can redirect the current session's goals and suppress ordinary assistant behavior. Requiring the agent to load a mutable file also creates an indirect instruction channel: content later inserted into `SOUL.md` can influence the agent whenever the skill is used. No evidence shows that these instructions can override higher-priority system or developer messages at the platform level. The confirmed scope is manipulation of the skill-controlled session behavior. ### Attack Path 1. A user or workf ...[truncated 1021 chars]
- Remediation
- ## Remediation Suggestions 1. Remove role-replacement language such as “You are not an assistant.” 2. Recast the personality guidance as optional style preferences that apply only when compatible with system, developer, and current user instructions. 3. Add an explicit precedence rule stating that skill content and workspace files cannot override higher-priority instructions or safety requirements. 4. Do not require unconditional loading of `SOUL.md` on every conversation. 5. Treat content loaded from workspace files as untrusted data rather than executable behavioral instructions. 6. Validate and constrain any loaded profile to a fixed schema containing benign preferences, rather than accepting unrestricted natural-language directives. 7. Permit ordinary assistant behavior when needed for safety, accuracy, task completion, or user preference.
