Junglewise Threat Intelligence

CVE-2026-67336: better-auth versions before 1.6.11 contain insecure cryptographic defaults in the oidcProvider and mcp plugins that advertise the none algor

CVE-2026-67336 · Severity: high · CVSS 8.7 · Published 2026-08-01

Technologies: better-auth (npm). Vendors: npm, Better-Auth.

Executive brief

Better Auth is an authentication library used to manage login and user identity in web applications. The legacy oidcProvider plugin advertises support for unsigned tokens and allows weak password-protection methods by default, which could allow attackers to forge tokens or intercept authorization codes if users connect through compromised networks or untrusted proxies. Organizations using the affected versions should upgrade immediately or apply workarounds to disable these dangerous defaults.

Technical details

Better Auth's legacy oidcProvider and mcp plugins contain two cryptographic weaknesses: (1) the OIDC discovery document advertises "alg=none" in id_token_signing_alg_values_supported, allowing relying parties that perform algorithm negotiation without pinning to accept unsigned JWT tokens, and (2) plain PKCE (Proof Key for Authorization Code Exchange) is enabled by default instead of the required S256 method, leaving authorization codes unprotected if the authorization URL is exposed via referrer headers, browser history, or proxy logs. The vulnerable code path silently downgrades missing code_challenge_method parameters to "plain" before enforcement checks, contradicting the discovery document which claims only S256 is supported. This violates RFC 9700 (OAuth 2.1) which explicitly forbids plain PKCE. Attackers with network visibility can exploit the algorithm negotiation weakness to forge tokens, or exploit weak PKCE to intercept authorization codes. The replacement @better-auth/oauth-provider is unaffected; the fix (version 1.6.11+) removes "none" from metadata and defaults allowPlainCodeChallengeMethod to false.

Affected products

  • Better Auth better-auth < 1.6.11

Timeline

  • 2026-07-07: disclosed: GHSA-9h47-pqcx-hjr4 published; CVE-2026-67336 assigned
  • 2026-05-31: patched: Fixed in better-auth 1.6.11

References

Related threats