CVE-2026-106069

Published: October 24, 2026Last modified: November 1, 2026

Description

A flaw in Node.js TLS hostname verification can cause a server certificate to be validated against a different IP address than the one the client connected to, when the host is a non-canonical IPv4 literal with a leading zero, such as `0127.0.0.1`. `tls.checkServerIdentity()` normalizes the host following the WHATWG URL rules, which read a leading-zero octet as octal (`0127.0.0.1` becomes `87.0.0.1`), while the connection is made through the operating system resolver, which on some platforms such as macOS reads it as decimal (`127.0.0.1`). A server at the connected address can then be authenticated with a certificate issued for another IP address. This vulnerability affects Node.js **26.x**, **24.x**, and **22.x**.

Severity score breakdown

ParameterValue
Base score7.4
Attack VectorNETWORK
Attack complexityHIGH
Privileges requiredNONE
User interactionNONE
ScopeUNCHANGED
ConfidentialityHIGH
Integrity impactHIGH
Availability impactNONE
VectorCVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N

Status

ProductReleasePackageStatus
Alpaquita Linux23 LTSnodejsUnknown (18.16.0-r0)
25 LTSnodejsUnknown (22.16.0-r1)
nodejs22Fixed (22.23.4-r0)
nodejs24Fixed (24.22.1-r0)
nodejs26Fixed (26.12.1-r0)
StreamnodejsUnknown (18.16.1-r0)
nodejs22Fixed (22.23.4-r0)
nodejs24Fixed (24.22.1-r0)
nodejs26Fixed (26.12.1-r1)
Hardened Containers23 LTSnodejsUnknown (18.16.0-r0)
25 LTSnodejsUnknown (22.16.0-r1)
nodejs22Fixed (22.23.4-r0)
nodejs24Fixed (24.22.1-r0)
nodejs26Fixed (26.12.1-r0)
StreamnodejsUnknown (18.16.1-r0)
nodejs22Fixed (22.23.4-r0)
nodejs24Fixed (24.22.1-r0)
nodejs26Fixed (26.12.1-r1)

References

ON THIS PAGE