CVE-2026-123799: high-severity vulnerability in supertokens-core
SuperTokens Core: Dashboard session tokens are never checked for expiry: `isValidUserSession` ignores the stored `expiry`, so a long-expired admin session still authenticates
Published
E-mail alert when it lands in KEV, gets a public PoC or its score goes up.
21Vexday Risk Score
No sign of exploitation. No public exploitation artifact known so far.
ssvc Trackcvss 7.4epss 0.8%
SuperTokens Core is an open source authentication server. From 11.0.0 until 11.0.9, 11.1.4, 11.2.4, 11.3.8, 11.4.8, 12.0.11, and 12.1.2, Dashboard.isValidUserSession treats any stored session row as valid without comparing DashboardSessionInfo.expiry to the current time. DashboardQueries.getSessionInfoWithSessionId also selects by app and session identifier without an expiry predicate, leaving the periodic DeleteExpiredDashboardSessions cleanup as the only expiration enforcement. An attacker who obtains a dashboard administrator session after its 30-day lifetime can continue using POST /recipe/dashboard/session/verify until the row is removed, and frequent Core restarts can prevent the 12-hour cleanup sweep from running. The stale session retains full dashboard read and write access, but the flaw does not provide a way to guess or acquire the random session identifier. This issue is fixed in versions 11.0.9, 11.1.4, 11.2.4, 11.3.8, 11.4.8, 12.0.11, and 12.1.2.
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N
Affected products
supertokens · supertokens-coreRelated CVEs — supertokens-core
In the same product, most dangerous first.
CVE-2026-123800CRITICALSuperTokens Core: App-scoped API key can overwrite the parent connection URI domain's credentials and take over sibling applicationsEPSS 0.6%CVE-2026-123803HIGHSuperTokens Core: WebAuthn sign-in accepts a passkey across tenant boundariesEPSS 0.5%CVE-2026-123797HIGHSuperTokens Core: Unknown tenant path bypasses API key and public-tenant enforcementEPSS 0.5%CVE-2026-123804MEDIUMSuperTokens Core: A session created concurrently with account unlink survives the unlinkEPSS 0.4%CVE-2026-123801HIGHSuperTokens Core: SAML callback accepts a replayed RelayState + SAMLResponse, minting a fresh authorization code on each replayEPSS 0.4%CVE-2026-123802HIGHSuperTokens Core SAML: identity taken from an assertion that never passed the audience check, allowing sign-in as any IdP userEPSS 0.3%
References
https://github.com/supertokens/supertokens-core/commit/0f4817152278b39fbf21b97c3795b4fc68c12c38https://github.com/supertokens/supertokens-core/commit/4b315b2382c8eec2cde28fbda113597bffad8da5https://github.com/supertokens/supertokens-core/commit/699d806b5fc77ee6343f8e48e0769dce8049b078https://github.com/supertokens/supertokens-core/commit/8906b840669b28b3af7367cf18870db0044d0d18https://github.com/supertokens/supertokens-core/commit/bd8eb93001cf814a8065e8f3cea755af267bc308https://github.com/supertokens/supertokens-core/commit/ced1c913d53641e5eb8108caef110e55348b5401https://github.com/supertokens/supertokens-core/commit/da0ec91d20ecbb68730741f8b0dec8c986b68877https://github.com/supertokens/supertokens-core/commit/e72793ec5bd925fd3b9ff19328043dc2a03201bdhttps://github.com/supertokens/supertokens-core/pull/1409https://github.com/supertokens/supertokens-core/releases/tag/v11.0.9https://github.com/supertokens/supertokens-core/releases/tag/v11.1.4https://github.com/supertokens/supertokens-core/releases/tag/v11.2.4