CyberRota Analysis
AI-GeneratedThe ash_authentication_oauth2_server is vulnerable to an allocation of resources without limits, allowing unauthenticated attackers to exhaust database storage and memory by exploiting the /authorize endpoint. By submitting valid documents at numerous distinct URLs, an attacker can create an unlimited number of client rows, leading to potential denial of service through resource exhaustion. Organizations using versions from 0.3.0 before 0.3.1 should prioritize patching this vulnerability to mitigate the risk of service disruption.
Public Exploit Signal
A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.
Note: these links are listed for security research and verification purposes only.
Original NVD Description
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.