Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
ReconIdentify target app using better-auth ≤1.1.20
-
DeliveryCraft callbackURL bypassing trustedOrigins validation
-
ExploitDeliver phishing link to victim via email or message
-
InstallVictim clicks link triggering authenticated redirect
-
C2Application redirects with password-reset token to attacker domain
-
ExecuteAttacker captures token and resets victim password
-
ImpactFull account takeover achieved
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V3 - Web Frontend Security Redirect URL validation
MITRE ATT&CK
1 technique across 1 tactic: Initial Access The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | The targeted application must be running better-auth at version 1.1.20 or earlier. The application must expose a callback or redirect endpoint that accepts a dynamic callbackURL parameter - most commonly password-reset initiation or OAuth callback flows - where the library's trustedOrigins validation is the only guard on the redirect destination. The attacker must be able to reach the callback endpoint over the network (no authentication required). The victim must click a crafted link (passive user interaction required; fully automated exploitation without a victim action is not possible per UI:P). For account takeover to succeed rather than merely an open redirect, the redirect response must include a sensitive token such as a password-reset credential in the URL. Exploitation is limited to: applications where callbackURL is accepted as user-controlled input, platforms running Node.js with this npm package, and victims susceptible to phishing. |
| Impact | The CVSS 4.0 base score of 7.1 (AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:H/VA:N) accurately characterizes the risk profile. Exploitation is network-accessible with low complexity and no authentication requirement, but is gated by passive user interaction (UI:P) - the victim must click a phishing link. The high integrity impact (VI:H) reflects that successful exploitation yields account takeover, not merely a benign redirect. No EPSS score was provided in the available data. The vulnerability is not listed in the CISA KEV catalog and no public proof-of-concept has been identified, suggesting exploitation has not yet been observed at scale. Despite the meaningful CVSS score, the real-world risk is modulated by the phishing delivery requirement: exploitation demands social engineering, making mass automated exploitation unlikely. Organizations running password-reset or OAuth callback flows with better-auth should treat this as a meaningful priority given the account takeover potential, even without active exploitation evidence. |
| Exploit ScenarioDerived | An attacker identifies a target using better-auth before 1.1.21 with a password-reset flow and crafts a callbackURL parameter that exploits the wildcard or absolute URL bypass to pass trustedOrigins validation while resolving to an attacker-controlled domain. The attacker emails the victim a password-reset link containing this malicious callbackURL. When the victim clicks the link, the application validates the URL (incorrectly permitting it), performs the redirect with the password-reset token appended, and the attacker's server captures the token and immediately uses it to reset the victim's password and seize the account. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 01, 2026
Open redirect in the better-auth npm authentication library before version 1.1.21 enables one-click account takeover when a victim follows a crafted link. The trustedOrigins validation logic - responsible for gatekeeping callbackURL parameters - contains bypass flaws in both its absolute URL matching and wildcard domain pattern handling, allowing an attacker-supplied URL to pass origin checks and redirect victims to an attacker-controlled destination. Because callback redirects in authentication flows commonly carry sensitive tokens such as password-reset credentials, a successful redirect exfiltrates those tokens and allows full account compromise. No public exploit or CISA KEV listing has been identified at time of analysis.
RemediationAI
Upgrade better-auth to version 1.1.21 or later, which contains the fix committed at https://github.com/better-auth/better-auth/commit/b381cac7aafd6aa53ef78b6ab771ebfa24643c80. The vendor advisory is at https://github.com/better-auth/better-auth/security/advisories/GHSA-vp58-j275-797x. If immediate upgrade is not feasible, the most effective compensating control is to replace dynamic callbackURL parameters with server-side hard-coded redirect targets, eliminating attacker influence over redirect destinations entirely - note this may break OAuth flows that depend on dynamic callback registration. Additionally, implement server-side allowlist enforcement at the application layer (independent of the library) that rejects any callbackURL not exactly matching a known-safe URI. Monitoring authentication endpoint logs for redirect parameters containing external domains can surface exploitation attempts.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in npm
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
better-auth (CPE: cpe:2.3:a:better-auth:better-auth:*:*:*:*:*:*:*:*) is an open-source authentication framework distributed via npm, designed for Node.js applications. It implements its own trusted-origin validation to prevent callers from supplying arbitrary redirect destinations in callbackURL parameters - a common pattern in password-reset and OAuth callback flows. CWE-601 (URL Redirection to Untrusted Site / Open Redirect) describes the root cause: the validation logic does not sufficiently normalize or sanitize input URLs before comparing them against the configured trustedOrigins list, allowing specially crafted URLs to satisfy checks while still resolving to an untrusted destination. The flaw manifests in two distinct paths: the absolute URL comparison logic and the wildcard domain pattern matching, meaning defensive configurations relying on either mechanism are bypassed.
Know when Open Redirect gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:P/VC:L/VI:H/VA:N/SC:N/SI:N/SA:N
Network-delivered, unauthenticated, low complexity, but requires victim click (UI:R); integrity high due to account takeover; confidentiality low for token exposure; no scope change.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
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.
Executive ViewAI
better-auth npm library versions before 1.1.21 contain an open redirect vulnerability in authentication callback URL validation that enables one-click account takeover. Attackers can craft malicious links that redirect users to attacker-controlled sites, exfiltrating password-reset tokens and enabling full account compromise. Organizations using better-auth must urgently inventory their deployment scope and apply the available patch.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
More in Open Redirect
View allA malicious third-party can give a crafted "ssh://..." URL to an unsuspecting victim, and an attempt to visit the URL ca
GFI Kerio Control versions 9.2.5 through 9.4.5 contain an HTTP response splitting vulnerability in the dest parameter of
PHP through 7.0.8 does not attempt to address RFC 3875 section 4.1.18 namespace conflicts and therefore does not protect
Multiple open redirect vulnerabilities in Apache Struts 2.0.0 through 2.3.15 allow remote attackers to redirect users to
When the default servlet in Apache Tomcat versions 9.0.0.M1 to 9.0.11, 8.5.0 to 8.5.33 and 7.0.23 to 7.0.90 returned a r
Open redirect vulnerability in age-verification.php in the Age Verification plugin 0.4 and earlier for WordPress allows
Open redirect vulnerability in Kaseya Virtual System Administrator (VSA) 7.x before 7.0.0.29, 8.x before 8.0.0.18, 9.0 b
Vulnerability in the Oracle Applications Framework component of Oracle E-Business Suite (subcomponent: Popup windows (li
Unspecified vulnerability in the Oracle Application Server Single Sign-On component in Oracle Fusion Middleware 10.1.4.3
Flarum is open source discussion platform software. Rated medium severity (CVSS 6.5), this vulnerability is remotely exp
Open redirect vulnerability in Novius OS 5.0.1 (Elche) allows remote attackers to redirect users to arbitrary web sites
Open redirect vulnerability in the Redirect function in stageshow_redirect.php in the StageShow plugin before 5.0.9 for
EUVD-2025-210582
GHSA-g2jv-pgqw-qxhv
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB