¿Qué es la seguridad de DNS?

DNS no se diseñó con la mente puesta en la seguridad, y hay muchos tipos de ataques creados para explotar las vulnerabilidades en el sistema DNS.

Objetivos de aprendizaje

Después de leer este artículo podrás:

  • Entender qué es DNSSEC y cómo funciona
  • Familiarizarse con los ataques de DNS más comunes
  • Distinguir entre DNSSEC y otras soluciones de seguridad de DNS

Copiar enlace del artículo

¿Qué es la seguridad de DNS?

La seguridad de DNS es la práctica de proteger la infraestructura de DNS de los ciberataques para que siga funcionando de forma rápida y fiable. Una estrategia eficaz de seguridad de DNS incorpora una serie de defensas superpuestas, entre las que se incluyen el establecimiento de servidores DNS redundantes, la aplicación de protocolos de seguridad como DNSSEC y la exigencia de un registro riguroso de DNS.

¿Por qué es importante la seguridad de DNS?

Como pasa con muchos protocolos de Internet, el sistema DNS no se fue para tener en cuenta la seguridad y tiene varias limitaciones de diseño. Estas limitaciones, combinadas con los avances tecnológicos, hacen que los servidores DNS sean vulnerables a un amplio espectro de ataques, como la suplantación de identidad, la amplificación, DoS (denegación de servicio) o la interceptación de información personal privada. Y ya que el DNS es una parte integral de la mayoría de las solicitudes de Internet, puede ser un objetivo principal de los ataques.

Además, los ataques de DNS se suelen implementar junto con otros ciberataques para distraer a los equipos de seguridad del verdadero objetivo. Una organización debe ser capaz de mitigar con rapidez los ataques de DNS para no que no esté demasiado ocupada para gestionar los ataques simultáneos a través de otros vectores.

¿Cuáles son los ataques más frecuentes que afectan a DNS?

Los atacantes han encontrado varias formas para atacar y aprovecharse de los servidores DNS. A continuación, algunas de las más habituales:

Suplantación de DNS/envenenamiento de caché: es un ataque en el que se introducen datos DNS falsificados en el caché del solucionador de DNS, lo cual provoca que el solucionador devuelva una dirección IP incorrecta para un dominio. En vez de ir al sitio web correcto, se puede desviar el tráfico a un equipo malicioso o a cualquier lugar que quiera el atacante, a menudo a una réplica del sitio original usada con fines maliciosos, tales como distribuir malware o recopilar información de inicio de sesión.

Túnel de DNS: este ataque usa otros protocolos para transmitir consultas y respuestas DNS a través de un túnel. Los atacantes pueden utilizar SSH, TCP o HTTP para pasar malware o información robada a consultas DNS, sin que los detecten la mayoría de firewalls.

Secuestro de DNS: en un secuestro de DNS, el atacante redirige las consultas a un servidor de nombres de dominio diferente. Se puede llevar a cabo con malware o con una modificación no autorizada de un servidor DNS. Aunque el resultado es similar al de la suplantación de DNS, es un ataque esencialmente diferente, ya que ataca el registro DNS del sitio web en el servidor de nombres, en vez de la caché de un solucionador.

Ataque NXDOMAIN: es un tipo de ataque de inundación de DNS en el que un atacante inunda un servidor DNS con solicitudes de registros que no existen, para causar una denegación de servicio para el tráfico legítimo. Se puede conseguir con herramientas de ataque sofisticadas que pueden generar de forma automática subdominios únicos para cada solicitud. Los ataques de NXDOMAIN también pueden dirigirse contra un solucionador recursivo con el objetivo de llenar la caché del solucionador con solicitudes basura.

Ataque de dominio fantasma: un ataque de dominio fantasma da un resultado similar al de un ataque NXDOMAIN en un solucionador DNS. El atacante configura una serie de servidores de dominio "fantasmas" que o bien responden a las solicitudes muy despacio o no responden en absoluto. Después, el solucionador recibe una avalancha de solicitudes a estos dominios y se queda inmovilizado esperando respuestas, con la consecuencia de un funcionamiento ralentizado y la denegación de servicio.

Ataque de subdominio aleatorio: en este caso, el atacante envía consultas DNS a varios subdominios aleatorios e inexistentes de un sitio legítimo. Su objetivo es crear una denegación de servicio para el servidor de nombres autoritativo del dominio, haciendo que sea imposible buscar el sitio web desde el servidor de nombres. Como efecto colateral, el ISP del atacante también puede verse afectado, ya que la caché de su solucionador recursivo se cargará con solicitudes perjudiciales.

Ataque de bloqueo de dominio: los atacantes orquestan esta forma de ataque configurando dominios especiales y solucionadores para crear conexiones TCP con otros solucionadores legítimos. Cuando los solucionadores atacados envían solicitudes, estos dominios devuelven flujos lentos de paquetes aleatorios, que inmovilizan los recursos del solucionador.

Ataque CPE basado en red de robots (botnet): estos ataques se realizan usando dispositivos CPE (equipos locales del cliente, hardware otorgado por los proveedores de servicios para que lo usen sus clientes, como módems, enrutadores, cajas de cables, etc.). Los atacantes comprometen a los CPE y los dispositivos se convierten en parte de una red de robots (botnet), que se utiliza para llevar a cabo ataques de subdominio aleatorios contra un sitio o un dominio.

¿Qué es DNSSEC?

