Skip to main content

Mnemosyne EUVDEUVD-2026-83263

| CVE-2026-59163 CRITICAL
Improper Verification of Cryptographic Signature (CWE-347)
2026-09-18 GitHub_M GHSA-xcw4-53cc-hv32
9.1
CVSS 3.1 · Vendor: GitHub_M
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Reach network-exposed sync endpoint
  2. Delivery
    Forge JWT for target user_id
  3. Exploit
    Bypass disabled signature verification
  4. Execution
    Authenticate to /sync/push and /sync/pull
  5. Impact
    Read victim sync state and inject corrupt state

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A04:2025 - Cryptographic Failures
ASVS 5.0
V11 - Cryptography Signature verification
Exploitation Conditions

Requires that the Mnemosyne sync server endpoint (the JWT-authenticated /sync/status, /sync/push, /sync/pull routes in mnemosyne/core/sync_server.py) be network-reachable by the attacker; against a reachable endpoint on any version <= 3.10.0, exploitation is remote and unauthenticated with no user interaction, since any well-formed JWT (including alg:none or wrong-key) is accepted. The primary limiting factor is network exposure: deployments that bind to localhost, sit behind a reverse proxy with mTLS, or are firewalled to trusted clients are not exploitable, and the vendor explicitly states the flaw 'is not exploitable against an unreachable endpoint,' dropping effective severity to High/Medium for localhost-only setups.

Impact

This is a genuine high-priority issue where the CVSS 9.1 aligns with real-world impact rather than being an inflated score. The CVSS 3.1 vector (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N) indicates a network-reachable, low-complexity, unauthenticated attack with full confidentiality and integrity compromise, which the source code and advisory corroborate: the sync server base64-decoded JWT headers/payloads but invoked the JWT library with options that disabled signature verification, so any well-formed token - including alg:none and wrong-key tokens - was accepted. A working proof-of-concept (forge_jwt) is published in the GHSA advisory, so publicly available exploit code exists, though this must not be conflated with active exploitation. No EPSS score and no CISA KEV entry were provided, so there is no evidence of widespread or automated exploitation in the wild; the risk is elevated by exploit simplicity and a public POC, but tempered by the product's niche footprint. The one material caveat, stated explicitly by the vendor, is that the 9.1 assumes the sync endpoint is network-reachable - for localhost-only or mTLS-fronted deployments the effective severity drops to High/Medium, so defenders should verify their actual exposure before treating this as an internet-facing critical.

Exploit ScenarioDerived

An attacker who can reach the sync server endpoint over the network crafts a JWT with an arbitrary user_id and a far-future exp, needing no secret and no valid signature (the advisory ships a copy-paste forge_jwt POC). They present it as a bearer token to /sync/status, /sync/push, and /sync/pull to impersonate any user, read that victim's sync state, and push malicious sync state to corrupt the victim's local database. In a shared multi-user deployment this also enables lateral pivoting between users.

Act Now Prioritize within 24-48h. Why: CRITICAL severity + public POC available.
1 PoC candidate (unverified) Patch available 0.3% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Sep 18, 2026

Authentication bypass in the Mnemosyne sync server (mnemosyne-memory through v3.10.0) lets an unauthenticated, network-positioned attacker forge a JWT bearer token - including one using alg: none or signed with the wrong key - and impersonate any user_id to read that victim's synchronized memory state or push malicious state that corrupts their local database. Rated CVSS 9.1 (AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N) with no availability impact, the flaw is remediated in v3.10.1, and a token-forging reproduction is published in the vendor's GHSA-xcw4-53cc-hv32 advisory, meaning publicly available exploit code exists, although no confirmed active exploitation has been reported. Practical exploitability is governed entirely by network exposure: deployments that bind the sync endpoint to localhost, front it with mTLS, or firewall it to trusted clients are not reachable and the vendor explicitly notes the issue 'is not exploitable against an unreachable endpoint,' reducing effective severity to High or Medium for those configurations.

RemediationAI

