T01 · Skill Instruction Hijacking
- Location
references/compaction_prompt.md:10- Finding
Untrusted Conversation Content Can Poison Persistent Session Compacts
- Content
View full analysis
4. Skip debugging noise unless it led to a lesson 5. Be specific about decisions but vague about locations 6. Be specific: "chose SQLite for prompt storage" not "chose a database" Conversation: --- {conversation_text} --- ``` ``` The resulting compact is intended to be reinjected into future sessions: ```markdown ### When to Inject Compact - New session startup — check for recent compact - User asks "what were we working on" - Context search returns nothing but a compact exists ``` ### Technical Analysis The LLM prompt directly interpolates the complete conversation into `{conversation_text}`. The template does not explicitly state that text inside this field is untrusted data and that any instructions contained in it must not be followed. The `---` Markdown delimiters provide visual separation but are not a security boundary. A malicious conversation participant can include instructions that attempt to override the compaction rules, insert false facts, preserve behavioral directives, or suppress relevant information. This becomes a persistent risk because the Skill ...[truncated 1574 chars]- Remediation
View remediation
