Skip to content
OpenAdvisories
High · 8.1 CVE-2026-53517 EUVD-2026-44745GHSA-392p-2q2v-4372

Better Auth OAuth Provider: Refresh Token Rotation Race Condition Allows Concurrent Replay and Token Family Forking

Published Jul 15, 2026 · Updated Jul 15, 2026 · Assigned by GitHub_M

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 products

VendorProductAffectedFixed
better-auth better-auth >= 1.4.8-beta.7, < 1.6.0 —
@better-auth oauth-provider >= 1.6.0, < 1.6.11 —

Affected packages

EcosystemPackageAffectedFixedRecord
npm @better-auth/oauth-provider >= 1.6.0, < 1.6.11 1.6.11 GHSA-392p-2q2v-4372
npm better-auth >= 1.4.8-beta.7, < 1.6.0 1.6.0 GHSA-392p-2q2v-4372

References