CVE-2026-106072

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

Description

A flaw in Node.js TLS hostname verification allows a certificate with only a DNS SAN to authenticate an IP endpoint when the client connects using a non-canonical IPv4 spelling, such as `0177.0.0.1`, `0x7f.0.0.1`, `2130706433` or `127.1`. `tls.checkServerIdentity()` did not classify these hosts as IP addresses, but normalized them to their canonical form and matched the result against the certificate DNS names. A certificate containing `DNS:127.0.0.1` and no `IP Address:127.0.0.1` SAN was therefore accepted, while the same certificate is correctly rejected for `127.0.0.1`. Exploitation requires a certificate with a numeric DNS SAN issued by a CA trusted by the client, and a platform resolver that accepts these spellings, such as glibc. This vulnerability affects Node.js **26.x**, **24.x**, and **22.x**.

Severity score breakdown

ParameterValue
Base score6.7
Attack VectorNETWORK
Attack complexityLOW
Privileges requiredHIGH
User interactionNONE
ScopeUNCHANGED
ConfidentialityHIGH
Integrity impactHIGH
Availability impactLOW
VectorCVSS:3.0/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:L

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