Vulnerability · Published Jul 15, 2026 · Assigned by GitHub_M
CVE-2026-53517Better Auth OAuth Provider: Refresh Token Rotation Race Condition Allows Concurrent Replay and Token Family Forking
High 8.1
In plain English
A high-severity race condition 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.4% (higher than 37% of all known vulnerabilities). Fixed versions are available - upgrade the affected package.
Official description
Better Auth is an authentication and authorization library for TypeScript. From 1.4.8-beta.7 until 1.6.11, the @better-auth/oauth-provider POST /oauth2/token endpoint on the refresh_token grant performs a non-atomic read, validate, revoke, and mint sequence on the oauthRefreshToken row, allowing concurrent requests with the same parent refresh token to pass the revoked check and create forked refresh-token families; the vulnerable range also includes embedded better-auth plugin versions before 1.6.0. This issue is fixed in version 1.6.11.
Affected packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| npm | @better-auth/oauth-provider | 1.6.11 | GHSA-392p-2q2v-4372 |
| npm | better-auth | 1.6.0 | GHSA-392p-2q2v-4372 |
Affected products (as reported)
| Vendor | Product | Versions |
|---|---|---|
| better-auth | better-auth | >= 1.4.8-beta.7, < 1.6.0 |
| @better-auth | oauth-provider | >= 1.6.0, < 1.6.11 |
Weakness: CWE-362, CWE-367 · Vector: CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:N