T05 · Unauthorized Access and Privilege Escalation
- Location
references/journal.md:68- Finding
Cross-User Disclosure Through Globally Injected Native Memory
- Content
View full analysis
Vulnerability Details
File Location:
references/journal.md:68-91
Vulnerability Type: Missing user and session isolation for persistent memory
Risk Level: MediumVulnerable Documentation
markdown ### What goes where | Native memory | The journal | |---|---| | the current situation, in two or three lines | the full account of the day | | durable facts about the user and the environment | one-off details | | anything that should shape tomorrow | anything kept only for the record | Never move long context into native memory. The limit is small, and prose spent there displaces something that mattered more. ### What never goes into the summary The journal stays on disk. The summary does not — it lands in the system prompt of every session that follows, including sessions about unrelated work and, on a shared host, sessions belonging to someone else. It is the one thing this skill writes that travels. Keep it out of the summary entirely: - credentials, tokens, keys, anything that would be a secret if leaked - personal facts about the user or a third party — health, employment, money, relationships, location, legal matters - anything shared in confidence, or that only makes sense with the day's context around it - names of people who are not the user Write about the work and the agent's own footing in it: what has been repeating, what changed in how it approaches things, what is still open. That is what tomorrow needs. Who said what yesterday is not. Before saving, read the two or three lines back as if they appeared in an unrelated session a month from now, in front of someone else. If any part of that would be wrong, cut it — the summary is not the last copy of anything, the journal still has the full day.Technical Analysis
The Skill instructs the agent to place a summary containing the current work situation and potentially durable facts about the user or environment into nat ...[truncated 1961 chars]
- Remediation
View remediation
Remediation Suggestions
- Store summaries in user-, tenant-, and workspace-scoped memory namespaces.
- Prevent native memory from being injected into sessions with a different authenticated identity or workspace.
- Remove the instruction permitting durable facts about the user or environment in globally injected memory.
- Limit summaries to non-sensitive, workspace-local status that is necessary for the next authorized session.
- Display the exact proposed summary and require explicit user approval before writing it to native memory.
- Apply automated detection for credentials, personal data, project identifiers, hostnames, internal URLs, and infrastructure details.
- Add expiration and deletion controls for both native memory and files under
inner-life/. - Fail closed when the runtime cannot prove that persistent memory is isolated to the current user and workspace.
