Severity by source
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
Network unauthenticated (AV:N/PR:N/UI:N) but AC:H for the first-request race plus required unconfigured baseURL; impact is availability-only (A:H, C:N, I:N).
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
4Blast Radius
ecosystem impact- 4 npm packages depend on better-auth (3 direct, 1 indirect)
Ecosystem-wide dependent count for version 1.4.2.
DescriptionCVE.org
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.
Articles & Coverage 1
AnalysisAI
Denial of service in Better Auth (npm) before 1.4.2 lets an unauthenticated remote attacker poison the router's base path when baseURL is not explicitly configured. By sending the very first request after server startup with crafted X-Forwarded-Host and X-Forwarded-Proto headers, the attacker forces every subsequent auth route to return 404 for all users until restart. A working reproduction (curl commands) is published in the GHSA advisory, so publicly available exploit code exists; there is no CISA KEV listing and no public exploit identified as being used in active attacks.
Technical ContextAI
Better Auth is a framework-agnostic authentication library for Node.js/TypeScript applications, exposing its endpoints under a base path (typically /api/auth) derived from the configured baseURL. When baseURL is not set through configuration or the BETTER_AUTH_URL environment variable, the library falls back to reconstructing it from inbound request headers, implicitly trusting the X-Forwarded-Host and X-Forwarded-Proto values. getBaseURL() parses these into a URL object whose pathname then determines the router's basePath. Because the fallback caches the value derived from the first request, an attacker-controlled forwarded header set (e.g. Proto 'some:' and Host 'junk') corrupts the parsed pathname and the resulting basePath, after which the router can no longer match legitimate requests. The CWE-770 mapping (handling of a resource without proper limits or validation) captures the root cause loosely, though the more precise class is improper trust of client-supplied forwarded headers used to derive server routing state.
RemediationAI
Vendor-released patch: 1.4.2 - upgrade the better-auth npm dependency to 1.4.2 or later, which is the primary and complete fix (see GHSA-569q-mpph-wgww). If immediate upgrade is not possible, explicitly set baseURL in the Better Auth configuration or define the BETTER_AUTH_URL environment variable; doing so disables the vulnerable header-derived fallback entirely and is the most effective compensating control with essentially no downside for a correctly deployed service. Additionally, terminate the application behind a reverse proxy or load balancer that strips or overwrites client-supplied X-Forwarded-Host and X-Forwarded-Proto headers before they reach the app, so only trusted forwarded values are honored - note this must be enforced at the trusted proxy layer, since app-level trust of these headers is exactly what is abused. Managed hosting platforms that already fix the base URL are not affected.
A vulnerability in the NuPoint Unified Messaging (NPM) component of Mitel MiCollab through 9.8 SP1 FP2 (9.8.1.201) could
FortiOS and FortiProxy contain an authentication bypass via the Node.js websocket module allowing unauthenticated remote
Eval injection vulnerability in the internals.batch function in lib/batch.js in the bassmaster plugin before 1.5.2 for t
Flowise version 3.0.5 contains a remote code execution vulnerability in the CustomMCP node. The mcpServerConfig paramete
Node.js 8.5.0 before 8.6.0 allows remote attackers to access unintended files, because a change to ".." handling was inc
An issue was discovered in the node-serialize package 0.0.4 for Node.js. Rated critical severity (CVSS 9.8), this vulner
Directory traversal vulnerability in the st module before 0.2.5 for Node.js allows remote attackers to read arbitrary fi
Multiple SQL injection vulnerabilities in the Manage Accounts page in the AccountManagement.asmx service in the Solarwin
The JS-YAML module before 2.0.5 for Node.js parses input without properly considering the unsafe !!js/function tag, whic
Directory traversal vulnerability in lib/app/index.js in Geddy before 13.0.8 for Node.js allows remote attackers to read
Credential-harvesting malware compromised 84 versions of 42 TanStack npm packages on 2026-05-11 via chained GitHub Actio
Eval injection vulnerability in index.js in the syntax-error package before 1.1.1 for Node.js 0.10.x, as used in IBM Rat
Same technique Denial Of Service
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2025-210592
GHSA-3q45-2fh7-66cj