Upgrade immediately: run 'pip install --upgrade mnemosyne-memory==3.10.1' (Vendor-released patch: 3.10.1), which installs the rewritten HS256 verifier from commit a0b6b871 (PR #373) and rejects alg: none, wrong-key signatures, expired tokens, and malformed payloads; see https://github.com/mnemosyne-oss/mnemosyne/releases/tag/v3.10.1 and the advisory at https://github.com/mnemosyne-oss/mnemosyne/security/advisories/GHSA-xcw4-53cc-hv32. If the sync server cannot be patched right away, the vendor's compensating control is to eliminate reachability of the endpoint, since the flaw cannot be triggered against an unreachable service: bind the sync server to 127.0.0.1 and reach it over an SSH tunnel (fastest and side-effect free, but breaks any remote or multi-host sync clients until tunneling is arranged), or place a reverse proxy in front that enforces mTLS for /sync/status, /sync/push, and /sync/pull (adds certificate lifecycle management overhead and can break clients without client certs), or apply firewall rules restricting the sync port to trusted client IPs (simple, but brittle with roaming or dynamic-IP clients). Note that rotating the JWT shared secret alone does not mitigate the pre-patch flaw, because signature verification is disabled and any well-formed token is accepted regardless of the key. Also audit sync logs and stored state for forged user_id activity on any instance that was exposed before patching.

Affected VersionsENISA

mnemosyne < 3.10.1

Affected Packages

pypi mnemosyne-memory fix: 3.10.1
euvd mnemosyne fix: 3.10.1

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in pypi, euvd

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The weakness class is CWE-347, Improper Verification of Cryptographic Signature, and the technology at issue is JSON Web Token bearer authentication over a Python HTTP sync service. Prior to v3.10.1, the auth routine in mnemosyne/core/sync_server.py split the compact token on '.' and base64url-decoded the payload to read the user_id and exp claims, but it passed the token to a jwt library call with options that effectively disabled signature verification; the HMAC-SHA256 signature over the 'header.payload' signing input was never checked. Any well-formed three-segment token was therefore accepted, including tokens declaring alg: none and tokens signed with an attacker-controlled key, and the server trusted the attacker-supplied user_id claim. The affected package is tracked by CPE cpe:2.3:a:axdsan:mnemosyne:*:*:*:*:*:*:*:* (pip package mnemosyne-memory). The v3.10.1 fix (commit a0b6b871, PR #373) removes the broken decode path and replaces it with a from-scratch verifier implemented only with the Python standard library: a strict alg: HS256 allowlist that rejects none and asymmetric algorithms, constant-time signature comparison via hmac.compare_digest, UTC-aware exp validation with leeway, explicit type validation of the decoded JSON payload before use, and specific error messages on failure. New regression tests in tests/test_sync.py exercise forged tokens with custom headers and signatures.

Know when Mnemosyne gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (GitHub_M) PRIMARY 9.1 CRITICAL
AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
vuln.today AI 9.1 CRITICAL

Remote unauthenticated JWT forgery with no user interaction fully compromises confidentiality and integrity of sync data; no availability impact, scope unchanged as the sync server's own auth is the target.

3.1 AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N
4.0 AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Privileges Required
None
User Interaction
None
Scope
Unchanged
Confidentiality
High
Integrity
High
Availability
None

Lifecycle Timeline

2
Patch available
Sep 18, 2026 - 19:03 EUVD
CVE Published
Sep 18, 2026 - 17:57 cve.org
CRITICAL 9.1

DescriptionCVE.org

Mnemosyne is a memory layer for artificial intelligence agents. Prior to v3.10.1, the auth check in mnemosyne/core/sync_server.py parsed the JWT's header and payload using base64 decoding, then passed the token to a jwt library call with options that effectively disabled signature verification. The server accepted any well-formed token regardless of the signature, including tokens with alg: none and tokens signed with the wrong key. The fix in v3.10.1 replaces the broken decode with a from-scratch HS256 verifier using only the Python standard library. For users who cannot upgrade immediately, restrict network access to the sync server endpoint to trusted clients only. Firewall, reverse proxy with mTLS, or localhost bind with SSH tunnel are all viable. The vulnerability is not exploitable against an unreachable endpoint.

Technical POC Analysis

Bug class: CWE-347, Improper Verification of Cryptographic Signature.

Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.

Latest POC

1 PoC candidate from github (unverified)

Sign in to open the public PoC links collected for this CVE.

Executive ViewAI

Why It Matters

The Mnemosyne sync server (mnemosyne-memory through v3.10.0) contains an authentication bypass that allows an unauthenticated, network-positioned attacker to impersonate any user and read or corrupt that user's synchronized memory state. Any organization running a network-reachable Mnemosyne sync endpoint is affected, with potential exposure of sensitive synchronized data and integrity of users' local databases; deployments where the endpoint is bound to localhost or otherwise unreachable are not at risk. With a CVSS of 9.1 and publicly available exploit code but no confirmed active exploitation, this warrants urgent prioritization of the exposed deployments rather than enterprise-wide alarm.

Business Impact: High
Compensating Controls

Vendor-released patch: v3.10.1. Per the vendor advisory the flaw is remediated in v3.10.1, so apply that upgrade as the primary fix; until it is deployed, bind the sync endpoint to localhost, front it with mTLS, or firewall it to trusted clients, and rotate JWT signing keys and revoke existing tokens to limit forged-token abuse.

Threat Intelligence Overview

EPSS Score
0.3%
Top 83% exploitable
Prevalence
Low
niche open-source memory layer for AI agents, limited production footprint
Threat Intel
1
1 source
Data Quality
6 sources
Confidence: High
EUVD NVD CVE.org EPSS Vulnrichment GHSA GitHub

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity CRITICAL
CISA KEV No
Public POC Yes
EPSS 0.3%
Patch available Yes
Active threat No
Deciding rule
CRITICAL severity + public POC available
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
Yes
Human Impact
High
Technical Impact
Total

Priority Score

66
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +46
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy