Impact
A flaw in Node.js HMAC verification performs a non‑constant‑time comparison when validating user-supplied signatures, leaking timing information proportional to the number of matching bytes. This timing side channel can be used as a timing oracle to infer the correct HMAC value byte by byte. The weakness corresponds to a classic timing attack, identified as CWE‑208.
Affected Systems
Node.js releases 20.x, 22.x, 24.x, and 25.x are affected. Deployments that run any of these major versions and perform HMAC verification on externally supplied data are potentially vulnerable until remedied.
Risk and Exploitability
The CVSS score of 5.9 indicates a moderate severity, and the EPSS score of less than 1% suggests a low likelihood of exploitation. The vulnerability is not listed in the CISA KeV catalog. Exploitation requires an attacker to be able to make high‑resolution timing measurements against an endpoint that accepts signed data; this is inferred from the description and would typically require remote network access or a controlled environment where timing can be accurately captured. While the probability of successful exploitation is considered low, a successful attack could reveal protected data by reconstructing HMAC values.
OpenCVE Enrichment
Debian DSA