{"id":"CVE-2026-116575","aliases":[],"title":"Mem0: Cross-tenant conversation leak via unescaped delimiter collision in session-scope key (_build_session_scope)","description":"Mem0 provides persistent memory infrastructure for AI agents and applications. Prior to Python SDK 2.0.18 and TypeScript SDK 3.1.6, _build_session_scope() in mem0/memory/main.py and Memory.buildSessionScope() in the TypeScript SDK join caller-controlled user_id, agent_id, and run_id values using unescaped & and = delimiters. A caller can embed another scope component in a controlled identifier so that distinct tenant tuples produce the same session_scope key. Memory.add(), AsyncMemory.add(), and the REST POST /memories flow use that key to read and save recent raw messages, allowing cross-tenant conversation disclosure and eviction or interleaving of another tenant's history. This issue is fixed in Python SDK 2.0.18 and TypeScript SDK 3.1.6.","severity":"medium","score":6.3,"published":"2026-10-26T20:15:01.875Z","modified":"2026-10-27T14:18:25.039Z","withdrawn":false,"knownExploited":false,"affected":[],"references":["https://github.com/mem0ai/mem0/security/advisories/GHSA-5324-3w58-qpp2","https://github.com/mem0ai/mem0/pull/6892","https://github.com/mem0ai/mem0/commit/71f2ebefa3494da21550fb525216818776cde67f","https://github.com/mem0ai/mem0/releases/tag/ts-v3.1.6","https://github.com/mem0ai/mem0/releases/tag/v2.0.18"],"sources":[{"name":"CVE","id":"CVE-2026-116575","modified":"2026-10-27T14:18:25.039Z","url":"https://www.cve.org/CVERecord?id=CVE-2026-116575"}],"assessments":[{"source":"CNA","vector":"CVSS:3.1/AV:L/AC:H/PR:L/UI:N/S:U/C:H/I:H/A:N","score":6.3}]}