CVE-2026-21710
7.5
CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Summary
A flaw in Node.js HTTP request handling causes an uncaught TypeError when a request is received with a header named __proto__ and the application accesses req.headersDistinct.
When this occurs, dest["__proto__"] resolves to Object.prototype rather than undefined, causing .push() to be called on a non-array. This exception is thrown synchronously inside a property getter and cannot be intercepted by error event listeners, meaning it cannot be handled without wrapping every req.headersDistinct access in a try/catch.
- This vulnerability affects all Node.js HTTP servers on 20.x, 22.x, 24.x, and v25.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
Node.js: Node.js: Denial of Service due to crafted HTTP __proto__ header
Additional References
- https://access.redhat.com/security/cve/CVE-2026-21710
- https://bugzilla.redhat.com/show_bug.cgi?id=2453151
- https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-21710.json
- https://access.redhat.com/errata/RHSA-2026:7310
- https://access.redhat.com/errata/RHSA-2026:7080
- https://access.redhat.com/errata/RHSA-2026:7675
- https://access.redhat.com/errata/RHSA-2026:8339
- https://access.redhat.com/errata/RHSA-2026:7123
- https://access.redhat.com/errata/RHSA-2026:7670
- https://access.redhat.com/errata/RHSA-2026:9711
- https://access.redhat.com/errata/RHSA-2026:9874
- https://access.redhat.com/errata/RHSA-2026:7983
- https://access.redhat.com/errata/RHSA-2026:7896
- https://access.redhat.com/errata/RHSA-2026:7302
- https://access.redhat.com/errata/RHSA-2026:7350
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.