CVE-2026-21713
Vulnerability Summary
Timeline
Description
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**.
CVSS Metrics
- v3.0•MEDIUM•Score: 5.9CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
EPSS Trends
Current EPSS score: 0.39%• Percentile: 32%
Techniques & Countermeasures
- CWE-208•Observable Timing Discrepancy
Two separate operations in a product require different amounts of time to complete, in a way that is observable to an actor and reveals security-relevant information about the state of the product, such as whether a particular operation was successful or not.
Affected Systems
- alpine•nodejs
< 22.22.2-r0 | < 22.22.2-r0 | < 24.14.1-r0 | < 24.14.1-r0
- chainguard•nodejs-16
all
- chainguard•nodejs-18
all
- chainguard•nodejs-21
all
- chainguard•nodejs-22
< 22.22.3-r0
- chainguard•nodejs-23
all
- wolfi•nodejs-16
all
- wolfi•nodejs-18
all
- wolfi•nodejs-21
all
- wolfi•nodejs-22
< 22.22.3-r0
- wolfi•nodejs-23
all
- debian•nodejs
< 18.20.4+dfsg-1~deb12u2 | < 20.19.2+dfsg-1+deb13u2 | < 22.22.2+dfsg+~cs22.19.15-1
- nodejs•node
20.20.1 | 22.22.1 | 24.14.0 | 25.8.1 | ≥ 4.0, < 4.* | ≥ 5.0, < 5.* | ≥ 6.0, < 6.* | ≥ 7.0, < 7.* | ≥ 8.0, < 8.* | ≥ 9.0, < 9.* | ≥ 10.0, < 10.* | ≥ 11.0, < 11.* | ≥ 12.0, < 12.* | ≥ 13.0, < 13.* | ≥ 14.0, < 14.* | ≥ 15.0, < 15.* | ≥ 16.0, < 16.* | ≥ 17.0, < 17.* | ≥ 18.0, < 18.* | ≥ 19.0, < 19.*
- nodejs•node.js
≤ 20.20.1 | ≥ 22.0.0, ≤ 22.22.1 | ≥ 24.0.0, ≤ 24.14.0 | ≥ 25.0.0, ≤ 25.8.1
References (5)
- https://nodejs.org/en/blog/vulnerability/march-2026-security-releases
- https://security-tracker.debian.org/tracker/CVE-2026-21713
- https://security.alpinelinux.org/vuln/CVE-2026-21713
- https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/21xxx/CVE-2026-21713.json
- https://nvd.nist.gov/vuln/detail/CVE-2026-21713