CVE-2026-21713
5.9
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:N/A:N
Summary
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.
Affected Software
| Vendor | Product | Version Range | Status |
|---|---|---|---|
| nodejs | node | 20.20.1 <= 20.20.1 | affected |
| nodejs | node | 22.22.1 <= 22.22.1 | affected |
| nodejs | node | 24.14.0 <= 24.14.0 | affected |
| nodejs | node | 25.8.1 <= 25.8.1 | affected |
| nodejs | node | 4.0 < 4.* | affected |
| nodejs | node | 5.0 < 5.* | affected |
| nodejs | node | 6.0 < 6.* | affected |
| nodejs | node | 7.0 < 7.* | affected |
| nodejs | node | 8.0 < 8.* | affected |
| nodejs | node | 9.0 < 9.* | affected |
| nodejs | node | 10.0 < 10.* | affected |
| nodejs | node | 11.0 < 11.* | affected |
| nodejs | node | 12.0 < 12.* | affected |
| nodejs | node | 13.0 < 13.* | affected |
| nodejs | node | 14.0 < 14.* | affected |
| nodejs | node | 15.0 < 15.* | affected |
| nodejs | node | 16.0 < 16.* | affected |
| nodejs | node | 17.0 < 17.* | affected |
| nodejs | node | 18.0 < 18.* | affected |
| nodejs | node | 19.0 < 19.* | affected |
Weaknesses
ADP Enrichment
CISA ADP Vulnrichment
- SSVC:
- Exploitation: none
- Automatable: yes
- Technical Impact: partial
References
Feedback
Was this page helpful?
Glad to hear it! Please tell us how we can improve.
Sorry to hear that. Please tell us how we can improve.