SuperTokens Core: SAML callback accepts a replayed RelayState + SAMLResponse, minting a fresh authorization code on each replay
Affects supertokens-core in the 11.3, 11.4, 12.0, 12.1, 12.2 and 12.3 lines before the patched releases, when a replayed SAML callback is possible. Fixed in 11.3.8, 11.4.8, 12.0.11, 12.1.2, 12.2.1 and 12.3.1.
Written by anthropic/claude-haiku-5.5 from the sources below. Verify against them.
- Exploited
- No known exploitation
- Fix
- Fixed in 11.3.8, 11.4.8, 12.0.11, 12.1.2, 12.2.1, and 1 more
- Who is exposed
- Not reported
Do first: Upgrade to a fixed version: 11.3.8, 11.4.8, 12.0.11, 12.1.2, 12.2.1, or one of 1 more.
- Last modified
- A 0-100 score for how much a CVE matters across the industry: exploitation, exposure, how widely the software is used, severity and whether a fix exists.What do these mean? →
- 24/100 · provisional
- How many real-world setups can hit the bug, from the vendor's advisory and CISA data. It does not know your setup.What do these mean? →
- Unclear
- Whether working attack code is public (Exploit-DB, Metasploit, Nuclei or GitHub). Public code makes attacks easier.What do these mean? →
- None on Exploit-DB, Metasploit or GitHub
Summary
SuperTokens Core, an open source authentication server, is affected by a flaw in its SAML login callback that lets an attacker who captures a valid SAML response and its matching RelayState replay it to the callback and obtain a fresh authorization code for the captured user's identity. The attack can be carried out remotely, without logging in, and it requires the attacker to already have a legitimately issued, unexpired SAML response.
Read the original description
SuperTokens Core is an open source authentication server. From 11.3.0 until 11.3.8, 11.4.8, 12.0.11, 12.1.2, 12.2.1, and 12.3.1, SAML.handleCallback does not consume RelayState, record assertion identifiers, or enforce Response.InResponseTo. In the SP-initiated flow, an attacker who obtains a legitimately issued, still-valid SAML response and its matching RelayState can resubmit the pair to /recipe/saml/callback before the assertion's NotOnOrAfter time; in the IdP-initiated flow, the assertion can be replayed without RelayState. The missing Response.InResponseTo check also permits an in-progress login to be completed with an assertion for a different identity and fails to enforce allowIDPInitiatedLogin=false. The callback does not validate Destination or SubjectConfirmationData Recipient and NotOnOrAfter, and each accepted callback mints a fresh, independently redeemable authorization code carrying the captured user's identity. This issue is fixed in versions 11.3.8, 11.4.8, 12.0.11, 12.1.2, 12.2.1, and 12.3.1.
cve.now Index
- Exploitation?/40Unknown. No CISA SSVC exploitation rating yet
- Exposure17/25No login or user action needed, reachable over the network without a login · Unknown: Advisories don't say whether default setups are affected
- Reach?/20Unknown. No tracked technology or package matched
- Severity7.4/10CVSS 7.4
- No patch0/5No signal
What would change the score
- Would score about 69 if added to CISA KEV
- Would score about 64 if CISA's SSVC rates exploitation active
- Would score about 29 if advisories confirm default setups are exposed
What to do
Upgrade to a fixed version: 11.3.8, 11.4.8, 12.0.11, 12.1.2, 12.2.1, or one of 1 more.
Timeline
- CVE published
- First seen by cve.now
Affected versions
- supertokens supertokens-core
From 11.3.0 · fixed in 11.3.8; From 11.4.0 · fixed in 11.4.8; From 12.0.0 · fixed in 12.0.11; From 12.1.0 · fixed in 12.1.2; From 12.2.0 · fixed in 12.2.1; From 12.3.0 · fixed in 12.3.1
Evidence 13
- Advisory
- Repository
- Repository
- Repository
- Repository
Show all 13 sourcesShow fewer sources
- Repository
- Repository
- Repository
- Repository
- Repository
- Repository
- Repository
- Repository
Corrections
None so far.
Something wrong on this page? Report an error. Every fix is listed here.
Questions about CVE-2026-123801
Is CVE-2026-123801 being exploited?
It is not in CISA's Known Exploited Vulnerabilities catalog, and CISA's SSVC assessment does not mark exploitation as active. That does not mean it has not been attacked: vendors and researchers can report attacks before CISA lists them. No public exploit code is tracked.Source: cve.now feed data
What does this mean?
The SAML callback does not reject a RelayState and SAMLResponse pair that was already used. Replaying a captured callback makes the server issue a new authorization code for the same identity each time, without the identity provider being contacted again.Source: github.com
Which versions are affected by CVE-2026-123801?
supertokens-core: from 11.3.0 before 11.3.8; from 11.4.0 before 11.4.8; from 12.0.0 before 12.0.11; from 12.1.0 before 12.1.2; from 12.2.0 before 12.2.1; from 12.3.0 before 12.3.1.Source: cve.now feed data
Am I affected, and how do I check?
Versions from 11.3.0 up to but not including 11.3.8, 11.4.0 up to 11.4.8, 12.0.0 up to 12.0.11, 12.1.0 up to 12.1.2, 12.2.0 up to 12.2.1, and 12.3.0 up to 12.3.1 are in scope. The affected setup needs a still-valid SAML response obtained from a logging or TLS-terminating intermediary or a malicious browser extension; check the installed supertokens-core version against these ranges.Source: github.com
How do I fix CVE-2026-123801?
Upgrade supertokens-core to the patched release for your line: 11.3.8, 11.4.8, 12.0.11, 12.1.2, 12.2.1 or 12.3.1. No workaround is listed in the facts.Source: github.com