DNSpooq, múltiples vulnerabilidades en Dnsmasq

Dnsmasq es un software de código abierto ampliamente utilizado que proporciona reenvío y almacenamiento en caché de DNS y también un servidor DHCP. Dnsmasq es común en Internet-of-Things (IoT) y otros dispositivos integrados.

Recientemente un equipo de seguridad ha informado sobre 7 múltiples vulnerabilidades encontradas en Dnsmasq, un software de reenvío de DNS de código abierto de uso común, utilizado por más de 40 proveedores de dispositivos variados en sus productos, así como las principales distribuciones de Linux. Según los investigadores, algunos de los destacados de dnsmasq parecen incluir routers Cisco, teléfonos Android, dispositivos Aruba, Technicolor y Red-Hat, así como Siemens, redes Ubiquiti, Comcast y otros.

El software de Dnsmasq se instala en muchos enrutadores y servidores domésticos y comerciales en muchas organizaciones. Se utiliza mucho en equipos de red, además de ser configurado manualmente por el personal de TI, generalmente en redes más pequeñas. Existen otros usos de dnsmasq, como la prestación de servicios DNS para admitir puntos de acceso Wi-Fi, redes de invitados empresariales, virtualización, bloqueo de anuncios, implementación de un portal cautivo: la pantalla de inicio de sesión que aparece al iniciar sesión en una red en un aeropuerto o otra ubicación pública y otros casos de uso.

Las vulnerabilidades encontradas se agrupan y se denominan DNSpooq, que permiten el envenenamiento de la caché de DNS y podría permitir además una posible ejecución de código remoto que resultaría en la adquisición de muchas marcas de enrutadores domésticos y otros equipos de red, con millones de dispositivos afectados y más de un millón de instancias expuestas directamente a Internet.

Productos afectados

DNS y DHCP Dnsmasq versión 2.8.2 y anteriores.

A continuación se describen las vulnerabilidades de riesgo alto y medio:

Vulnerabilidades de riesgo alto

El CVE-2020-25681 (calificación 8,1), tiene una vulnerabilidad de desbordamiento de búfer basado en memoria dinámica (Heap) debido a la ordenación de los RRSets antes de validarlos con los datos de DNSSEC, podría permitir a un atacante ejecutar código arbitrario mediante el envío de una respuesta DNS especialmente diseñada.

El CVE-2020-25682 (calificación 8,1), en la que se descubrió una vulnerabilidad de desbordamiento de búfer en la forma en que dnsmasq extrae nombres de paquetes DNS antes de validarlos con datos DNSSEC. Un atacante en la red, que puede crear respuestas DNS válidas, podría usar esta falla para causar un desbordamiento de datos arbitrarios en una memoria asignada al montón, posiblemente ejecutando código en la máquina.

Vulnerabilidades de riesgo medio

El CVE-2020-25683 (calificación 5,9), en la que se descubrió un desbordamiento de búfer basado en montón en Dnsmasq cuando DNSSEC está habilitado y antes de que valide las entradas DNS recibidas. Un atacante remoto podría crear respuestas DNS válidas para provocar un desbordamiento en una memoria asignada al montón y provocar un bloqueo en Dnsmasq, lo que provocaría una condición de denegación de servicio.

El CVE-2020-25684 (calificación 4,0), tiene una vulnerabilidad de validación insuficiente de la autenticidad de los datos en la respuesta de una consulta reenviada cuando Dnsmasq comprueba en forward.c:reply_query() si la dirección / puerto de destino de la respuesta, es utilizada por las consultas reenviadas pendientes, podría permitir a un atacante realizar un ataque de envenenamiento de la caché del DNS.

El CVE-2020-25685 (calificación 4,0), se da debido a un hash débil, un atacante fuera de ruta puede encontrar varios dominios diferentes con el mismo hash, lo que reduce sustancialmente el número de intentos de falsificar una respuesta para que Dnsmasq la acepte. Esto podría permitir a un atacante realizar un ataque de envenenamiento de la caché de DNS.

El CVE-2020-25686 (calificación 4,0), en la que se encontró una falla al recibir una consulta, donde Dnsmasq no verifica una solicitud pendiente existente para el mismo nombre y reenvía una nueva solicitud. Esto podría permitir que un atacante fuera de la ruta en la red reduzca sustancialmente el número de intentos de falsificar una respuesta y hacer que Dnsmasq la acepte.

El CVE-2020-25687 (calificación 5,9), en la que se descubrió un desbordamiento de búfer basado en montón en Dnsmasq cuando DNSSEC está habilitado y antes de que valide las entradas DNS recibidas. Un atacante remoto podría crear respuestas de DNS válidas y causar un desbordamiento en la memoria asignada al montón, lo que resultaría en una condición de denegación de servicio.

Recomendaciones de seguridad

  • Actualizar Dnsmasq a la última versión disponible: 2.83 o posterior.
  • Consulte otras medidas de mitigación en: Whitepaper
  • Los usuarios de sistemas IoT o embebidos, deberán consultar con su fabricante.
  • Además, ….
    • Implemente funciones de seguridad de Capa 2, como la vigilancia de DHCP y la protección de la fuente de IP.
    • Configure Dnsmasq para que no escuche las interfaces WAN si no es necesario.
    • Reduzca el número máximo de consultas que se pueden reenviar con la opción –dns-forward-max = . El valor predeterminado es 150, pero se puede reducir.
    • Desactive temporalmente la opción de validación de DNSSEC hasta que aplique el parche.
    • Utilice DNS sobre HTTPS o DNS sobre TLS para conectarse al servidor ascendente.

Referencias

Compartir: