CVE-2026-88010
## Summary Traefik's BasicAuth middleware coalesces concurrent credential checks through a `singleflight.Group` to avoid hashing the same password many times at once. Since v3.6.11 the deduplication key was built from the submitted password plus the stored secret, so it depended on server state: a non-existent username collapsed onto one shared key while each configured username produced its own. Under attacker-controlled concurrency, a probe request arriving inside a leader request's in-flight window is served the leader's fast coalesced result when the username does not exist, but computes its own hash (slow) when the username exists — reintroducing, only in the concurrent case, the unauthenticated username-enumeration timing oracle that GHSA-g3hg-j4jv-cwfr had hardened for sequential probing. The fix derives the singleflight key from the submitted credentials (username and password) only, so it no longer depends on whether the account exists or on any stored secret. Traefik v2 is not affected: the v2.11 BasicAuth middleware does not use singleflight coalescing, and Digest authentication is not affected. The impact is limited to username enumeration; no credential disclosure or authentication bypass is possible. The vulnerability originates on the v3.6 line, which has reached end of life; users on v3.6 or earlier v3.x must upgrade to v3.7.13 to receive the fix. ## Patches - https://github.com/traefik/traefik/releases/tag/v3.7.13 ## For more information If you have any questions or comments about this advisory, please [open an issue](https://github.com/traefik/traefik/issues). <details> <summary>Original Description</summary> ## Summary Confirmed. `checkPassword` derives the `singleflight` key from the *stored secret*, so the key encodes whether the submitted username exists: - username absent, `secret == ""`, key `= len(P) + ":" + P` - username present, key `= len(P) + ":" + P + secret_T` Every non-existent username therefore lands on one shared key, wh
Properties
- ghsa_id
- GHSA-8fcf-v89g-xpg6
- severity
- medium
- summary
- Traefik: BasicAuth singleflight coalescing reintroduces an unauthenticated username-enumeration timing oracle
- cve_id
- CVE-2026-88010
- signal_observed_at
- 2026-09-23T04:35:56+00:00
- is_ghsa_only
- false
- ghsa_published
- 2026-09-22T20:40:49Z
- source_url
- https://github.com/advisories/GHSA-8fcf-v89g-xpg6
- ghsa_updated
- 2026-09-22T20:40:53Z
Related Entities (4)
VULNERABLE_TO (1)
AFFECTS (1)
HAS_WEAKNESS (1)
REPORTED_BY (1)
Explore deeper with Ninja Signal's threat intelligence graph