CVE-2026-105482
Beschrijving NL
Door een fout in de DNS-resolutie van Node.js kunnen hostnamen die een NUL-byte bevatten stilletjes worden afgekapt door de functiesdns.resolve *() en dns.reverse(). Dit is een onvolledige oplossing van CVE-2026-48930, die alleen betrekking had op dns.lookup () en de net/tls-hostopties. Omdat de naam wordt doorgegeven aan c-ares als een C-reeks, wordt het oplossen van aanvaller.example.trusted.example-query's aanvaller.example en worden de records zonder fouten geretourneerd. Toepassingen die een hostnaam valideren, bijvoorbeeld tegen een domeintoestemmingslijst, en deze vervolgens oplossen met dns.resolve *(), kunnen handelen op records voor een andere naam dan de naam die ze hebben gevalideerd. Deze kwetsbaarheid is van invloed op Node.js 26.x, 24.x en 22.x.
Origineel (Engels) tonen
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.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.