Fetching from the wire…
Public story · 2026-09-20 · high
A disabled signature check in the agent memory sync server accepted forged tokens for any user, including the alg:none case.
Why now: GitHub published the advisory September 18, with the patched version already out.
A JWT bug let anyone impersonate any user of mnemosyne-memory, the sync server behind an agent memory system. The GitHub Advisory Database entry, published September 18, rates it 9.1 and covers every release up to and including v3.10.0.
The stakes are direct: an unauthenticated attacker with network access could read or rewrite another user's stored agent memory, no credentials required. That's not a profile field or a shopping cart. It's the context an agent carries across sessions, and a forged token handed over both read and write access to it.
The server took bearer tokens, base64-decoded them, then called a JWT library with options that turned off signature verification. Any well-formed token got accepted, including ones using alg:none, which carries no signature at all. Forge a token with a target user_id and the server does the rest.
The fix in v3.10.1 replaces the decode-and-trust path with a stdlib HS256 verifier. It uses hmac.compare_digest for the comparison, a strict algorithm check, and UTC-aware expiration validation. That's the boring, correct way to check a signature.
The advisory doesn't say how long v3.10.0 ran in production before the fix, or whether anyone can confirm it was exploited before the patch. If you're running mnemosyne-memory, v3.10.1 is the version to be on.
Each link below shares sources, entities, or timing with this story.
GHSA-xcw4-53cc-hv32, published September 18, covers mnemosyne-memory through v3.10.0: the sync server base64-decoded JWT bearer tokens then called a jwt library with verification disabled, so any well-formed token was accepted including alg:none (GitHub Advisory). An unauthent...
The flag drops server-initiated notifications and SSE stream resumability, and it ships off by default.
Two PRs merged five hours apart on September 8 wire biometric approval into every Codex agent tool call, and remote workspaces don't get it.
Send Host: localhost and 9router hands over proxy access to its owner's paid OpenAI and Anthropic credentials, no token required.
The open-source project replaces vector search with ls and find commands, and its LoCoMo scores go from 24-57% to 80-83% accuracy.
The same release adds live reasoning summaries and voice mode, then a same-day patch turned reasoning summaries off by default.
MindPattern daily
One email a day at 7 AM. Sources and a take on every story. Unsubscribe anytime.