Las extensiones de seguridad de DNS (DNSSEC) son un protocolo de seguridad creado para mitigar este problema. DNSSEC protege contra los ataques firmando datos digitalmente para asegurar su validez. Para garantizar una búsqueda segura, la firma debe hacerse en cada nivel del proceso de búsqueda de DNS.

Este proceso de firma es similar a cuando alguien firma un documento legal con un bolígrafo; esa persona firma con una firma única que nadie más puede crear, y un tribunal de expertos puede examinar esa firma y verificar si ese documento lo firmó esa persona. Estas firmas digitales garantizan que no se hayan manipulado estos datos.

DNSSEC implementa una política de firma digital jerárquica en todas las capas de DNS. Por ejemplo, en el caso de una búsqueda de "google.com", un servidor DNS raíz firmaría una clave para el servidor de nombres .COM y el servidor de nombres .COM entonces firmaría una clave para el servidor de nombres autoritativo de google.com.

Aunque siempre es preferible la seguridad mejorada, DNSSEC está diseñado para ser compatible con versiones anteriores, para garantizar que las búsquedas tradicionales de DNS se sigan resolviendo correctamente, aunque sin la seguridad añadida. Se supone que DNSSEC se combina con otras medidas de seguridad, como SSL/TLS, como parte de una estrategia integral de seguridad.

DNSSEC crea una línea de confianza padre-hijo que recorre todo el trayecto hasta la zona raíz. Esta cadena de confianza no se puede comprometer en ninguna capa de DNS, en caso contrario la solicitud se expondrá a un ataque en la ruta de acceso.

Para cerrar la cadena de confianza, la propia zona de raíz tiene que ser validada (en caso de que esté libre de manipulación o fraude) y esto generalmente se hace usando la intervención humana. En la denominada ceremonia de firma de zona raíz, personas seleccionadas de todo el mundo se encuentran para firmar la raíz DNSKEY RRset de forma pública y auditada.

Aquí se explica de forma más detallada el funcionamiento de DNSSEC >>>

¿Qué otras formas de protección hay contra los ataques basados en DNS?

Además del DNSSEC, el operador de una zona DNS puede tomar medidas adicionales para proteger sus servidores. La acumulación de infraestructura es una estrategia sencilla para superar los ataques DDoS. En pocas palabras, si tu servidor de nombres puede gestionar varias veces más tráfico de lo que esperas, será más difícil que un ataque basado en volumen lo sobrecargue. Las organizaciones pueden conseguir esto al aumentar la capacidad total de tráfico de su servidor DNS, al establecer múltiples servidores DNS redundantes y mediante el uso de load balancing para dirigir las solicitudes de DNS a servidores en buen estado cuando uno empiece a funcionar mal.

Otra estrategia sigue siendo un firewall DNS.

¿Qué es DNS Firewall?

Un DNS firewall es una herramienta que ofrece diversos servicios de seguridad y funcionamiento para los servidores DNS. El DNS firewall se ubica entre un solucionador recursivo del usuario y el servidor de nombres autoritativo del sitio web o el servicio al que tratan de acceder. El firewall puede ofrecer servicios de limitación de velocidad para cerrar el acceso a los atacantes que intentan sobrecargar el servidor. Si el servidor experimenta un tiempo de inactividad por un ataque o cualquier otro motivo, el DNS firewall podrá mantener en funcionamiento el sitio o servicio del operador sirviendo respuestas DNS desde la caché.

Además de sus funciones de seguridad, el DNS firewall también puede ofrecer soluciones de funcionamiento tales como búsquedas de DNS más rápidas y costes de ancho de banda reducidos para el operador de DNS. Más información sobre el DNS firewall de Cloudflare.

DNS como una herramienta de seguridad

Los solucionadores de DNS también se pueden configurar para ofrecer soluciones de seguridad para usuarios finales (personas que navegan en Internet). Algunos solucionadores de DNS ofrecen funciones tales como filtración de contenidos, que puede bloquear sitios conocidos de distribución de malware y spam, y protección ante redes de robots (botnet), que bloquea la comunicación con redes de robots (botnet) conocidas. Muchos de estos solucionadores de DNS protegidos son de uso gratuito y el usuario puede cambiar a uno de estos servicios de DNS recursivos modificando una simple configuración en su enrutador local. El DNS de Cloudflare pone énfasis en la seguridad.

¿Las consultas de DNS son privadas?

Otro problema importante de seguridad de DNS es la privacidad del usuario. Las consultas de DNS no están encriptadas. Aunque los usuarios utilicen un solucionador de DNS como 1.1.1.1 que no rastree sus actividades, las consultas de DNS se mueven por Internet en texto plano. Esto significa que cualquiera que intercepte la consulta puede ver los sitios web que visita el usuario.

Esta falta de privacidad supone un impacto en la seguridad y, en algunos casos, en los derechos humanos; si las consultas de DNS no son privadas, es más fácil para los gobiernos censurar Internet y para los atacantes acechar el comportamiento en línea de los usuarios.

DNS sobre TLS y DNS sobre HTTPS son dos estándares para encriptar las consultas de DNS para evitar que personas externas puedan leerlas.

¿Cloudflare ofrece seguridad de DNS?

Los servicios de DNS de Cloudflare vienen con una amplia variedad de funciones de seguridad incorporadas, como DNSSEC, mitigación de DDoS, funcionalidad multi-DNS y load balancing.