CVE-2026-106072: Improper certificate validation for non-canonical IPv4 hostnames allows DNS SANs to authenticate IP endpoints

Published Oct 21, 2026
·
Updated

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.

Other sources

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.

— Node.Js

Affected Software

29 affected componentsFixes available
Node.js Node.js>=22.0.0<22.23.4
22.23.4
Node.js Node.js>=24.0.0<24.22.1
24.22.1
Node.js Node.js>=26.0.0<26.12.1
26.12.1
Node.js Node.js>=22.0.0<22.23.4, >=24.0.0<24.22.1, >=26.0.0<26.12.1
22.23.424.22.126.12.1
All of the following
azurelinux/nodejs<24.22.1-0
24.22.1-0
Microsoft Azure Linux=3.0
bitnami/node<22.23.4
22.23.4
bitnami/node>=23.0.0<24.22.1
24.22.1
bitnami/node>=25.0.0<26.12.1
26.12.1
bitnami/node-min<22.23.4
22.23.4
bitnami/node-min>=23.0.0<24.22.1
24.22.1
bitnami/node-min>=25.0.0<26.12.1
26.12.1
ubuntu/nodejs*
ubuntu/nodejs*
ubuntu/nodejs*
ubuntu/nodejs*
ubuntu/nodejs*
ubuntu/nodejs*
ubuntu/nodejs*
ubuntu/nodejs*
alpine/nodejs<22.23.4-r0
22.23.4-r0
alpine/nodejs<22.23.4-r0
22.23.4-r0
alpine/nodejs<24.22.1-r0
24.22.1-r0
alpine/nodejs<24.22.1-r0
24.22.1-r0
alpine/nodejs-current<26.12.1-r0
26.12.1-r0
debian/nodejs*
debian/nodejs*
debian/nodejs<24.22.1+dfsg+~cs24.19.2-1
24.22.1+dfsg+~cs24.19.2-1
debian/nodejs<=18.20.4+dfsg-1~deb12u2, <=18.20.4+dfsg-1~deb12u3, <=20.19.2+dfsg-1+deb13u2, <=20.19.2+dfsg-1+deb13u3
24.22.2+dfsg+~cs24.19.2-1

Remediation

Recommended actions to resolve this vulnerability, in priority order.

  1. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 22.23.4
  2. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 24.22.1
  3. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 26.12.1
  4. Upgrade

    Upgrade to a fixed release to a version that resolves this vulnerability.

    Fixed in 22.23.4Fixed in 24.22.1Fixed in 26.12.1
  5. Upgrade

    Upgrade azurelinux/nodejs to a version that resolves this vulnerability.

    Fixed in 24.22.1-0
  6. Upgrade

    Upgrade bitnami/node to a version that resolves this vulnerability.

    Fixed in 22.23.4
  7. Upgrade

    Upgrade bitnami/node to a version that resolves this vulnerability.

    Fixed in 24.22.1
  8. Upgrade

    Upgrade bitnami/node to a version that resolves this vulnerability.

    Fixed in 26.12.1
  9. Upgrade

    Upgrade bitnami/node-min to a version that resolves this vulnerability.

    Fixed in 22.23.4
  10. Upgrade

    Upgrade bitnami/node-min to a version that resolves this vulnerability.

    Fixed in 24.22.1
  11. Upgrade

    Upgrade bitnami/node-min to a version that resolves this vulnerability.

    Fixed in 26.12.1
  12. Upgrade

    Upgrade debian/nodejs to a version that resolves this vulnerability.

    Fixed in 24.22.2+dfsg+~cs24.19.2-1
  13. Upgrade

    Upgrade alpine/nodejs to a version that resolves this vulnerability.

    Fixed in 22.23.4-r0
  14. Upgrade

    Upgrade alpine/nodejs to a version that resolves this vulnerability.

    Fixed in 24.22.1-r0
  15. Upgrade

    Upgrade alpine/nodejs-current to a version that resolves this vulnerability.

    Fixed in 26.12.1-r0
  16. Upgrade

    Upgrade debian/nodejs to a version that resolves this vulnerability.

    Fixed in 24.22.1+dfsg+~cs24.19.2-1

Event History

Oct 21, 2026
CVE Published
via Node.js·10:39 AM
Data Sourced
via Node.js·10:39 AM
SeverityAffected Software
Data Sourced
via Node.js·10:00 PM
Description
Oct 23, 2026
Data Sourced
via Ubuntu·12:00 AM
RemedyDescriptionSeverityAffected Software
CVE Published
via MITRE·04:15 PM
Data Sourced
via MITRE·04:15 PM
DescriptionSeverityWeakness
Data Sourced
via Red Hat·04:23 PM
DescriptionSeverityAffected Software
Data Sourced
via OSV·05:17 PM
DescriptionSeverityAffected Software
Data Sourced
via NVD·05:17 PM
DescriptionSeverityWeakness
Oct 25, 2026
Data Sourced
via Microsoft·08:02 AM
DescriptionSeverityWeakness
Data Sourced
via Microsoft·08:02 AM
Affected Software
Oct 29, 2026
Advisory Published
via OSV·08:56 AM

Parent advisories

This vulnerability appears in the following advisories.

Contact

SecAlerts Pty Ltd.
132 Wickham Terrace
Fortitude Valley,
QLD 4006, Australia
info@secalerts.co
By using SecAlerts services, you agree to our services end-user license agreement. This website is safeguarded by reCAPTCHA and governed by the Google Privacy Policy and Terms of Service. All names, logos, and brands of products are owned by their respective owners, and any usage of these names, logos, and brands for identification purposes only does not imply endorsement. If you possess any content that requires removal, please get in touch with us.
© 2026 SecAlerts Pty Ltd.
ABN: 70 645 966 203, ACN: 645 966 203