Skip to main content

CVE-2026-123800supertokens supertokens-core insecure direct object reference

Schedule itCritical9.9EPSS not scored yet

CVE-2026-123800 is a insecure direct object reference in supertokens supertokens-core, rated critical (9.9 on CVSS 3.1).

Why this priority: Critical severity, with no exploitation signal yet.

Published · Updated · NVD status: Received

What it is

Changing an identifier in a request reaches another user's records. A permission check exists but gets the answer wrong for some callers.

How it is reached

An attacker can exploit it over the network, with an ordinary user account, and nobody has to click anything.

What an attacker gains

A successful attack can read the data it protects, change data or behaviour and take it offline. In practice, this kind of flaw lets an attacker reach data or actions their role should not allow. The damage can spread past the vulnerable component into others.

Is it being exploited?

There is no public report of exploitation yet.

What to do

  1. Upgrade supertokens supertokens-core to a fixed version for your release line (6.0.24, 7.0.23, 8.0.7).
  2. Until it is patched, review who holds accounts that can reach it.

Description from NVD

SuperTokens Core is an open source authentication server. From 6.0.0 until 6.0.24, 7.0.23, 8.0.7, 9.0.6, 9.1.6, 9.2.7, 9.3.5, 10.0.8, 10.1.9, 11.0.9, 11.1.4, 11.2.4, 11.3.8, 11.4.8, 12.0.11, 12.1.2, 12.2.1, and 12.3.1, Multitenancy.checkPermissionsForCreateOrUpdate in src/main/java/io/supertokens/multitenancy/Multitenancy.java does not adequately authorize updates to a parent connection URI domain or the base tenant. In a licensed multi-tenant deployment with multiple applications under one non-default connection URI domain and separate api_keys, an attacker holding one application's valid API key can update the parent domain because the CUD-target branch checks the domain without requiring the source application and tenant to be public. Because api_keys is not protected, the attacker can replace the parent key and then sibling application keys, read or modify sibling users, obtain sessions as those users, establish persistence through a sibling dashboard user, and lock out the sibling application's own key. In the advisory's v2 create or update handlers, omitting the optional identifier produces a base-tenant target that skips the permission branches and enterprise-feature gate, allowing changes to firstFactors, required secondary factors, and recipe-enabled flags that affect login integrity and availability. The base-target variant still rejects coreConfig and does not establish key theft. This issue is fixed in versions 6.0.24, 7.0.23, 8.0.7, 9.0.6, 9.1.6, 9.2.7, 9.3.5, 10.0.8, 10.1.9, 11.0.9, 11.1.4, 11.2.4, 11.3.8, 11.4.8, 12.0.11, 12.1.2, 12.2.1, and 12.3.1.

What this means for your architecture.

A CVE names a product. Whether it matters depends on where that product sits in your systems: what reaches it, which trust boundary it guards and what it can reach once compromised. Veriom maps your components, their relationships and your trust boundaries from your code, cloud and delivery evidence, so you can see where a component like this sits. The radar itself does not look at your systems.

Components it touches

  • Permission checks in APIs and admin surfaces. The flaw sits between one role or tenant and another.
  • Multi-tenant services. The flaw sits between one role or tenant and another.

Trust boundaries in play

  • Authenticated network access. An account is needed, so exposure follows who can sign in: customers, partners or staff.
  • Isolation between components. The impact crosses out of the vulnerable component into others it should be isolated from.
  • Between one role or tenant and another. An attacker who crosses it can reach data or actions their role should not allow.

Questions to answer about your own systems

  • Where does supertokens supertokens-core run in your systems, and at which version?
  • Which of those instances can be reached from the internet or partner networks?
  • What can it reach once compromised: which data stores, secrets and services?

Read more

Patches and commits

Sources

  • CVE records and CVSS scores from the NVD CVE API. This product uses the NVD API but is not endorsed or certified by the NVD.
  • Exploitation status from CISA’s Known Exploited Vulnerabilities catalog.
  • Exploit likelihood from FIRST’s Exploit Prediction Scoring System (EPSS), refreshed daily.
  • Explanations are written by Veriom from fixed templates over each record’s data, not by a person reviewing each CVE. Descriptions are quoted from the records as published.