CVE-2026-105482
Published: October 24, 2026Last modified: November 1, 2026
Description
A flaw in Node.js DNS resolution allows hostnames containing a NUL byte to be silently truncated by the dns.resolve*() functions and dns.reverse(). This is an incomplete fix of CVE-2026-48930, which only covered dns.lookup() and the net/tls host options. Because the name is passed to c-ares as a C string, resolving attacker.example\0.trusted.example queries attacker.example and returns its records without any error. Applications that validate a hostname, for example against a domain allowlist, and then resolve it with dns.resolve*() can act on records for a different name than the one they validated. This vulnerability affects Node.js 26.x, 24.x, and 22.x.
Severity score breakdown
| Parameter | Value |
|---|---|
| Base score | 7.4 |
| Attack Vector | NETWORK |
| Attack complexity | HIGH |
| Privileges required | NONE |
| User interaction | NONE |
| Scope | UNCHANGED |
| Confidentiality | HIGH |
| Integrity impact | HIGH |
| Availability impact | NONE |
| Vector | CVSS:3.0/AV:N/AC:H/PR:N/UI:N/S:U/C:H/I:H/A:N |
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) |