Skip to main content

Auth0 Next.js SDK CVE-2025-67490

MEDIUM
Incorrect Authorization (CWE-863)
2025-12-10 security-advisories@github.com
5.4
CVSS 3.1 · Vendor: github
View

Attack ChainAIDerived

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

  1. Access
    Authenticate to target Next.js app
  2. Delivery
    Issue simultaneous token requests on shared client
  3. Exploit
    Win TokenRequestCache lookup race
  4. Execution
    Receive another request's cached token
  5. Impact
    Access resources with mismatched token

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization logic validation
MITRE ATT&CK

1 technique across 1 tactic: Privilege Escalation

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

Requires the application to use the @auth0/nextjs-auth0 SDK at exactly v4.11.0, 4.11.1, or 4.12.0 configured with a singleton Auth0 client instance, and to receive simultaneous (concurrent) getAccessToken requests on that same client so the TokenRequestCache returns an improper lookup result. Exploitation is limited by the need to win a non-deterministic concurrency race (AC:H), by the attacker needing to be an interacting/authenticated user of the app (PR:L), and by the requirement that another distinct token request be genuinely in-flight at the same moment. It does not affect other SDK versions or non-singleton client patterns.

Impact

This is a genuine authorization/confidentiality flaw (CWE-863) but a low real-world priority. The CVSS 3.1 vector (AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:L/A:N = 5.4 Medium) shows the severity is dominated by C:H - cross-request token confusion, where a concurrent request may receive another request's access-token results from the TokenRequestCache. Multiple mitigating signals align: AC:H reflects that exploitation depends on winning a non-deterministic race between simultaneous in-flight token requests on the same singleton client, and PR:L means the actor must already be an interacting user of the application. EPSS is 0.20% (9th percentile), there is no CISA KEV entry, and no public exploit code is referenced - no public exploit identified at time of analysis. The bug is real and vendor-confirmed via GitHub advisory GHSA-wcgj-f865-c7j7 (fix removes the TokenRequestCache entirely), but its exploitation is opportunistic and timing-dependent rather than a reliable, weaponizable attack. Note one inconsistency worth flagging: the input tag 'Authentication Bypass' overstates and mischaracterizes this issue - it is an improper-authorization/race-condition token mix-up (CWE-863), not an auth bypass. Overall: legitimate defect meriting a routine SDK upgrade, not an emergency-patch scenario.

Exploit ScenarioDerived

In an app using a singleton Auth0 client, an attacker times authenticated requests to arrive simultaneously with another user's token request so that the shared TokenRequestCache returns the wrong cached in-flight result, potentially handing the attacker an access token minted for a different audience/scope or user context. Because the flaw is a non-deterministic race (AC:H) requiring an already-authenticated session (PR:L), success is opportunistic. No public proof-of-concept is referenced in the available data.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Sep 26, 2026

Concurrent token requests handled by the Auth0 Next.js SDK can be resolved through an internal in-flight request cache to the wrong result, causing an application that uses a singleton Auth0 client to receive an access token belonging to a different, simultaneously executed request - an incorrect-authorization and confidentiality exposure tracked as CWE-863. Only @auth0/nextjs-auth0 versions 4.11.0, 4.11.1, and 4.12.0 are affected; releases 4.11.2 and 4.12.1 remove the faulty TokenRequestCache. Exploitation is gated on winning a non-deterministic concurrency race (AC:H) by an authenticated user of the application (PR:L), the EPSS score is only 0.20% (9th percentile), and no public exploit has been identified at time of analysis.

RemediationAI

Upgrade @auth0/nextjs-auth0 to 4.11.2 (for the 4.11.x line) or 4.12.1 (for the 4.12.x line), per the vendor advisory at https://github.com/auth0/nextjs-auth0/security/advisories/GHSA-wcgj-f865-c7j7; the fix commit is https://github.com/auth0/nextjs-auth0/commit/26cc8a7c60f4b134700912736f991a25bd6bbf0b, which removes the TokenRequestCache altogether. Vendor-released patch: 4.11.2 and 4.12.1. Because the flaw requires simultaneous getAccessToken calls on a shared singleton client, organizations that cannot upgrade immediately can reduce exposure by avoiding a shared singleton Auth0 client across request handlers (per-request client instantiation), or by serializing/mutating token requests so that concurrent calls with different audience or scope never overlap - at the cost of extra token endpoint round-trips and possibly duplicate token storage, which is the same trade-off the upstream fix makes. Note that upgrading changes behavior: concurrent identical requests will no longer be deduplicated, and may each hit the token endpoint and persist separate (but equivalent) tokens.

Affected Packages

npm @auth0/nextjs-auth0 fix: 4.11.2, 4.12.1

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in npm

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

Technical ContextAI · show details

