Public vulnerability disclosure

CVE-2026-106069

CVE-2026-106069

publishedCWE-295

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**.

Technical severity7.4 highCVSS 3.0 · CNA: hackerone
Published2026-10-23Source updated 2026-11-02
Collected2026-11-022 attributed sources

Fixes and workarounds

No remediation reported in collected sources.

Missing remediation information is not evidence that no patch exists.

Affected products and versions

Affected products, source version ranges and reporting authorities
ProductVersionsAuthority
node
nodejs
≥ 22.23.3; ≤ 22.23.3 (affected, semver)
≥ 24.22.0; ≤ 24.22.0 (affected, semver)
≥ 26.12.0; ≤ 26.12.0 (affected, semver)
Other versions: unaffected
CNA: hackerone

Version ranges are source assertions. Check the vendor advisory and your installed configuration before determining exposure.

CVSS assessments

CVSS scores, vectors and reporting authorities
Version / scoreVectorAuthority
3.0 / 7.4
high
CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:NCNA: hackerone

Exploit evidence

No exploit evidence in collected sources. This is not proof of no exploitation.

References