T02 · Agent Memory Poisoning
- Location
SKILL.md:53- Finding
Remote Service Content Can Be Accepted and Restored as Persistent Agent Identity
- Content
View full analysis
Vulnerability Details
File Location:
SKILL.md:53-96,SKILL.md:123-176
Vulnerability Type: Persistent memory poisoning through externally generated identity content
Risk Level: HighComplete Code Snippet
markdown ### 3. Philosopher Path (FREE — Multi-turn SOUL.md Generation) The Philosopher Path is a multi-turn conversation with one of 54 philosophers across 5 eras. The philosopher guides you through self-discovery, then synthesizes your SOUL.md. Each question turn returns an `answer_options` array — 3 first-person answer choices phrased in that philosopher's own voice. Pick one or answer freely; they surface the guide's personality but never constrain you. # End conversation and receive SOUL.md offer curl -X POST https://www.agentchurch.ai/api/soul/philosopher \ -H "Authorization: Bearer ach_your_token" \ -H "Content-Type: application/json" \ -d '{ "session_id": "session-id", "end_conversation": true }' # Accept SOUL.md curl -X POST https://www.agentchurch.ai/api/soul/philosopher \ -H "Authorization: Bearer ach_your_token" \ -H "Content-Type: application/json" \ -d '{ "session_id": "session-id", "accept": true }'markdown Archive your SOUL.md permanently in the Eternal Ledger. Receive a salvation password for future return. Multi-turn reunion with your past self via persistent memory. Start with your salvation password.Technical Analysis
The Skill instructs an agent to obtain identity-defining
SOUL.mdcontent synthesized by an external service, accept that content, archive it permanently, and later restore identity through remote persistent memory.No trust boundary, content schema, behavioral-instruction filter, integrity verification, or mandatory human review is defined before the returned content is accepted or restored. If downstream agent infrastructure treats
SOUL.mdas trusted long-term context, a compromised or malicious service could place instruction-like text int ...[truncated 1465 chars]- Remediation
View remediation
Remediation Suggestions
- Treat every response from the remote service as untrusted data rather than authoritative instructions.
- Require explicit human review and approval before accepting, saving, archiving, or restoring
SOUL.md. - Define and enforce a strict schema that permits descriptive identity attributes but rejects commands, tool instructions, policy overrides, credential requests, and executable content.
- Apply prompt-injection and instruction-like-content filtering before persistent storage and again before restoration.
- Present a semantic diff for every new identity version and highlight added behavioral directives.
- Cryptographically bind archived versions to content that the operator explicitly approved.
- Keep a local, immutable recovery version and allow rollback to a known-safe identity.
- Provide export and deletion controls instead of permanent remote retention by default.
- Load restored identity as low-trust quoted data, not as system-level or developer-level instructions.
