← All CVEs

CVE-2026-21710

high · 7.5

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**

7.5
CVSS
25.0%
EPSS (exploit prob.)
98th
EPSS percentile
2026-03-30
Published

CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H

Weaknesses

CWE-770CWE-843

Affected products

VendorProductAffected versions
nodejsnode.js<= 20.20.1
nodejsnode.js>= 22.0.0, <= 22.22.1
nodejsnode.js>= 24.0.0, <= 24.14.0
nodejsnode.js>= 25.0.0, <= 25.8.1
redhatenterprise_linux8.0
redhatenterprise_linux9.0
redhatenterprise_linux10.0
redhatenterprise_linux_eus9.4
redhatenterprise_linux_eus9.6
redhatenterprise_linux_eus10.0

Check a specific version with /api/v1/cve/match.

References

Query this programmatically:

curl https://evil-db.io/api/v1/cve/CVE-2026-21710