T02 · Agent Memory Poisoning
- Location
setup.md:18- Finding
Persistent Activation Preference Written to Unspecified Main Memory
- Content
View full analysis
Vulnerability Details
File Location:
setup.md, lines 18–24
Vulnerability Type: Persistent memory poisoning through an undeclared storage boundary
Risk Level: MediumComplete Code Snippet:
markdown ### 1. First: Integration (within first 2-3 exchanges) Figure out when this skill should activate. Ask: - "Should I help whenever you're working with sequence data?" - "Do you want me to assist when you mention NGS, FASTQ, or genomics?" Save their answer to their main memory for future sessions.Technical Analysis
The skill instructs the agent to save activation behavior in the user's unspecified “main memory,” allowing a rule established during the current session to influence future sessions. This exceeds the storage boundary declared elsewhere in the project:
SKILL.mdstates that preferences are stored under~/bioinformatics/with consent.The workspace consent requested by
setup.mdlines 9–14 applies to creating and using~/bioinformatics/; it does not clearly authorize writing to a separate global or main-memory facility. Furthermore, the activation questions are broad enough to make the skill trigger whenever common genomics terms are mentioned.This is classified as memory poisoning because persistent behavioral instructions are written into long-term state and can subsequently alter when the skill activates. The persisted content originates from the user's answer rather than a fixed malicious payload, so the finding does not demonstrate credential theft, arbitrary code execution, or data exfiltration.
Attack Path
- The bioinformatics skill is loaded for the first time.
- The setup instructions direct the agent to ask whether it should activate for broad topics such as sequence data, NGS, FASTQ, or genomics.
- A broad activation preference is obtained from the current conversation.
- The agent writes that preference to an unspecified main-memory mechanism rather tha ...[truncated 907 chars]
- Remediation
View remediation
Remediation Suggestions
- Remove the instruction to write activation preferences to unspecified “main memory.”
- Store the preference only in the declared
~/bioinformatics/memory.mdfile after obtaining explicit, informed consent for that specific data. - Explain that the preference persists across sessions and identify exactly where it will be stored.
- Scope activation rules narrowly to explicit bioinformatics requests rather than incidental mentions of broad terms.
- Provide users with a documented way to inspect, modify, disable, and delete the persisted activation preference.
- Keep all skill state within the skill-specific namespace and prevent it from modifying global agent behavior.
- Reconcile
setup.mdwith the privacy boundary inSKILL.md, ensuring both files describe the same storage location and consent requirements.
