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
| Parameter | Value |
|---|---|
| Base score | 6.7 |
| Attack Vector | NETWORK |
| Attack complexity | LOW |
| Privileges required | HIGH |
| User interaction | NONE |
| Scope | UNCHANGED |
| Confidentiality | HIGH |
| Integrity impact | HIGH |
| Availability impact | LOW |
| Vector | CVSS:3.0/AV:N/AC:L/PR:H/UI:N/S:U/C:H/I:H/A:L |
Status
| Product | Release | Package | Status |
|---|---|---|---|
| Alpaquita Linux | 23 LTS | nodejs | Unknown (18.16.0-r0) |
| 25 LTS | nodejs | Unknown (22.16.0-r1) | |
| nodejs22 | Fixed (22.23.4-r0) | ||
| nodejs24 | Fixed (24.22.1-r0) | ||
| nodejs26 | Fixed (26.12.1-r0) | ||
| Stream | nodejs | Unknown (18.16.1-r0) | |
| nodejs22 | Fixed (22.23.4-r0) | ||
| nodejs24 | Fixed (24.22.1-r0) | ||
| nodejs26 | Fixed (26.12.1-r1) | ||
| Hardened Containers | 23 LTS | nodejs | Unknown (18.16.0-r0) |
| 25 LTS | nodejs | Unknown (22.16.0-r1) | |
| nodejs22 | Fixed (22.23.4-r0) | ||
| nodejs24 | Fixed (24.22.1-r0) | ||
| nodejs26 | Fixed (26.12.1-r0) | ||
| Stream | nodejs | Unknown (18.16.1-r0) | |
| nodejs22 | Fixed (22.23.4-r0) | ||
| nodejs24 | Fixed (24.22.1-r0) | ||
| nodejs26 | Fixed (26.12.1-r1) |