A flaw in Node.js HMAC verification uses a non-constant...
Moderate severity
Unreviewed
Published
Mar 30, 2026
to the GitHub Advisory Database
•
Updated Mar 30, 2026
Description
Published by the National Vulnerability Database
Mar 30, 2026
Published to the GitHub Advisory Database
Mar 30, 2026
Last updated
Mar 30, 2026
A flaw in Node.js HMAC verification uses a non-constant-time comparison when validating user-provided signatures, potentially leaking timing information proportional to the number of matching bytes. Under certain threat models where high-resolution timing measurements are possible, this behavior could be exploited as a timing oracle to infer HMAC values.
Node.js already provides timing-safe comparison primitives used elsewhere in the codebase, indicating this is an oversight rather than an intentional design decision.
This vulnerability affects 20.x, 22.x, 24.x, and 25.x.
References