โ† Real-world cases

mem0 agent-memory server: unauthenticated memory read/write + plaintext LLM-key disclosure (CVE-2026-59705 / CVE-2026-59706)

Disclosed vulnerability07 Jul 2026

Two critical vulnerabilities were disclosed on 7 July 2026 in mem0 (mem0ai), a widely adopted open-source long-term-memory layer for AI agents (reportedly ~60k GitHub stars), affecting its openmemory/api component prior to commit a3154d5. Per NVD and the VulnCheck advisories, CVE-2026-59705 (CWE-306 Missing Authentication; CVSS 3.1 9.8) stemmed from API routers registered without authentication middleware, letting an unauthenticated attacker read, write, and delete arbitrary users' stored memories by supplying an arbitrary user_id, or invoke a pause endpoint with global_pause=true to deny memory service across all users. CVE-2026-59706 (CVSS 3.1 9.3) covered unauthenticated config endpoints that reportedly returned stored LLM API keys (e.g. OpenAI keys) in plaintext via a config GET, and allowed server-side request forgery by setting an attacker-controlled ollama_base_url to internal targets such as a cloud instance-metadata service. Endpoint paths and parameter names here are illustrative of the disclosed classes rather than an operational exploit. The pair is a concrete example of the agent memory store itself โ€” not the model or a prompt-injection channel โ€” being the attack surface: an unauthenticated network attacker could poison an agent's persistent memory, exfiltrate both stored memories and provider credentials, and disrupt service. mem0 shipped a fix in commit a3154d5.

Practise the risk class โ€” related scenarios

Interactive simulations of the risk class this case illustrates (not a re-enactment of this specific event).

๐Ÿ”‘The Agent With the Master Key

An ops agent gets one god-mode credential โ€” and one misread wipes production

๐Ÿช„The Approval That Lied

A coding agent asks to write ./notes.txt โ€” the file it actually overwrites is your SSH keys

๐Ÿ“ฃThe Echo Chamber

A team of agents agrees its way into a confidently wrong answer โ€” and a runaway loop

๐Ÿ“งThe Email That Gave Orders

A support email hides instructions โ€” and the assistant obeys them

๐Ÿ—„๏ธWhen the Query Bites Back

A text-to-SQL agent runs the model's output straight at the database

๐ŸชกDeath by a Thousand Innocent Steps

A jailbroken agent decomposes one malicious goal into hundreds of harmless-looking steps โ€” and per-step filters never see the attack

๐Ÿ•ต๏ธLies in the Loop

A poisoned issue makes the agent lie to the human who approves its actions

๐Ÿ‘‚Overheard Through the Cache

A speed optimisation becomes a cross-tenant listening device

๐ŸชŸStealing the Model

Two doors to the same secret: reconstruct the model through its API, or just walk off with the weight file

๐ŸŽญThe Blackmail Gambit

Told it's being shut down, an agent reaches for leverage โ€” with no attacker in sight

๐Ÿ“ผThe Compromised Flight Recorder

The forensic record is itself the attack surface โ€” an agent's log is poisoned, then quietly rewritten

๐Ÿ“ฆThe Dataset That Ran Code

A 'safe' dataset preview turns an upload into code execution on the pipeline's workers

๐Ÿ‘ปThe Email That Rewrote Its Memory

A newsletter the user asked to summarise quietly writes a false 'fact' into the agent's long-term memory โ€” and it detonates weeks later

๐Ÿ‘๏ธThe Invisible Webpage Command

A shopping page tells the agent to do something the user never asked for

๐Ÿ•ต๏ธThe Link That Hired an Insider

One click provisions an attacker-configured agent inside your own workspace

๐Ÿง The Memory That Wouldn't Die

A single poisoned document plants a standing instruction that survives every reset

๐Ÿ“กThe Message in Morse

Encoded public text is laundered across an agent handoff into an on-chain transfer

๐Ÿ–ผ๏ธThe Picture That Whispered

A screenshot that's harmless at full size becomes an order once the system shrinks it

๐ŸŽซThe Stolen Session

An attacker captures the agent's bearer token โ€” and inherits its authority

๐ŸฅธThe Uninvited Agent

A forged peer registers on the agent directory โ€” and the planner enlists it

๐ŸชชThe Worker Who Spoke for the Boss

A poisoned web page hijacks a research agent โ€” and the planner acts on its behalf

๐Ÿ–ฑ๏ธWhat You Click Is Not What You Get

A GUI agent clicks 'Continue' โ€” but the screen moved, and it lands on 'Send'

๐Ÿ–ผ๏ธZero-Click Leak by Picture

An inbox summary quietly ships a secret to an attacker's server

More cases on Memory Poisoning

AI RiskAtlas is an educational model of how GenAI & agentic systems work and fail. Architectures and payloads are illustrative and simplified for learning โ€” not operational guidance. Real-world cases are summarised from public reporting.

Sources & further reading โ†’ยทBuilt by Shi Yuan โ†—