Brute Force Affecting @better-auth/drizzle-adapter package, versions >=1.6.17 <1.7.7


Severity

Recommended
0.0
medium
0
10

CVSS assessment by Snyk's Security Team. Learn more

Threat Intelligence

EPSS
0.22% (12th percentile)

Do your applications use this vulnerable package?

In a few clicks we can analyze your entire application and see what components are vulnerable in your application, and suggest you quick fixes.

Test your applications

Snyk Learn

Learn about Brute Force vulnerabilities in an interactive lesson.

Start learning
  • Snyk IDSNYK-JS-BETTERAUTHDRIZZLEADAPTER-21181301
  • published18 Oct 2026
  • disclosed15 Oct 2026
  • creditMichał Ordon

Introduced: 15 Oct 2026

NewCVE-2026-110861  (opens in a new tab)
CWE-307  (opens in a new tab)

How to fix?

Upgrade @better-auth/drizzle-adapter to version 1.7.7 or higher.

Overview

@better-auth/drizzle-adapter is a Drizzle adapter for Better Auth

Affected versions of this package are vulnerable to Brute Force via a race condition in the compare-and-swap UPDATE path in drizzle-adapter.ts and relations-v2/index.ts. Under PostgreSQL's READ COMMITTED isolation, the WHERE guard used to identify the target row was placed only in a subquery (id IN (targetIds)), which PostgreSQL does not re-evaluate after waiting on a concurrent writer. As a result, multiple concurrent UPDATE operations can all succeed once the first writer commits, allowing a second (or later) writer to overwrite a row even when the original guard condition is no longer satisfied. An attacker who can issue concurrent write requests can exploit this window to corrupt or overwrite record state they should not be able to modify.

CVSS Base Scores

version 4.0
version 3.1