Vulnerability · Published Jul 15, 2026 · Assigned by GitHub_M

CVE-2026-53512Better Auth: OAuth refresh-token replay via missing client authentication on oidc-provider and mcp plugins

Critical 9.1

In plain English

A critical-severity improper authentication in better-auth from better-auth. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 0.3% (higher than 20% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.

Severity (CVSS 4.0)9.1Critical
Exploit odds (30 days)0.3%top 80.0% of all CVEs
Exploited in the wildNo reportsCISA SSVC: none
Attack toolingNoneno public tooling known

Official description

Better Auth is an authentication and authorization library for TypeScript. Prior to 1.6.11, the legacy oidcProvider and mcp plugins expose OAuth token endpoints whose refresh_token grant authenticates only possession of the bound refreshToken row and matching client_id, without verifying the confidential client's client_secret, allowing an attacker with a valid refresh_token to mint access tokens and rotated refresh tokens through /api/auth/oauth2/token or /api/auth/mcp/token. The @better-auth/oauth-provider package is not affected. This issue is fixed in version 1.6.11.

Affected packages & fixed versions

EcosystemPackageFixed inAdvisory
npmbetter-auth1.6.11GHSA-pw9m-5jxm-xr6h

Affected products (as reported)

VendorProductVersions
better-auth better-auth < 1.6.11

Weakness: CWE-287, CWE-306, CWE-345, CWE-863 · Vector: CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N

References