CVE-2026-59163 json
Mnemosyne has JWT signature verification bypass sync server that allows authentication bypass
published 2026-09-18 52 d ago modified 2026-10-01 39 d ago also GHSA-xcw4-53cc-hv32 , PYSEC-2026-4106 , EUVD-2026-83263
- cvss
- 9.1
- version 3.1, CNA
- cisa kev
- Not listed
- not in CISA's catalog
- epss
- 0.3%
- EPSS 0.3% chance of exploitation in 30 days, percentile 25%
- public exploits
- 0
- none known
Summary
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.
Patch / fix
- pypi mnemosyne-memory 3.10.1
CISA SSVC
- Exploitation
- Proof of concept is public
- Automatable
- yes
- Technical impact
- total
- Assessed
- 52 d ago
Exploit prediction
0.33% chance of exploitation in the next 30 days, higher than 25% of all scored CVEs (FIRST EPSS, 2026-11-08).
Exploits and checks
- github.com https://github.com/mnemosyne-oss/mnemosyne/security/advisories/GHSA-xcw4-53cc-hv32 referenced PoC, tagged "exploit" by a source, unverified
CVSS scores
| assigned by | version | score | vector |
|---|---|---|---|
| CNA | 3.1 | 9.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
| OSV | 3.1 | 9.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
| GitHub | 3.1 | 9.1 | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N |
Affected packages
| ecosystem | package | affected | fixed in |
|---|---|---|---|
| pypi | mnemosyne-memory | <3.10.1 |
3.10.1 |
Affected products
- AxDSan mnemosyne
Classification
- Weakness
-
- CWE-347 Improper Verification of Cryptographic Signature
References
-
github.com
/mnemosyne-oss/mnemosyne/pull/373
web
-
github.com
/mnemosyne-oss/mnemosyne/commit/a0b6b8711a1a485304971710dc3571e29ff9dbeb
web
-
github.com
/mnemosyne-oss/mnemosyne/security/advisories/GHSA-xcw4-53cc-hv32
exploit
-
github.com
/mnemosyne-oss/mnemosyne/releases/tag/v3.10.1
web
-
github.com
/AxDSan/mnemosyne/security/advisories/GHSA-xcw4-53cc-hv32
web
-
github.com
/AxDSan/mnemosyne
package
-
pypi.org
/project/mnemosyne-memory
package
-
github.com
/advisories/GHSA-xcw4-53cc-hv32
advisory
-
nvd.nist.gov
/vuln/detail/CVE-2026-59163
advisory
Sources
- CVE List CVE-2026-59163
- GitHub Advisory GHSA-xcw4-53cc-hv32
- NVD CVE-2026-59163
- OSV PYSEC-2026-4106
Fencer Vulns keeps one entry per vulnerability: the CVE id wins, then GHSA, and records that alias each other are merged, except that two CVEs always keep separate entries. The same data is available as JSON.