mediumVulnerability

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)

[Software]go/Traefik

AFFECTS (1)

[Software]go/Traefik

HAS_WEAKNESS (1)

[Weakness]Observable Timing Discrepancy

REPORTED_BY (1)

[Source]GitHub Advisory Database

Explore deeper with Ninja Signal's threat intelligence graph

CVE-2026-88010 — Ninja Signal Threat Intelligence | Ninja Signal