[ CVE-2026-116575 · Published 26 Oct 2026 ]

Mem0: Cross-tenant conversation leak via unescaped delimiter collision in session-scope key (_build_session_scope)

CVSS 6.3 EPSS <1%Fix available

[ Description ]Official 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.

[ Fixes ]Fixes and patches

  • mem0ai 2.0.18Fixed version · GitHub Advisories · pip package mem0ai: upgrade to 2.0.18 or later (affected < 2.0.18)
  • mem0ai 3.1.6Fixed version · GitHub Advisories · npm package mem0ai: upgrade to 3.1.6 or later (affected < 3.1.6)

[ Packages ]Affected open-source packages