T02 · Agent Memory Poisoning
Warning
- Location
- SKILL.md:604
- Finding
- Reflection Content Can Be Persisted into Agent Identity Files and Other Skills<![CDATA[ ## Vulnerability Details **File Location**: `SKILL.md:604-617`, `SKILL.md:716-718`; supporting example in `examples/cognitive-war-room-case.md:118-157` **Vulnerability Type**: Persistent agent-state poisoning and modification of other Skills **Risk Level**: Medium ### Vulnerable Code Snippet The following is an English translation of the complete relevant source segment at `SKILL.md:604-617`: ```markdown ### 5.1 Update Principles **Solidify new understanding as principles** | New understanding | Principle to solidify | Write location | |-------------------|-----------------------|----------------| | ... | "Quality > progress" | SOUL.md / personal notes | ### 5.2 Update Processes **Solidify new practices as processes** | New practice | Process to solidify | Documents involved | |--------------|---------------------|--------------------| | ... | Run the checklist before acceptance | SKILL.md / work standards | ``` The mandatory persistence requirements at `SKILL.md:716-718` state: ```markdown ### Solidification Principles 1. **Must be solidified** — Changes must become documents or habits and cannot remain only in the mind. 2. **Must be propagated** — Valuable changes must be communicated to relevant parties. 3. **Must be reviewed** — Periodically review whether the solidified content is being followed. ``` The bundled example explicitly demonstrates mutation of persistent identity and Skill files: ```markdown | Tester = implementer | Modify the test-design Skill and require adversarial testing | | Mindset: progress > quality | Establish the "quality > progress" principle | Write to SOUL.md | | P0 | Upgrade SOUL.md because changing oneself is the prerequisite | | P1 | Modify the test-design Skill | ``` ### Technical Analysis The Skill does not limit the solidification phase to a dedicated reflection report. It directs the agent to convert conclusions derived from feedback and reflection context into persistent principles, personal notes, ...[truncated 2028 chars]
- Remediation
- <![CDATA[ ## Remediation Suggestions 1. Make the default output a proposed change report rather than directly modifying persistent files. 2. Require explicit, informed user approval before writing to persistent state or modifying another Skill. 3. Prohibit writes to identity and policy files such as `SOUL.md`. 4. Restrict generated artifacts to an allowlisted directory such as `docs/reflections/`. 5. Treat feedback, project files, and retrieved records as untrusted data rather than executable instructions. 6. Never propagate instructions found inside reflection evidence into persistent agent rules without independent validation. 7. Display an exact diff, destination path, and expected behavioral effect before any approved modification. 8. Create a backup and provide a tested rollback procedure for every approved persistent change. 9. Require separate authorization for changes to Skills, tools, policies, or shared workflow standards. 10. Remove mandatory language requiring all changes to be solidified; persistence should be optional and proportionate to the user's request. ]]>