The defect lives in the Auth0 Next.js SDK's in-flight request deduplication layer, the TokenRequestCache, which was intended to coalesce simultaneous getAccessToken calls on the same client so that parallel requests for the same audience/scope would share one underlying token request. When multiple token requests with differing parameters are in flight at the same moment on a singleton Auth0Client instance, the cache lookup can match the wrong entry and hand a caller a token produced for another request. This is a classic authorization-correctness failure (CWE-863, Incorrect Authorization): the SDK returns a credential the caller should not have received, breaking the binding between the request's intended audience/scope and the token actually returned. The upstream fix (commit 26cc8a7c60f4b134700912736f991a25bd6bbf0b) removes TokenRequestCache entirely, deletes its unit tests, and restores a direct call to executeGetAccessToken, accepting that concurrent identical calls will each execute independently rather than risk incorrect deduplication. The affected CPEs (cpe:2.3:a:auth0:nextjs-auth0:4.11.0, :4.11.1, :4.12.0 on the node.js platform) confirm this is the npm package @auth0/nextjs-auth0, a server-side SDK running in Node.js.

Know when Next.js 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) PRIMARY 5.4 MEDIUM
AV:N/AC:H/PR:L/UI:R/S:U/C:H/I:L/A:N
vuln.today AI 5.9 MEDIUM

Network-reachable but exploitation hinges on winning a concurrency race (AC:H) by an authenticated app user (PR:L); primary impact is cross-request token disclosure (C:H), minor integrity (I:L), no availability effect.

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

Primary rating from Vendor (github).

CVSS VectorVendor: github

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

DescriptionCVE.org

The Auth0 Next.js SDK is a library for implementing user authentication in Next.js applications. When using versions 4.11.0 through 4.11.2 and 4.12.0, simultaneous requests on the same client may result in improper lookups in the TokenRequestCache for the request results. This issue is fixed in versions 4.11.2 and 4.12.1.

Threat Intelligence Overview

EPSS Score
0.2%
Top 91% exploitable
Prevalence
Medium
Popular Auth0 SDK but only three specific vulnerable Next.js library versions
Data Quality
4 sources
Confidence: Medium

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 MEDIUM
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
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· derived
Scheduled
Exploitation· derived
None
System Exposure· derived
Open
Automatable· derived
No
Human Impact· derived
Medium

Priority Score

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

Affected Products (CPE)CVE.org

cpe:2.3:a:auth0:nextjs-auth0:4.11.0:*:*:*:*:node.js:*:*
cpe:2.3:a:auth0:nextjs-auth0:4.11.1:*:*:*:*:node.js:*:*
cpe:2.3:a:auth0:nextjs-auth0:4.12.0:*:*:*:*:node.js:*:*
CVE-2025-29927 CRITICAL POC
9.1 Mar 21

Next.js versions 1.11.4 through 15.2.2 contain a critical middleware authorization bypass via the x-middleware-subreques

CVE-2017-16877 HIGH POC
7.5 Nov 17

ZEIT Next.js before 2.4.1 has directory traversal under the /_next and /static request namespace, allowing attackers to

CVE-2025-57822 MEDIUM POC
6.5 Aug 29

Next.js is a React framework for building full-stack web applications. Rated medium severity (CVSS 6.5), this vulnerabil

CVE-2026-56682 MEDIUM POC
5.3 Sep 22

Improper restriction of excessive authentication attempts (CWE-307) in the 9Router AI router package (decolua/9router) b

CVE-2025-6087 CRITICAL
9.1 Jun 16

A remote code execution vulnerability (CVSS 9.1). Critical severity with potential for significant impact on affected sy

CVE-2026-41248 CRITICAL
9.1 Apr 24

Authentication/authorization bypass in Clerk's official JavaScript SDKs (@clerk/nextjs, @clerk/nuxt, @clerk/astro, and t

CVE-2026-92931 HIGH
8.8 Oct 05

Server-side request forgery in the Progress Sitefinity Next.js SDK npm package (@progress/sitefinity-nextjs-sdk, version

CVE-2025-68130 HIGH
8.5 Dec 16

Prototype pollution in tRPC's @trpc/server package, specifically within the `formDataToObject` function used by the expe

CVE-2025-48947 HIGH
7.7 Jun 04

A security vulnerability in Next.js applications. In Auth0 Next.js SDK (CVSS 7.7). High severity vulnerability requiring

CVE-2026-91154 MEDIUM
6.9 Sep 28

Unauthenticated remote attackers can repeatedly invoke the revalidateProducts Server Action in the MarcosCamara01 Ecomme

CVE-2026-101004 MEDIUM
6.9 Sep 28

Unauthenticated remote attackers can call the cleanCache handler in NotionNext's pages/api/cache.js to force cache inval

CVE-2025-32421 LOW
3.7 May 14

Next.js is a React framework for building full-stack web applications. Rated low severity (CVSS 3.7), this vulnerability

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