~ / search / GHSA-fm4g-76c9-7w69

GHSA-fm4g-76c9-7w69

Http4s: DigestAuth nonce map grows unbounded

Source: GitHub Advisory Database (reviewed) High CVE-2026-69208

Packages

EcosystemPackageAffectedFixed in
Maven org.http4s:http4s-ember-server_2.12 < 0.23.35 0.23.35
Maven org.http4s:http4s-ember-server_2.13 < 0.23.35 0.23.35
Maven org.http4s:http4s-ember-server_3 < 0.23.35 0.23.35
Maven org.http4s:http4s-ember-server_2.13 >= 1.0.0-M1, < 1.0.0-M47 1.0.0-M47
Maven org.http4s:http4s-ember-server_3 >= 1.0.0-M1, < 1.0.0-M47 1.0.0-M47

Details

As written in the advisory (Markdown source, shown as plain text).

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.

References

External links from the advisory. They lead to third-party sites.