CVE-2026-82753
nicheUnauthenticated resource-exhaustion DoS in ash_authentication_oauth2_server
CVE-2026-82753 is an unauthenticated denial-of-service flaw (CWE-770, allocation without limits) in the ash_authentication_oauth2_server Elixir package. When Client ID Metadata Documents (CIMD) are enabled, any unauthenticated request to the /authorize endpoint with a new URL-shaped client_id causes the server to fetch and permanently store a client row, with no cap on row count, no expiry or garbage collection, and no bound on field lengths; rejected documents were also cached before validation, holding memory until TTL expiry. An attacker can therefore drive unbounded growth of database storage and memory by supplying valid documents at many distinct URLs, eventually exhausting resources and taking the service down. Affected users are operators of Elixir/Ash applications running the oauth2_server extension in versions 0.3.0 up to (but not including) 0.3.1 with CIMD enabled. There is no known public proof-of-concept, the issue is not in CISA KEV, and EPSS puts 30-day exploitation probability at a low 0.4%.
What to do: Upgrade ash_authentication_oauth2_server to 0.3.1 or later. As interim mitigation, disable CIMD support or restrict which URLs are accepted as client_ids, and monitor database client-row growth and cache memory on internet-exposed /authorize endpoints. Verify in application configuration whether the OAuth2 server extension and CIMD are actually enabled, since deployments without CIMD are not exposed through this path.
| ash-project ash_authentication_oauth2_server | >= 0.3.0, < 0.3.1 |
Order-of-magnitude estimate by the model from install counts, market share and public scan data it knows; verify before quoting.
Allocation of Resources Without Limits or Throttling vulnerability in ash-project ash_authentication_oauth2_server allows an unauthenticated attacker to exhaust database storage and memory. The /authorize endpoint is unauthenticated by design. With Client ID Metadata Documents enabled, resolve_client/3 in AshAuthentication.Oauth2Server.CIMD fetches the document for each new URL-shaped client_id and upserts a client row, with no cap on the number of rows, no expiry or garbage collection, and no length bound on the fetched fields; the document was also placed in CIMD.Cache before validation, so even rejected documents held cache memory until their TTL. An attacker serving valid documents at many distinct URLs creates one permanent client row per URL, each able to carry multi-megabyte strings, growing storage and memory without bound. This issue affects ash_authentication_oauth2_server: from 0.3.0 before 0.3.1.
- Weakness
- CWE-770
- Vector
- CVSS:4.0/AV:N/AC:L/AT:P/PR:N/UI:N/VC:N/VI:N/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
In the news0 stories
No ingested article mentions this CVE yet.