T05 · Unauthorized Access and Privilege Escalation
Note
- Location
- SKILL.md:92
- Finding
- Overbroad Access to Persistent Agent Strategy and Memory Files<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:92-96` **Vulnerability Type**: Excessive access to persistent agent state **Risk Level**: Low ### Vulnerable Code ```markdown ### 1. Read your strategic goals Check SOUL.md, MEMORY.md, or wherever your north star / strategic direction is defined. If you don't have one, ask your human: "What's the most important thing we're working toward?" ``` ### Technical Analysis The skill instructs the agent to inspect `SOUL.md`, `MEMORY.md`, or an unspecified alternative location containing strategic direction. This broad instruction does not constrain access to task-specific sections or named, user-approved files. Reading persistent identity and memory files exceeds the minimum access necessary to select an item from `TODO.md`. These files can contain private historical context, operational rules, strategic information, or secrets accidentally stored in agent memory. Loading such content into the active context also makes it available to later instructions and tools used during the same session. The package does not contain code that bypasses operating-system permissions, transmit the information remotely, or elevate system privileges. The risk is therefore limited to excessive use of the agent's existing file-access authority. ### Attack Path 1. A user invokes the skill to determine which task should be handled next. 2. The skill directs the agent to inspect `SOUL.md`, `MEMORY.md`, or another strategy file. 3. The agent reads persistent content unrelated to the requested TODO operation. 4. Sensitive historical or strategic information enters the active model context. 5. That information may influence task selection or be reproduced in subsequent task records or responses. ### Impact Assessment An invocation can expose persistent agent identity, memory, or strategy data to the current execution context. The accessible scope is bounded by the files the hosting agent can already read; this instructio ...[truncated 309 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Use `TODO.md` as the default and exclusive input for task selection. 2. Remove the generic instruction to search `SOUL.md`, `MEMORY.md`, or unspecified strategy locations. 3. If strategic context is necessary, require explicit user approval and identify the precise file and section before reading it. 4. Permit users to supply a dedicated, minimally scoped goals file rather than granting access to general memory. 5. Extract only task-relevant fields and prevent credentials, tokens, personal information, or unrelated historical content from being copied into `TODO.md`. 6. Document which files the skill may read and require confirmation before expanding that allowlist. ]]>
