Un grupo de investigadores que representan a un gran número de universidades e institutos alemanes ha descubierto una vulnerabilidad en DNSSEC, un conjunto de extensiones del protocolo DNS diseñadas para mejorar la seguridad y contrarrestar la suplantación de DNS.
Un ataque que denominaron KeyTrap que explota esa vulnerabilidad y que puede desactivar un servidor DNS al enviar un único paquete de datos malicioso. Sigue leyendo para saber más sobre este ataque.
Cómo funciona KeyTrap y por qué es peligroso
La vulnerabilidad DNSSEC se ha hecho pública recientemente, pero fue descubierta en diciembre de 2023 y registrada como CVE-2023-50387. Se le asignó una puntuación CVSS 3.1 de 7,5 y una clasificación de gravedad “Alta”. Aún no se ha publicado toda la información acerca de esta vulnerabilidad ni sobre el ataque asociado a ella.
Así es cómo KeyTrap funciona. El actor malicioso configura un servidor DNS que responde a la solicitud de los servidores DNS de almacenamiento de caché, es decir, aquellos que atiendan las solicitudes de los clientes directamente, con un paquete malicioso. Después, los atacantes hacen que un servidor de caché solicite un registro de DNS de su servidor malicioso. El registro enviado como respuesta está firmado maliciosamente y encriptado. La forma en la que se elabora la firma hace que el servidor DNS atacado que intenta verificarla se ejecute a plena capacidad de la CPU por un largo periodo de tiempo.
Según los investigadores, un solo paquete malicioso de este tipo puede congelar el servidor DNS durante un periodo que va desde los 170 segundos a las 16 horas, un tiempo que depende del software que lo ejecuta. El ataque KeyTrap puede, además de denegar acceso al contenido web a todos lo clientes que utilizan el servidor DNS objetivo, interrumpir varios servicios de su infraestructura como la protección contra el SPAM, la gestión de certificados digitales (PKI) y el enrutamiento seguro entre dominios (RPKI).
Los investigadores se refieren a KeyTrap como “el peor ataque a DNS jamás descubierto”. Es curioso que las fallas en la lógica de validación de firmas que hacen posible que KeyTrap funcione se descubrieran en una de las primeras versiones de la especificación DNSSEC, publicada en 1999. Es decir, esta vulnerabilidad está a punto de cumplir 25 años.
Cómo defenderse de KeyTrap
Los investigadores han alertado a todos los desarrolladores de software de servidores DNS y a los principales proveedores públicos de DNS. Las actualizaciones y avisos para corregir CVE-2023-50387 están ahora disponibles para PowerDNS, NLnet Labs Unbound, y Internet Systems Consortium BIND9. Si eres administrador de un servidor DNS, es un buen momento para instalar las últimas actualizaciones.
Sin embargo, ten en cuenta que los problemas lógicos de DNSSEC que han hecho posible KeyTrap son fundamentales, por lo que no se pueden solucionar fácilmente. Los parches publicados por los de desarrolladores de software DNS solo pueden contribuir en cierta medida a resolver el problema ya que la vulnerabilidad es parte del estándar en lugar de una implementación específica. “Si lanzamos [KeyTrap] contra un solucionador parcheado, obtendremos el 100 % de uso de la CPU aunque es posible que sí que responda”, dice uno de los investigadores.
La explotación práctica de la falla sigue siendo una posibilidad con el potencial resultado de impredecibles fallos. En caso de que esto suceda, los administradores de redes corporativas harían bien en preparar una lista de posibles servidores DNS de respaldo. De esta manera se anticiparían para que, si tienen que cambiarlo en algún momento, puedan hacerlo para asegurar que la red funcione con normalidad y permita a los usuarios navegar por la web sin ningún impedimento.