Denial of service in undici via TLS renegotiation
Key facts
- Attack vector
- Network
- Privileges required
- None
- User interaction
- None
- Attack complexity
- Low
- Impact type
- Denial of service
- Confidentiality · integrity · availability
- None · None · High
- Fix status
- Partial Red Hat: 4 fixed, 15 without a fix
Attack profile from CVSS 3.1 · CNA. Fix status from CNA, GitHub and Red Hat. Impact type from CWE-248.
Summary
undici, an HTTP client library for Node.js, is affected from 4.2.1 before 6.29.1, from 7.0.0 before 7.30.1, and from 8.0.0 before 8.12.2. An assertion in undici's socket error handler (CWE-617) turns a hostname mismatch during TLS 1.2 renegotiation into an uncaught exception. A malicious HTTPS endpoint can crash the client with one renegotiation presenting a different valid certificate. TLS 1.3 is not affected.
Written with Claude Haiku 5.5 from the sources below · 2026-11-06
Description from the CNA
undici is an HTTP client library for Node.js. In versions 4.2.1 through 6.29.0, 7.0.0 through 7.30.0, and 8.0.0 through 8.12.1, the client process crashes when a TLS 1.2 server renegotiates after the connection is established and presents a different, CA-trusted certificate whose hostname does not match the requested host. Node.js re-runs hostname verification on the renegotiated handshake and destroys the socket with a certificate-altname error, but undici's established-socket error handler asserted that this error code could never occur, so the peer-controlled error became an uncaught assertion that terminates the Node.js process, affecting both the HTTP/1.1 and HTTP/2 paths. A malicious or compromised HTTPS endpoint reached through undici or the global fetch() can crash the client with a single server-initiated renegotiation, taking down all in-flight requests and background work in the process, and exploitation needs no CA compromise because the attacker controls the endpoint and can present two ordinary valid certificates. Only TLS 1.2 is affected, since TLS 1.3 does not support renegotiation. The issue is fixed in undici 6.29.1, 7.30.1, and 8.12.2, and users should upgrade to one of those versions or later. As a workaround, restrict outbound connections to TLS 1.3 so renegotiation cannot occur, when the target endpoints support it.
Why it matters now
SSVC decision points
CISA ADP · SSVC 2.0.3
- Exploitation
- None
- Automatable
- Yes
- Technical impact
- Partial
The decision (Track, Attend, Act) also depends on your mission and well-being impact; see CISA's SSVC guide.
Affected products
| Vendor | Product | Affected versions | Fixed in | Status | Source |
|---|---|---|---|---|---|
| NodeJS | undici | 4.2.1 to before 6.29.1; 7.0.0 to before 7.30.1; 8.0.0 to before 8.12.2 | 6.29.1, 7.30.1, 8.12.2 | Patch available | CNA |
| — | undici (npm) | 4.2.1 to before 6.29.1 | 6.29.1 | Patch available | GHSA-qrxm-fqhp-jwvm |
| — | undici (npm) | 7.0.0 to before 7.30.1 | 7.30.1 | Patch available | GHSA-qrxm-fqhp-jwvm |
| — | undici (npm) | 8.0.0 to before 8.12.2 | 8.12.2 | Patch available | GHSA-qrxm-fqhp-jwvm |
- undici VendorNodeJS Affected 4.2.1 to before 6.29.1; 7.0.0 to before 7.30.1; 8.0.0 to before 8.12.2 Fixed in 6.29.1, 7.30.1, 8.12.2 Patch available CNA
- undici (npm) Vendor— Affected 4.2.1 to before 6.29.1 Fixed in 6.29.1 Patch available GHSA-qrxm-fqhp-jwvm
- undici (npm) Vendor— Affected 7.0.0 to before 7.30.1 Fixed in 7.30.1 Patch available GHSA-qrxm-fqhp-jwvm
- undici (npm) Vendor— Affected 8.0.0 to before 8.12.2 Fixed in 8.12.2 Patch available GHSA-qrxm-fqhp-jwvm
CPE configurations NVD · 1
| CPE | Versions | Role | Vendor |
|---|---|---|---|
| cpe:2.3:a:nodejs:undici:*:*:*:*:*:node.js:*:* | 4.2.1 to before 6.29.1; 7.0.0 to before 7.30.1; 8.0.0 to before 8.12.2 | Vulnerable | NodeJS |
- cpe:2.3:a:nodejs:undici:*:*:*:*:*:node.js:*:* Versions 4.2.1 to before 6.29.1; 7.0.0 to before 7.30.1; 8.0.0 to before 8.12.2 Vulnerable ·NodeJS
Remediation
Upgrade undici to 6.29.1, 7.30.1 or 8.12.2 or later. Red Hat fixes are in RHSA-2026:95591, RHSA-2026:95081, RHSA-2026:95124, RHSA-2026:92510, RHSA-2026:87703, RHSA-2026:86147, RHSA-2026:84706 and RHSA-2026:84657. Red Hat lists no available fix for Red Hat Enterprise Linux 8, 9 and 10 and other affected products. Until upgrading, restrict outbound connections to TLS 1.3 where the target endpoints support it.
Written with Claude Haiku 5.5 from the sources below · 2026-11-06
- Fix · CNA undici (undici) Fixed in 6.29.1, 7.30.1, 8.12.2
- Fix · GHSA-qrxm-fqhp-jwvm undici (npm) Fixed in 6.29.1 Advisory →
- Fix · GHSA-qrxm-fqhp-jwvm undici (npm) Fixed in 7.30.1 Advisory →
- Fix · GHSA-qrxm-fqhp-jwvm undici (npm) Fixed in 8.12.2 Advisory →
Red Hat 8 advisories
- RHSA-2026:95591 Released 2026-11-05 · Red Hat rating ImportantCluster Observability Operator - 1.5
- Cluster Observability Operator 1.5 registry.redhat.io/cluster-observability-operator/alertmanager-rhel9, registry.redhat.io/cluster-observability-operator/cluster-observability-rhel9-operator, registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf4-rhel9 +16
- RHSA-2026:95124 Released 2026-11-04 · Red Hat rating ImportantRHTAS 1.5.1 - Red Hat Trusted Artifact Signer Release
- Red Hat Trusted Artifact Signer 1.5 registry.redhat.io/rhtas/rhtas-console-rhel9, registry.redhat.io/rhtas/rhtas-console-ui-rhel9
- RHSA-2026:95081 Released 2026-11-04 · Red Hat rating ImportantCluster Observability Operator - 1.5
- Cluster Observability Operator 1.5 registry.redhat.io/cluster-observability-operator/alertmanager-rhel9, registry.redhat.io/cluster-observability-operator/cluster-observability-rhel9-operator, registry.redhat.io/cluster-observability-operator/distributed-tracing-console-plugin-pf4-rhel9 +16
Show 5 more Red Hat advisories
- RHSA-2026:92510 Released 2026-10-29 · Red Hat rating CriticalRHOAI 3.4.6 - Red Hat OpenShift AI
- Red Hat OpenShift AI 3.4 registry.redhat.io/rhoai/odh-built-in-detector-rhel9, registry.redhat.io/rhoai/odh-cli-rhel9, registry.redhat.io/rhoai/odh-dashboard-rhel9 +47
- RHSA-2026:87703 Released 2026-10-22 · Red Hat rating ImportantRed Hat Hardened Images RPMs bug fix and enhancement update
- Red Hat Hardened Images nodejs26-1:26.12.1-0.1.hum1@aarch64, nodejs26-1:26.12.1-0.1.hum1@s390x, nodejs26-1:26.12.1-0.1.hum1@src +22
- RHSA-2026:86147 Released 2026-10-20 · Red Hat rating ImportantRed Hat Hardened Images RPMs Security Update
- Red Hat Hardened Images nodejs26-26.11.1-0.5.hum1@aarch64, nodejs26-26.11.1-0.5.hum1@s390x, nodejs26-26.11.1-0.5.hum1@src +25
- RHSA-2026:84706 Released 2026-10-19 · Red Hat rating ImportantRed Hat Hardened Images RPMs Security Update
- Red Hat Hardened Images nodejs24-24.21.0-1.5.hum1@aarch64, nodejs24-24.21.0-1.5.hum1@s390x, nodejs24-24.21.0-1.5.hum1@src +25
- RHSA-2026:84657 Released 2026-10-19 · Red Hat rating ImportantRed Hat Hardened Images RPMs Security Update
- Red Hat Hardened Images nodejs26-26.11.1-0.4.hum1@aarch64, nodejs26-26.11.1-0.4.hum1@s390x, nodejs26-26.11.1-0.4.hum1@src +25
Fixed in the same release
Records fixed by the same vendor advisory or release, as the CNA lists them.
- Release ·
undici 6.29.1, 7.30.1, 8.12.2
5 records Highest priority Priority MEDIUM 1 MEDIUM, 4 LOW
Other records, highest priority first
- TI-2026-74886 Certificate validation bypass in undici Agent drops custom TLS checksPriority MEDIUM 40
- TI-2026-74890 Unhandled error in undici fetch() crashes Node.js processPriority LOW 39
- TI-2026-74894 Undici WebSocket client exhausts memory via unbounded PONG bufferingPriority LOW 33
Vendor assessments
Red Hat
Red Hat rating: Important. Red Hat's page for this CVE →
| Product | Status | Plan or fix |
|---|---|---|
| Exploit Intelligence | Affected | No fix yet |
| Red Hat AMQ Broker 7 | Affected | No fix yet |
| Red Hat Build of Podman Desktop | Affected | No fix yet |
| Red Hat Developer Hub 1 | Affected | No fix yet |
| Red Hat Enterprise Linux 10 | Affected | No fix yet |
| Red Hat Enterprise Linux 8 | Affected | No fix yet |
| Red Hat Enterprise Linux 9 | Affected | No fix yet |
| Red Hat Hardened Images | Affected | No fix planned: Will not fix |
| Red Hat OpenShift AI (RHOAI) | Affected | No fix yet |
| Red Hat OpenShift Container Platform 4 | Affected | No fix yet |
| Red Hat OpenShift Container Platform 5 | Affected | No fix yet |
| Red Hat OpenShift Dev Spaces | Affected | No fix yet |
| Red Hat Openshift Data Foundation 4 | Affected | No fix yet |
| Secrets Management Console for Red Hat OpenShift | Affected | No fix planned: Will not fix |
| Self-service automation portal 2 | Affected | No fix yet |
| Cluster Observability Operator 1.5 | Fixed | RHSA-2026:95081, RHSA-2026:95591 |
| Red Hat Hardened Images | Fixed | RHSA-2026:84657, RHSA-2026:84706, RHSA-2026:86147, RHSA-2026:87703 |
| Red Hat OpenShift AI 3.4 | Fixed | RHSA-2026:92510 |
| Red Hat Trusted Artifact Signer 1.5 | Fixed | RHSA-2026:95124 |
Not affected: 8 products
- Cluster Observability Operator 1.5
- Cryostat 4
- Red Hat AMQ Broker 7
- Red Hat Ansible Automation Platform 2
- Red Hat Enterprise Linux 10
- Red Hat Hardened Images
- Red Hat OpenShift AI 3.4
- Red Hat Trusted Artifact Signer 1.5
Timeline
- 2026-10-16 Threatist record created from CVE-2026-87018
- 2026-10-16 Priority changed: MEDIUM → LOW
- 2026-10-16 Affected versions changed · Red Hat
- 2026-10-16 CVSS score added · Red Hat
- 2026-10-18 CISA SSVC decision points changed
- 2026-10-18 Affected versions changed · Red Hat
- 2026-10-19 Fix available: RHSA-2026:84657 · Red Hat
- 2026-10-19 Fix available: RHSA-2026:84706 · Red Hat
- 2026-10-20 Fix available: Red Hat Hardened Images · Red Hat
- 2026-10-21 Fix available: RHSA-2026:86147 · Red Hat
- 2026-10-21 Affected versions changed · Red Hat
- 2026-10-22 Fix available: RHSA-2026:87703 · Red Hat
- 2026-10-23 Affected versions changed · Red Hat
- 2026-10-27 Affected versions changed · Red Hat
- 2026-10-27 Alias added: GHSA-qrxm-fqhp-jwvm
- 2026-10-30 Fix available: RHSA-2026:92510 · Red Hat
- 2026-10-30 Fix available: Red Hat OpenShift AI 3.4 · Red Hat
- 2026-10-30 Affected versions changed · Red Hat
- 2026-11-04 Fix available: RHSA-2026:95081 · Red Hat
- 2026-11-04 Fix available: RHSA-2026:95124 · Red Hat
- 2026-11-04 Fix available: Cluster Observability Operator 1.5, Red Hat Trusted Artifact Signer 1.5 · Red Hat
- 2026-11-06 Affected versions changed · Red Hat
- 2026-11-06 Fix available: RHSA-2026:95591 · Red Hat
References
Advisory 3
Other 7
- https://github.com/nodejs/undici/commit/12cfd96c3f430897656e3edc1c5e02be8c1cd309
- https://github.com/nodejs/undici/commit/b40fbfc0651703cf9fa9f6ced68b679f28d8bb28
- https://github.com/nodejs/undici/commit/e257e9f8fb42eedd50727b9cf65e548c8925e4a8
- https://github.com/nodejs/undici
- https://github.com/nodejs/undici/releases/tag/v6.29.1
- https://github.com/nodejs/undici/releases/tag/v7.30.1
- https://github.com/nodejs/undici/releases/tag/v8.12.2
More NodeJS Undici vulnerabilities
- TI-2026-01215 undici is vulnerable to Inconsistent Interpretation of HTTP Requests ('HTTP Request/Response Smuggling') CVSS 3.1CRITICAL 9.8
- TI-2022-16376 `undici.request` vulnerable to SSRF using absolute URL on `pathname` CVSS 3.1CRITICAL 9.8
- TI-2023-09734 CRLF Injection in Nodejs ‘undici’ via host CVSS 3.1MEDIUM 6.5
- TI-2022-13193 CRLF injection in request headers CVSS 3.1MEDIUM 6.5
- TI-2022-16375 CRLF Injection in Nodejs ‘undici’ via Content-Type CVSS 3.1MEDIUM 5.3
- TI-2022-13194 Uncleared cookies on cross-host/cross-origin redirect in undici CVSS 3.1MEDIUM 6.5
Sources
- CVE-2026-87018 · CVE Program
- CVE-2026-87018 · NVD
- FIRST EPSS
- GHSA-qrxm-fqhp-jwvm · GitHub Advisory Database · CC BY 4.0
- CVE-2026-87018 · Red Hat security data · CC BY 4.0
This product uses the NVD API but is not endorsed or certified by the NVD. Sources and licences