CVEvulnerability

CVE-2026-21710

7.5 HIGH Published 2026-03-30 Modified 2026-08-19 Official page ↗
Status
Analyzed
Published
2026-03-30
Last modified
2026-08-19
Assigner
[email protected]
CVSS 3.1 (0b0ca135-0b70-47e7-9f44-1890c2a1c46c)
7.5 HIGH — CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
CVSS 3.0 ([email protected])
7.5 HIGH — CVSS:3.0/AV:N/AC:L/PR:N/UI:N/S:U/C:N/I:N/A:H
Weaknesses
CWE-770, CWE-843

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 configurations

• nodejs node.js (<= 20.20.1) • nodejs node.js (>= 22.0.0 <= 22.22.1) • nodejs node.js (>= 24.0.0 <= 24.14.0) • nodejs node.js (>= 25.0.0 <= 25.8.1) • redhat enterprise linux 8.0 • redhat enterprise linux 9.0 • redhat enterprise linux 10.0 • redhat enterprise linux eus 9.4 • redhat enterprise linux eus 9.6 • redhat enterprise linux eus 10.0

Related

Weakness · CWE (2)

  • CWE-770 Allocation of Resources Without Limits or Throttling weakness
  • CWE-843 Access of Resource Using Incompatible Type weakness

References