CVE-2026-42349 Clerk: Authorization bypass when combining organization, billing, or reverification checks

High 7.6 Published Updated

Attackers can bypass combined authorization checks in Clerk SDKs, allowing unauthorized access to gated actions when specific conditions are met.

Exploited in the wild
Not known
Login needed
Any signed-in user
Attackable
Over the internet
Victim action needed
Not needed
Fix
Available

What is CVE-2026-42349?

CVE-2026-42349 is a high-severity authentication bypass vulnerability in @clerk astro, published on 11 May 2026. Any signed-in user can exploit it over the network, with no action from the victim.

Official description

Clerk JavaScript is the official JavaScript repository for Clerk authentication. has(), auth.protect(), and related authorization predicates in @clerk/shared, @clerk/nextjs, @clerk/backend, and other framework SDKs can return true for certain combined authorization checks when the result should be false, allowing a gated action to proceed for a user who does not satisfy the full set of requested conditions. This call shape can be bypassed if certain conditions are met: a has() or auth.protect() call that combines a reverification check with any of role, permission, feature, or plan, or that combines a billing check (feature or plan) with a role or permission check. This vulnerability is fixed in @clerk/clerk-js 5.125.10 and 6.7.5.

Weakness: CWE-863, CWE-754

Which versions are affected by CVE-2026-42349?

40 open source packages ship an affected version, including @clerk/astro, @clerk/backend and @clerk/chrome-extension. It affects 17 products.

PackageAffectedFixed in
@clerk/astro npmFrom 2.0.02.17.11
@clerk/astro npmFrom 2.0.02.17.11
@clerk/astro npmFrom 3.0.03.0.18
@clerk/astro npmFrom 3.0.03.0.18
@clerk/backend npmFrom 2.0.02.33.3
@clerk/backend npmFrom 2.0.02.33.3
34 more packages
@clerk/backend npmFrom 3.0.03.2.14
@clerk/backend npmFrom 3.0.03.2.14
@clerk/chrome-extension npmFrom 1.3.52.9.15
@clerk/chrome-extension npmFrom 1.3.52.9.15
@clerk/chrome-extension npmFrom 3.0.03.1.15
@clerk/chrome-extension npmFrom 3.0.03.1.15
@clerk/clerk-expo npmFrom 2.2.112.19.36
@clerk/clerk-expo npmFrom 2.2.112.19.36
@clerk/clerk-js npmFrom 5.22.05.125.10
@clerk/clerk-js npmFrom 5.22.05.125.10
@clerk/clerk-js npmFrom 6.0.06.7.5
@clerk/clerk-js npmFrom 6.0.06.7.5
@clerk/clerk-react npmFrom 5.9.05.61.6
@clerk/clerk-react npmFrom 5.9.05.61.6
@clerk/expo npmFrom 3.0.03.2.2
@clerk/expo npmFrom 3.0.03.2.2
@clerk/express npmFrom 0.1.01.7.79
@clerk/express npmFrom 0.1.01.7.79
@clerk/express npmFrom 2.0.02.1.6
@clerk/express npmFrom 2.0.02.1.6
@clerk/fastify npmFrom 1.0.422.6.31
@clerk/fastify npmFrom 1.0.422.6.31
@clerk/fastify npmFrom 3.0.03.1.16
@clerk/fastify npmFrom 3.0.03.1.16
@clerk/hono npmFrom 0.0.20.1.16
@clerk/hono npmFrom 0.0.20.1.16
@clerk/nextjs npmFrom 6.0.06.39.3
@clerk/nextjs npmFrom 6.0.06.39.3
@clerk/nextjs npmFrom 7.0.07.2.4
@clerk/nextjs npmFrom 7.0.07.2.4
@clerk/nuxt npmFrom 1.0.01.13.29
@clerk/nuxt npmFrom 1.0.01.13.29
@clerk/nuxt npmFrom 2.0.02.2.5
@clerk/nuxt npmFrom 2.0.02.2.5

Products include Clerk Clerk\/Astro, Clerk Clerk\/Backend, Clerk Clerk\/Chrome-Extension, Clerk Clerk\/Clerk-Expo, Clerk Clerk\/Clerk-Js, Clerk Clerk\/Clerk-React and 11 more.

How do I fix CVE-2026-42349?

Upgrade @clerk/astro to a fixed version for your release line: 2.17.11 or 3.0.18.

Upgrade, and rotate credentials and sessions that may have been exposed. More about Authentication bypass.

Is CVE-2026-42349 being exploited?

It is not confirmed as exploited in the wild, but public exploit code for CVE-2026-42349 exists.

Sources

Also known as GHSA-w24r-5266-9c3c.

Is CVE-2026-42349 in your software?

Upload an SBOM and sbomify checks it against every vulnerability here, every day.

Check your SBOMs for free