GHSA-mmpq-5hcv-hf2v

Parse Server has a login timing side-channel reveals user existence

En bref

Publiée
Mise à jour
CVE
CVE-2026-39321
Alias
BIT-parse-2026-39321
CVSS_V3
CVSS:3.1/AV:N/AC:H/PR:N/UI:N/S:U/C:L/I:N/A:N
CVSS_V4
CVSS:4.0/AV:N/AC:H/AT:P/PR:N/UI:N/VC:L/VI:N/VA:N/SC:N/SI:N/SA:N

Description

### Impact The login endpoint response time differs measurably depending on whether the submitted username or email exists in the database. When a user is not found, the server responds immediately. When a user exists but the password is wrong, a bcrypt comparison runs first, adding significant latency. This timing difference allows an unauthenticated attacker to enumerate valid usernames. ### Patches A dummy bcrypt comparison is now performed when no user is found, normalizing response timing regardless of user existence. Additionally, accounts without a stored password (e.g. OAuth-only) now also run a dummy comparison to prevent the same timing oracle. ### Workarounds Configure rate limiting on the login endpoint to slow automated enumeration. This reduces throughput but does not eliminate the timing signal for individual requests.

Paquets affectés

PaquetVersions
npm · parse-serverintroduced 9.0.0, fixed 9.8.0-alpha.6
npm · parse-serverintroduced 0, fixed 8.6.74

Références

Sources

SourceLicence
OSV.devCC-BY 4.0 — GitHub Advisory Database