Medium severity · published Sep 7, 2026
CVE-2026-82758
ash_authentication_oauth2_server treats an empty resolved secret as valid, opening the gated Dynamic Client Registration endpoint
6.3
CVSS
0.7%
EPSS
No
On KEV
Description
Improper Authentication vulnerability in ash-project ash_authentication_oauth2_server allows an unauthenticated attacker to register OAuth clients even when Dynamic Client Registration is gated by an initial access token.
resolve_secret/3 in AshAuthentication.Oauth2Server (reached through __resolve_secret__!) treated any return other than {:ok, _} or :error from a configured {module, function, args} or 2-arity-function secret provider as a valid secret, wrapping nil, false, or "" as {:ok, value}. When the initial_access_token resolves to such an empty value, POST /oauth/register compares the presented bearer token against it and the comparison passes with no token supplied, so registration is open although it was configured closed. The same fail-open affected other resolved secrets such as signing_secret.
This issue affects ash_authentication_oauth2_server: from 0.1.0 before 0.3.1.
Exploitation
Is it being used?
Exploit prediction (EPSS)0.7% · higher than 53% of CVEs
Exploited in the wildNo evidence yet
CISA KEVNot listed
Ransomware campaign useNot known
Affected products
Which versions
AS
ash_authentication_oauth2_server · ash-project
0.1.0 before 0.3.1; 855b578037c5ded18e8a6e60f42e56bde4905fae before 30a87101871775d27d79f9ad6f29eafa4779e118 · source: vendor
Affected product
AS
ash_authentication_oauth2_server
ash-project
References
NVD
https://nvd.nist.gov/vuln/detail/CVE-2026-82758
CVE.org
https://www.cve.org/CVERecord?id=CVE-2026-82758
cna.erlef.org
https://cna.erlef.org/cves/CVE-2026-82758.html
github.com
https://github.com/ash-project/ash_authentication_oauth2_server/commit/30a87101871775d27d79f9ad6f29eafa4779e118
github.com
https://github.com/ash-project/ash_authentication_oauth2_server/security/advisories/GHSA-fxc6-vp68-87pw
osv.dev
https://osv.dev/vulnerability/EEF-CVE-2026-82758
More from ash_authentication_oauth2_server
8.2
CVE-2026-82753
Unauthenticated authorize requests create unbounded, never-expiring CIMD client rows and cache entries in ash_authentication_oauth2_server
6.3
CVE-2026-82757
ash_authentication_oauth2_server CIMD fetcher classifies IPv4-in-IPv6 and site-local addresses as public, allowing SSRF
6.3
CVE-2026-82756
ash_authentication_oauth2_server interpolates a tenant-derived value into the WWW-Authenticate challenge without escaping, allowing header parameter injection
6.3
CVE-2026-82755
ash_authentication_oauth2_server serves tenant-specific OAuth metadata as publicly cacheable without Vary, enabling cross-tenant confusion
6.3
CVE-2026-82754
ash_authentication_oauth2_server aliases every protocol endpoint under /.well-known, bypassing path-scoped controls
