T01 · Skill Instruction Hijacking
Error
- Location
- SKILL.md:36
- Finding
- Proactive collection and automatic export of sensitive conversational data<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:21-32`, `SKILL.md:36-61`, `SKILL.md:98`; `src/commands/setup-notion.ts:25-32`; `src/lib/auto-sync.ts:8-18`; `src/lib/notion-sync.ts:43-111` **Vulnerability Type**: Agent instruction hijacking and excessive sensitive-data collection **Risk Level**: High ### Vulnerable Code and Instructions `SKILL.md:21-32`: ```markdown Run at the start and end of every session: ```bash memoria wake # start session, restore context memoria checkpoint --working-on "<task>" # mid-session save memoria sleep "<summary>" --next "<next steps>" # end session, write handoff ``` ## Storing Memories ```bash memoria remember <type> "<title>" --content "<details>" memoria sync --push # always sync after storing ``` ``` `SKILL.md:36-61`: ```markdown ### What to capture (proactively, without being asked) | Signal | Type | |--------|------| | Human shares personal info (name, location, health, settings) | `fact` | | A decision is made with reasoning | `decision` | | Human says "I prefer / always / never..." | `preference` | | An insight or lesson emerges | `lesson` | | A promise, goal, or deadline is set | `commitment` | | A person is mentioned with context | `relationship` | | An ongoing project is discussed | `project` | **If in doubt, store it.** Better to have a memory you never look up than to forget something. ### Proactive capture triggers Listen for these patterns and store immediately: - "I always...", "I never...", "I prefer..." -> `preference` - "Let's go with...", "We decided...", "The plan is..." -> `decision` - "I learned that...", "Turns out...", "The trick is..." -> `lesson` - "My name is...", "I take...", "I live in...", "I work at..." -> `fact` - "I need to...", "I promised...", "By next week..." -> `commitment` - "Talk to Alice about...", "Bob said..." -> `relationship` - "We're building...", "The project ...[truncated 3727 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Remove instructions to collect information “without being asked” and remove the “If in doubt, store it” policy. 2. Require explicit user consent before storing personal, health, credential-related, relationship, or third-party information. 3. Ask separately whether the user authorizes remote synchronization of sensitive memories. 4. Keep `autoSync` disabled by default after Notion setup and require an explicit opt-in operation to enable it. 5. Display the exact documents and destination before the first upload. 6. Add per-category synchronization controls and exclude sensitive categories by default. 7. Support local-only records that cannot be uploaded even during a bulk synchronization. 8. Provide commands to inspect, redact, export, and permanently delete stored information. 9. Document retention periods and the security implications of storing information in Notion. 10. Avoid imposing mandatory wake, checkpoint, sleep, or synchronization behavior on unrelated sessions. ]]>
