En el paquete Dnsmasq, que combina un resolutor DNS en caché, un servidor DHCP, un servicio para anuncios de rutas IPv6 y un sistema de arranque por red, se han identificado 6 vulnerabilidades que permiten ejecutar código con privilegios de root, redirigir un dominio a otra IP, determinar el contenido de la memoria del proceso y provocar una caída del servicio. Los problemas han sido solucionados en la versión dnsmasq 2.92rel2. Las correcciones también están disponibles en forma de parches.
Problemas identificados:
- CVE-2026-4892 — desbordamiento de búfer en la implementación de DHCPv6, que permite a un atacante con acceso a la red local ejecutar código con privilegios de root mediante el envío de un paquete DHCPv6 especialmente diseñado. El desbordamiento se produce porque al escribir el CLID de DHCPv6 en el búfer no se tiene en cuenta que los datos del paquete se almacenan en formato hexadecimal, donde se utilizan tres bytes «%xx» por cada byte real del CLID (por ejemplo, almacenar un CLID de 1000 bytes provocará la escritura de 3000 bytes).
- CVE-2026-2291 — desbordamiento de búfer en la función extract_name(), que permite a un atacante inyectar registros falsos en el caché DNS y conseguir una redirección dominio a otra dirección IP. El desbordamiento fue causado por la asignación de un búfer sin tener en cuenta la necesidad de escapar algunos caracteres en la representación interna del nombre de dominio en dnsmasq.
- CVE-2026-4893 — filtración de información, que permite eludir la verificación mediante el envío de un paquete DNS especialmente diseñado que contiene información sobre la subred del cliente (RFC 7871). La vulnerabilidad puede ser utilizada para alterar la ruta de la respuesta DNS y redirigir a los usuarios a un dominio del atacante. La vulnerabilidad se debe a que a la función check_source() se le pasaba la longitud del registro OPT en lugar de la longitud del paquete, lo que hacía que la función siempre devolviera un resultado exitoso.
- CVE-2026-4891 — lectura fuera de los límites del búfer al validar DNSSEC, lo que provoca una fuga de datos de la memoria del proceso en la respuesta al manejar una solicitud DNS especialmente diseñada.
- CVE-2026-4890 — bucle infinito al validar DNSSEC, lo que permite causar una denegación de servicio mediante el envío de un paquete DNS especialmente diseñado.
- CVE-2026-5172 — lectura fuera del búfer en la función extract_addresses(), que provoca un fallo al procesar respuestas DNS especialmente diseñadas.
El estado de las vulnerabilidades en las distribuciones se puede evaluar en estas páginas (si la página no está disponible, significa que los desarrolladores de la distribución aún no han comenzado a considerar el problema): Debian, Ubuntu, SUSE, RHEL, Gentoo, Arch, Fedora, OpenWRT, FreeBSD. El proyecto Dnsmasq está involucrado en la plataforma Android y en distribuciones especializadas como OpenWrt y DD-WRT, así como en los firmware de muchos fabricantes de enrutadores inalámbricos. En las distribuciones normales, Dnsmasq puede ser instalado utilizando libvirt para proporcionar el servicio DNS. máquinas virtuales o ser activado en el configurador de NetworkManager.
Fuente: opennet.ru
