Impact
The vulnerability arises from insecure cryptographic defaults in the oidcProvider and mcp plugins of better-auth. The provider advertises the "none" algorithm and accepts plain PKCE by default, allowing attackers to negotiate an unsigned token or intercept authorization codes when the weaker S256 method is not enforced. This flaw permits authentication bypass and potential session hijacking by the attacker, as it can accept tampered or fabricated tokens without proper verification. The weakness is classified as CWE‑327, highlighting the use of weakened cryptography.
Affected Systems
v1.6.10 and earlier versions of the better‑auth OAuth provider for Node.js are affected. Any deployment running a pre‑1.6.11 release is vulnerable. The issue is present across all environments that expose the OAuth provider endpoints.
Risk and Exploitability
The severity is high, with a CVSS score of 9.4, and no EPSS data is available, suggesting a low but unquantified exploitation probability. It is not currently listed in the CISA KEV catalog. The likely attack vector involves remote exploitation via the OAuth endpoints, where an attacker can craft requests that force the provider to accept unauthenticated or tampered tokens. Successful exploitation could give an attacker unauthorized access to protected resources or the ability to impersonate users.
OpenCVE Enrichment