p PatchFirst

PatchFirst · Свежие уязвимости

Уязвимости better-auth

За последние 30 дней в better-auth опубликовано уязвимостей: 4; в каталоге KEV: 0.

Фильтры уязвимостей
Сбросить фильтры

Уязвимостей: 26

  1. CVE-2026-110864

    Критический · CVSS 9.1EPSS 0,29%Есть исправление

    Better Auth 1.5.0-beta.12 before 1.7.7 Authentication Bypass via OAuth Proxy

    Better Auth from 1.5.0-beta.12 before 1.7.7 contains an authentication bypass vulnerability in the OAuth Proxy plugin that allows unauthenticated attackers to sign in as other users by forging encrypted profiles. When the proxy shares the global secret and cookie-stored state is used, attackers can obtain encrypted state for a fake profile with a victim's verified email to take over the account via implicit linking.

    • Обновитесь до 1.7.7
    Опубликовано Обновлено
  2. CVE-2026-110862

    Критический · CVSS 9.3EPSS 0,32%Есть исправление

    Better Auth 1.4.0-beta.18 before 1.7.7 Authentication Bypass via Magic Link

    Better Auth from 1.4.0-beta.18 before 1.7.7 contains an authentication bypass vulnerability that allows unauthenticated attackers to sign in as other users by reusing OAuth state values as Magic Link tokens. Attackers can start an OAuth sign-in with a victim's email and submit the returned state to Magic Link verification, gaining sessions or creating falsely email-verified accounts.

    • Обновитесь до 1.7.7
    Опубликовано Обновлено
  3. CVE-2026-110861

    Средний · CVSS 6.3EPSS 0,22%Есть исправление

    Better Auth drizzle-adapter 1.6.17 before 1.7.7 Rate Limit Bypass via Race Condition

    Better Auth @better-auth/drizzle-adapter and better-auth from 1.6.17 before 1.7.7, and @better-auth/kysely-adapter from 1.6.17 before 1.7.0, contain a race condition in database-backed rate limiting on PostgreSQL where the limit check is not atomic with the counter update. Remote attackers can send bursts of concurrent requests that pass the check together, exceeding configured limits on password sign-in, two-factor verification, one-time code, password reset, and other rate-limited endpoints.

    • Обновитесь до 1.7.7
    Опубликовано Обновлено
  4. CVE-2026-109346

    Высокий · CVSS 8.5EPSS 0,28%Есть исправление

    better-auth 1.3.8-beta.3 before 1.7.0-rc.3 Device Authorization Phishing via /device

    better-auth from 1.3.8-beta.3 before 1.7.0-rc.3 contains a UI misrepresentation vulnerability in the deviceAuthorization plugin because GET /device omits the requesting client_id and scope. Attackers can start a device request via /device/code, trick signed-in users into approving the code, then redeem it at /device/token for a live session token.

    • Обновитесь до 1.7.0-rc.3
    Опубликовано Обновлено
  5. CVE-2025-71401

    Критический · CVSS 9.3EPSS 0,46%Есть исправление

    better-auth before 1.4.2 basePath Modification DoS

    better-auth (npm) before 1.4.2 allows an external request to configure baseURL when it is not otherwise defined (e.g., BETTER_AUTH_URL is unset). An attacker able to make the very first request to the server after startup can poison the router's base path, causing all routes to return 404 for all users (denial of service). The issue is not reachable when baseURL is explicitly configured or on typical managed hosting platforms.

    • Обновитесь до 1.4.2
    Опубликовано Обновлено
  6. CVE-2025-71399

    Высокий · CVSS 8.8EPSS 0,52%Есть исправление

    Better Auth before 1.4.5 Path Normalization Bypass via rou3

    Better Auth relies on better-call, which uses the rou3 router library. In affected versions of rou3, paths are normalized by removing empty segments, so /path, //path, and ///path resolve to the same route. In Better Auth versions prior to 1.4.5 (which bundles the fixed rou3), this can allow attackers to bypass disabledPaths configuration and path-based rate limits by submitting requests with extra slashes in the URL path. The issue does not apply in deployments where the proxy or platform normalizes URLs by collapsing multiple slashes.

    • Обновитесь до 1.4.5
    Опубликовано Обновлено
  7. CVE-2026-67336

    Критический · CVSS 9.4EPSS 0,24%Есть исправление

    better-auth before 1.6.11 Insecure Cryptographic Defaults via oidcProvider

    better-auth versions before 1.6.11 contain insecure cryptographic defaults in the oidcProvider and mcp plugins that advertise the none algorithm and accept plain PKCE by default. Attackers can exploit algorithm negotiation to accept unsigned tokens or intercept authorization codes when PKCE plain is used instead of the required S256 method.

    • Обновитесь до 1.6.11
    Опубликовано Обновлено
  8. CVE-2026-67333

    Средний · CVSS 5.1EPSS 0,26%Есть исправление

    better-auth before 1.6.13 Stored XSS via javascript redirect_uri

    better-auth before 1.6.13 (and pre-release builds 1.7.0-beta.0 through 1.7.0-beta.3) fail to validate the scheme of redirect_uris registered via the deprecated oidc-provider plugin and the mcp plugin (which wraps the same provider). An attacker can register an OAuth client with a javascript: redirect_uri, which the authorization server later returns unchanged in the consent response. If the deployment's consent page navigates the browser to the returned redirectURI (e.g. assigning it to window.location.href), the attacker's JavaScript executes in the authorization-server origin, exposing the victim's session and enabling account takeover.

    • Обновитесь до 1.6.13
    • Обновитесь до 1.7.0-beta.4
    Опубликовано Обновлено
  9. CVE-2026-67334

    Средний · CVSS 5.1EPSS 0,32%Есть исправление

    better-auth Stale Sessions Persist After User Deletion

    better-auth versions before 1.6.11 fail to delete cached sessions when removing users via admin, anonymous, or SCIM endpoints when secondaryStorage is configured and storeSessionInDatabase is false. Attackers can reuse deleted user session tokens to maintain authentication for up to seven days after account deletion.

    • Обновитесь до 1.6.11
    Опубликовано Обновлено
  10. CVE-2025-71403

    Высокий · CVSS 7.1EPSS 0,34%Есть исправление

    better-auth before 1.1.20 Open Redirect via trustedOrigins Bypass

    better-auth versions before 1.1.20 contain a bypass vulnerability in trustedOrigins validation logic affecting absolute URLs and wildcard domains. Attackers can construct malicious callbackURL parameters that pass origin checks and trigger open redirects to steal sensitive tokens for account takeover.

    • Обновитесь до 1.1.21
    Опубликовано Обновлено
  11. CVE-2026-67337

    Высокий · CVSS 7.1EPSS 0,46%Есть исправление

    better-auth before 1.4.9 Two-Factor Authentication Bypass via session.cookieCache

    better-auth versions before 1.4.9 contain a two-factor authentication bypass vulnerability when session.cookieCache is enabled. Attackers with valid primary credentials can access authenticated routes without completing second-factor verification by exploiting premature session caching.

    • Обновитесь до 1.4.9
    Опубликовано Обновлено
  12. CVE-2025-71404

    Средний · CVSS 5.1EPSS 0,52%Есть исправление

    better-auth before 1.1.16 Reflected XSS via error parameter

    better-auth versions after v0.0.2 and before 1.1.16 contain a reflected cross-site scripting (XSS) vulnerability on the /api/auth/error page, where the value of the 'error' URL parameter is reflected as HTML without proper neutralization. An attacker who coerces a user into visiting a specially-crafted URL can execute arbitrary JavaScript in the context of the user's browser. The issue is fixed in version 1.1.16.

    • Обновитесь до 1.1.16
    Опубликовано Обновлено
  13. CVE-2026-67327

    Высокий · CVSS 8.7EPSS 0,43%Есть исправление

    better-auth before 1.6.22 Account Takeover via Magic-Link Email-OTP

    better-auth versions >= 1.1.3 and < 1.6.22 (and pre-release versions >= 1.7.0-beta.0 and < 1.7.0-beta.10) are vulnerable to account takeover via pre-account hijacking on magic-link and email-OTP sign-in when open email/password registration is enabled. An attacker registers an account with the victim's email address and an attacker-chosen password; the account remains unverified. When the legitimate owner later signs in via the magic-link or email-OTP passwordless flow, the account is marked verified without removing the pre-existing password or revoking existing sessions, so the attacker's password remains valid, granting persistent access t

    • Обновитесь до 1.6.22
    • Обновитесь до 1.7.0-beta.10
    Опубликовано Обновлено
  14. CVE-2026-67335

    Средний · CVSS 6EPSS 0,28%Есть исправление

    better-auth before 1.6.2 OAuth State Validation Bypass

    better-auth versions before 1.6.2 fail to validate the OAuth state parameter against the stored nonce when using cookie-backed state storage without PKCE. Attackers can forge the state parameter and supply an attacker-controlled authorization code to create authenticated sessions bound to the attacker's external identity or persistently link attacker accounts to victim profiles.

    • Обновитесь до 1.6.2
    Опубликовано Обновлено
  15. CVE-2025-71402

    Низкий · CVSS 2EPSS 0,27%Есть исправление

    better-auth before 1.4.0 Session Revocation via Forged Cookie

    better-auth versions greater than 1.3.34 and before 1.4.0 contain a vulnerability in the multi-session plugin's /sign-out after-hook, which trusts raw multi-session cookies and forwards extracted values to internalAdapter.deleteSessions without verifying the cookie signature (e.g., via getSignedCookie). An attacker can supply a forged _multi-* cookie to trigger deletion of arbitrary session tokens.

    • Обновитесь до 1.4.0
    Опубликовано Обновлено
  16. CVE-2026-53517

    Высокий · CVSS 8.1EPSS 0,42%Есть исправление

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

    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.

    • Обновитесь до 1.6.0
  17. CVE-2026-45337

    Высокий · CVSS 7.6EPSS 0,21%Есть исправление

    Better Auth: Device authorization approve and deny accept any authenticated session while the user code is pending

    Better Auth is an authentication and authorization library for TypeScript. From 1.6.0 until 1.6.11, the deviceAuthorization plugin treats any authenticated session as the owner of any pending device code because GET /device does not claim the row and POST /device/approve and POST /device/deny short-circuit when userId is unset, allowing an authenticated attacker who learns a valid user_code to bind the polling device to the attacker's account or deny the legitimate flow. This issue is fixed in version 1.6.11.

    • Обновитесь до 1.6.11
  18. CVE-2026-53514

    Высокий · CVSS 7.7EPSS 0,2%Есть исправление

    Better Auth: Unauthorized invitation acceptance via unverified email match in organization plugin

    Better Auth is an authentication and authorization library for TypeScript. Prior to 1.6.11, and in 1.6.14 and later when invitation IDs can be obtained outside the invited mailbox and requireEmailVerificationOnInvitation: true is not enabled, the organization plugin's acceptInvitation, rejectInvitation, getInvitation, and listUserInvitations recipient endpoints use session.user.email and an invitation ID without sufficient verified-email ownership proof, allowing a user with an unverified session for the invited email address to accept an organization invitation after obtaining the invitation ID. This issue is fixed for the original default b

    • Обновитесь до 1.6.11
  19. CVE-2026-53512

    Критический · CVSS 9.1EPSS 0,27%Есть исправление

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

    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.

    • Обновитесь до 1.6.11
  20. CVE-2026-53518

    Высокий · CVSS 7.6EPSS 0,41%Есть исправление

    Better Auth OAuth Provider: Race Condition in Authorization Code Exchange Enables Multi-Use Code Redemption

    Better Auth is an authentication and authorization library for TypeScript. From 1.6.0 until 1.6.11, the @better-auth/oauth-provider POST /oauth2/token endpoint for the authorization_code grant redeems a single-use authorization code through a non-atomic find-then-delete sequence, allowing two concurrent requests to pass the read step and mint independent access tokens, refresh tokens, and ID tokens; legacy /oauth2/token and /mcp/token paths in oidc-provider and mcp plugins share the same primitive. This issue is fixed in version 1.6.11.

    • Обновитесь до 1.6.11

Проверьте свой сервер

Сопоставьте установленный стек и версии со свежими базами уязвимостей.

Проверьте свой сервер →