The `DigestAuth` server middleware's stale-nonce cleanup uses an inverted comparison: it removes *fresh* nonces and stops at the first *stale* one. Because a new nonce is created for every unauthenticated challenge, an attacker can drive the nonce map to grow without bound until the JVM runs out of heap. ## Impact Unauthenticated remote denial of service (gradual heap exhaustion / OOM) against any service using DigestAuth. The leak is persistent. ## Preconditions - Application uses `DigestAuth` on at least one route. ## Workarounds - Front the DigestAuth protected routes with a rate limiter to slow the leak. - Restart periodically. ## Fixes - The eviction logic is corrected. - A max cache size of 1000000 is imposed to protected against a burst between evictions. This limit is not yet configurable.
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Get alerted for CVEs like this
Register your stack and get notified within minutes when a matching CVE drops.
Start monitoring free