Vulnerability · Published Mar 30, 2026 · Assigned by hackerone
CVE-2026-21710
High 7.5
In plain English
A high-severity resource allocation without limits in node from nodejs. There are no confirmed reports of exploitation so far. The chance it is exploited in the next 30 days is estimated at 25.4% (higher than 98% of all known vulnerabilities). Ready-made attack tooling exists: public proof-of-concept code. Fixed versions are available - upgrade the affected package.
Official description
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 packages & fixed versions
| Ecosystem | Package | Fixed in | Advisory |
|---|---|---|---|
| AlmaLinux:8 | nodejs | 1:20.20.2-1.module_el8.10.0+4165+3f200bda | ALSA-2026:8339 |
| AlmaLinux:8 | nodejs | 1:22.22.2-1.module_el8.10.0+4158+e796f37f | ALSA-2026:7123 |
| AlmaLinux:8 | nodejs | 1:24.14.1-2.module_el8.10.0+4160+4819ac42 | ALSA-2026:7670 |
| AlmaLinux:9 | nodejs | 1:20.20.2-1.module_el9.7.0+226+88d36870 | ALSA-2026:7896 |
| AlmaLinux:9 | nodejs | 1:24.14.1-2.module_el9.7.0+222+ef1c61e1 | ALSA-2026:7350 |
| AlmaLinux:8 | nodejs-devel | 1:24.14.1-2.module_el8.10.0+4160+4819ac42 | ALSA-2026:7670 |
| AlmaLinux:8 | nodejs-devel | 1:22.22.2-1.module_el8.10.0+4158+e796f37f | ALSA-2026:7123 |
| AlmaLinux:8 | nodejs-devel | 1:20.20.2-1.module_el8.10.0+4165+3f200bda | ALSA-2026:8339 |
| AlmaLinux:9 | nodejs-devel | 1:24.14.1-2.module_el9.7.0+222+ef1c61e1 | ALSA-2026:7350 |
| AlmaLinux:9 | nodejs-devel | 1:20.20.2-1.module_el9.7.0+226+88d36870 | ALSA-2026:7896 |
| AlmaLinux:9 | nodejs-devel | 1:20.20.2-1.module_el9.7.0+224+0af7cc6b | ALSA-2026:7896 |
| AlmaLinux:10 | nodejs-docs | 1:22.22.2-1.el10_1 | ALSA-2026:7080 |
| AlmaLinux:8 | nodejs-docs | 1:24.14.1-2.module_el8.10.0+4160+4819ac42 | ALSA-2026:7670 |
| AlmaLinux:8 | nodejs-docs | 1:22.22.2-1.module_el8.10.0+4158+e796f37f | ALSA-2026:7123 |
| AlmaLinux:8 | nodejs-docs | 1:20.20.2-1.module_el8.10.0+4165+3f200bda | ALSA-2026:8339 |
| AlmaLinux:9 | nodejs-docs | 1:20.20.2-1.module_el9.7.0+224+0af7cc6b | ALSA-2026:7896 |
| AlmaLinux:9 | nodejs-docs | 1:24.14.1-2.module_el9.7.0+222+ef1c61e1 | ALSA-2026:7350 |
| AlmaLinux:8 | nodejs-full-i18n | 1:22.22.2-1.module_el8.10.0+4158+e796f37f | ALSA-2026:7123 |
| AlmaLinux:8 | nodejs-full-i18n | 1:20.20.2-1.module_el8.10.0+4165+3f200bda | ALSA-2026:8339 |
| AlmaLinux:8 | nodejs-full-i18n | 1:24.14.1-2.module_el8.10.0+4160+4819ac42 | ALSA-2026:7670 |
| AlmaLinux:9 | nodejs-full-i18n | 1:20.20.2-1.module_el9.7.0+226+88d36870 | ALSA-2026:7896 |
| AlmaLinux:9 | nodejs-full-i18n | 1:20.20.2-1.module_el9.7.0+224+0af7cc6b | ALSA-2026:7896 |
| AlmaLinux:9 | nodejs-full-i18n | 1:24.14.1-2.module_el9.7.0+222+ef1c61e1 | ALSA-2026:7350 |
| AlmaLinux:8 | nodejs-libs | 1:24.14.1-2.module_el8.10.0+4160+4819ac42 | ALSA-2026:7670 |
| AlmaLinux:8 | nodejs-libs | 1:22.22.2-1.module_el8.10.0+4158+e796f37f | ALSA-2026:7123 |
| AlmaLinux:9 | nodejs-libs | 1:24.14.1-2.module_el9.7.0+222+ef1c61e1 | ALSA-2026:7350 |
| AlmaLinux:8 | nodejs-nodemon | 3.0.3-1.module_el8.10.0+4061+f8ceeab9 | ALSA-2026:7670 |
| AlmaLinux:8 | nodejs-nodemon | 3.0.1-1.module_el8.10.0+3982+85c136aa | ALSA-2026:8339 |
| AlmaLinux:8 | nodejs-nodemon | 3.0.1-1.module_el8.10.0+4006+3c416519 | ALSA-2026:7123 |
| AlmaLinux:9 | nodejs-nodemon | 3.0.1-1.module_el9.5.0+125+8dc38870 | ALSA-2026:7896 |
| AlmaLinux:9 | nodejs-nodemon | 3.0.3-3.module_el9.7.0+209+ecf6523e | ALSA-2026:7350 |
| AlmaLinux:8 | nodejs-packaging | 2021.06-6.module_el8.10.0+4165+3f200bda | ALSA-2026:8339 |
| AlmaLinux:8 | nodejs-packaging | 2021.06-6.module_el8.10.0+4158+e796f37f | ALSA-2026:7123 |
| AlmaLinux:8 | nodejs-packaging | 2021.06-6.module_el8.10.0+4086+70facd4a | ALSA-2026:7670 |
| AlmaLinux:9 | nodejs-packaging | 2021.06-6.module_el9.7.0+209+ecf6523e | ALSA-2026:7350 |
| AlmaLinux:9 | nodejs-packaging | 2021.06-6.module_el9.7.0+226+88d36870 | ALSA-2026:7896 |
| AlmaLinux:8 | nodejs-packaging-bundler | 2021.06-6.module_el8.10.0+4165+3f200bda | ALSA-2026:8339 |
| AlmaLinux:8 | nodejs-packaging-bundler | 2021.06-6.module_el8.10.0+4158+e796f37f | ALSA-2026:7123 |
| AlmaLinux:8 | nodejs-packaging-bundler | 2021.06-6.module_el8.10.0+4086+70facd4a | ALSA-2026:7670 |
| AlmaLinux:9 | nodejs-packaging-bundler | 2021.06-6.module_el9.7.0+198+8bf605ba | ALSA-2026:7350 |
| AlmaLinux:9 | nodejs-packaging-bundler | 2021.06-6.module_el9.7.0+226+88d36870 | ALSA-2026:7896 |
| AlmaLinux:10 | nodejs24-docs | 1:24.14.1-2.el10_1 | ALSA-2026:7675 |
| AlmaLinux:10 | nodejs24-npm | 1:11.11.0-1.24.14.1.2.el10_1 | ALSA-2026:7675 |
| AlmaLinux:8 | npm | 1:10.8.2-1.20.20.2.1.module_el8.10.0+4165+3f200bda | ALSA-2026:8339 |
| AlmaLinux:8 | npm | 1:11.11.0-1.24.14.1.2.module_el8.10.0+4160+4819ac42 | ALSA-2026:7670 |
| AlmaLinux:8 | npm | 1:10.9.7-1.22.22.2.1.module_el8.10.0+4158+e796f37f | ALSA-2026:7123 |
| AlmaLinux:9 | npm | 1:10.8.2-1.20.20.2.1.module_el9.7.0+224+0af7cc6b | ALSA-2026:7896 |
| AlmaLinux:9 | npm | 1:10.8.2-1.20.20.2.1.module_el9.7.0+226+88d36870 | ALSA-2026:7896 |
| AlmaLinux:9 | npm | 1:11.11.0-1.24.14.1.2.module_el9.7.0+222+ef1c61e1 | ALSA-2026:7350 |
| AlmaLinux:8 | v8-12.4-devel | 3:12.4.254.21-1.22.22.2.1.module_el8.10.0+4158+e796f37f | ALSA-2026:7123 |
| AlmaLinux:8 | v8-13.6-devel | 3:13.6.233.17-1.24.14.1.2.module_el8.10.0+4160+4819ac42 | ALSA-2026:7670 |
| AlmaLinux:9 | v8-13.6-devel | 3:13.6.233.17-1.24.14.1.2.module_el9.7.0+222+ef1c61e1 | ALSA-2026:7350 |
| Alpine:v3.21 | nodejs | 22.22.2-r0 | ALPINE-CVE-2026-21710 |
| Alpine:v3.22 | nodejs | 22.22.2-r0 | ALPINE-CVE-2026-21710 |
| Alpine:v3.23 | nodejs | 24.14.1-r0 | ALPINE-CVE-2026-21710 |
| Alpine:v3.24 | nodejs | 24.14.1-r0 | ALPINE-CVE-2026-21710 |
| Debian:12 | nodejs | 18.20.4+dfsg-1~deb12u2 | DEBIAN-CVE-2026-21710 |
| Debian:13 | nodejs | 20.19.2+dfsg-1+deb13u2 | DSA-6183-1 |
| Debian:13 | nodejs | 20.19.2+dfsg-1+deb13u2 | DEBIAN-CVE-2026-21710 |
| Debian:14 | nodejs | 22.22.2+dfsg+~cs22.19.15-1 | DEBIAN-CVE-2026-21710 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.1-1.module+el8.10.0+1988+437f3d23 | RLSA-2026:8339 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.1-1.module+el8.10.0+1666+930e28e8 | RLSA-2026:7123 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.1-1.module+el8.9.0+1760+903d54b9 | RLSA-2026:7123 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.1-1.module+el8.10.0+1667+4a788d89 | RLSA-2026:7123 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.1-1.module+el8.10.0+1823+b5789597 | RLSA-2026:7123 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.1-1.module+el8.10.0+1924+614dc87f | RLSA-2026:7123 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.1-1.module+el8.10.0+1988+437f3d23 | RLSA-2026:7123 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.1-1.module+el8.10.0+1824+532140ee | RLSA-2026:7123 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.1-1.module+el8.10.0+1935+d3cbe60f | RLSA-2026:7123 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.1-1.module+el8.10.0+1989+e60144d9 | RLSA-2026:7123 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.3-1.module+el8.10.0+2084+ab509703 | RLSA-2026:7670 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.1-1.module+el8.10.0+1924+614dc87f | RLSA-2026:8339 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.1-1.module+el8.10.0+1935+d3cbe60f | RLSA-2026:8339 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.1-1.module+el8.10.0+1666+930e28e8 | RLSA-2026:8339 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.1-1.module+el8.10.0+1667+4a788d89 | RLSA-2026:8339 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.1-1.module+el8.10.0+1989+e60144d9 | RLSA-2026:8339 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.1-1.module+el8.9.0+1760+903d54b9 | RLSA-2026:8339 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.1-1.module+el8.10.0+1823+b5789597 | RLSA-2026:8339 |
| Rocky Linux:8 | nodejs-nodemon | 0:3.0.1-1.module+el8.10.0+1824+532140ee | RLSA-2026:8339 |
| Rocky Linux:9 | nodejs-nodemon | 0:3.0.1-1.module+el9.7.0+40022+9ecc286c | RLSA-2026:7896 |
| Rocky Linux:9 | nodejs-nodemon | 0:3.0.1-1.module+el9.7.0+40017+f0db1785 | RLSA-2026:7896 |
| Rocky Linux:9 | nodejs-nodemon | 0:3.0.1-1.module+el9.7.0+40018+a011993d | RLSA-2026:7896 |
| Rocky Linux:9 | nodejs-nodemon | 0:3.0.3-3.module+el9.7.0+40025+0e0cf6b2 | RLSA-2026:7350 |
| Rocky Linux:9 | nodejs-nodemon | 0:3.0.1-1.module+el9.7.0+40022+9ecc286c | RLSA-2026:7302 |
| Rocky Linux:9 | nodejs-nodemon | 0:3.0.1-1.module+el9.7.0+40017+f0db1785 | RLSA-2026:7302 |
| Rocky Linux:9 | nodejs-nodemon | 0:3.0.1-1.module+el9.7.0+40018+a011993d | RLSA-2026:7302 |
| Rocky Linux:8 | nodejs-packaging | 0:2021.06-6.module+el8.10.0+40048+6d99f608 | RLSA-2026:7670 |
| Rocky Linux:8 | nodejs-packaging | 0:2021.06-6.module+el8.10.0+40048+6d99f608 | RLSA-2026:7123 |
| Rocky Linux:8 | nodejs-packaging | 0:2021.06-6.module+el8.10.0+40048+6d99f608 | RLSA-2026:8339 |
| Rocky Linux:9 | nodejs-packaging | 0:2021.06-6.module+el9.7.0+40052+e32ea525 | RLSA-2026:7302 |
| Rocky Linux:9 | nodejs-packaging | 0:2021.06-6.module+el9.7.0+40052+e32ea525 | RLSA-2026:7350 |
| Rocky Linux:9 | nodejs-packaging | 0:2021.06-6.module+el9.7.0+40052+e32ea525 | RLSA-2026:7896 |
| Rocky Linux:10 | nodejs22 | 1:22.22.2-1.el10_1 | RLSA-2026:7080 |
| Rocky Linux:10 | nodejs24 | 1:24.14.1-2.el10_1 | RLSA-2026:7675 |
| Ubuntu:24.04:LTS | nodejs | no fix listed | UBUNTU-CVE-2026-21710 |
| Ubuntu:25.10 | nodejs | no fix listed | UBUNTU-CVE-2026-21710 |
| Ubuntu:26.04:LTS | nodejs | no fix listed | UBUNTU-CVE-2026-21710 |
| Ubuntu:26.10 | nodejs | no fix listed | UBUNTU-CVE-2026-21710 |
Affected products (as reported)
Weakness: CWE-770, CWE-843 · Vector: CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
References
- https://nodejs.org/en/blog/vulnerability/march-2026-security-releases
- https://access.redhat.com/security/cve/CVE-2026-21710 vdb-entry, x_refsource_REDHAT
- RHBZ#2453151 issue-tracking, x_refsource_REDHAT
- https://security.access.redhat.com/data/csaf/v2/vex/2026/cve-2026-21710.json x_sadp-csaf-vex
- https://access.redhat.com/errata/RHSA-2026:7310 vendor-advisory, x_refsource_REDHAT
- https://access.redhat.com/errata/RHSA-2026:7080 vendor-advisory, x_refsource_REDHAT
- https://access.redhat.com/errata/RHSA-2026:7675 vendor-advisory, x_refsource_REDHAT
- https://access.redhat.com/errata/RHSA-2026:8339 vendor-advisory, x_refsource_REDHAT
- https://access.redhat.com/errata/RHSA-2026:7123 vendor-advisory, x_refsource_REDHAT
- https://access.redhat.com/errata/RHSA-2026:7670 vendor-advisory, x_refsource_REDHAT
- https://access.redhat.com/errata/RHSA-2026:9711 vendor-advisory, x_refsource_REDHAT
- https://access.redhat.com/errata/RHSA-2026:9874 vendor-advisory, x_refsource_REDHAT
- https://access.redhat.com/errata/RHSA-2026:7983 vendor-advisory, x_refsource_REDHAT
- https://access.redhat.com/errata/RHSA-2026:7896 vendor-advisory, x_refsource_REDHAT
- https://access.redhat.com/errata/RHSA-2026:7302 vendor-advisory, x_refsource_REDHAT
- https://access.redhat.com/errata/RHSA-2026:7350 vendor-advisory, x_refsource_REDHAT