Horizon Alert
Summary of the vulnerability and why it matters
A critical vulnerability exists in the Better Auth library, an authentication and authorization tool for TypeScript applications. This issue allows unauthenticated attackers to bypass security controls and create or modify API keys for any user, potentially leading to complete account takeover and unauthorized access to user data and application functions. The main concern is confirming relevance and exposure.
- Unauthenticated attackers can hijack user accounts.
- Critical authentication bypass allows full access.
- Confirm if your applications are exposed.
Attack Path
How an attacker could exploit the issue
An unauthenticated attacker can exploit this by sending a request to the API key creation or update endpoint, including a target user's ID in the request body. This bypasses authentication checks, allowing the attacker to create or modify API keys for any user and gain full access to the application as that user.
- No authentication required to access endpoints.
- Triggered by crafting a request with a user ID.
- Grants full authenticated access as any user.
Live Threat
Current exploitation, exposure, and threat context
This vulnerability could allow an unauthenticated attacker to bypass authentication and create or modify API keys for any user. When no active session is present, the system may incorrectly use a user ID provided in the request body, circumventing security checks that normally occur when a session is active. This could lead to an attacker impersonating any user and performing actions with their privileges.
- API keys and user data at risk.
- Unauthenticated API requests.
- Unauthorized actions as any user.
Operational Fix
Recommended remediation, mitigation, and detection steps
This critical authentication bypass affects applications using the Better Auth library, potentially allowing unauthenticated attackers to create or modify API keys for any user. Given the nature of an authentication library, application owners and platform teams are likely responsible for its integration and maintenance. The first practical step is to identify all instances where this library is used, confirm their external reachability and business criticality, and then locate the accountable owner to prioritize remediation.
- Identify application owners and platform teams.
- Verify library usage and external exposure.
- Plan remediation based on confirmed risk.