¿Qué es DNSSEC?

Aprende qué es DNSSEC y cómo puedes usarlo para agregar una capa adicional de protección para los usuarios de tus sitios web y aplicaciones.

Rafael Rigues - Technical Researcher
¿Qué es DNSSEC?

DNSSEC (Domain Name System Security Extensions, extensiones de seguridad para el sistema de nombres de dominio) es un conjunto de extensiones que se basa en la especificación original del DNS. Estas añaden funciones de seguridad al que es uno de los servicios pilares de Internet, dificultando la ejecución de ataques que puedan perjudicar a los usuarios, ya sean particulares o empresas.

Pero antes de que podamos explicar qué es DNSSEC, debemos entender qué es DNS, su importancia y las razones para preocuparse por su seguridad.

¿Qué es DNS?

Cuando uno abre un navegador y escribe la dirección de un sitio web, suceden muchas cosas tras bambalinas. Todas las computadoras conectadas a Internet se comunican utilizando el Protocolo de Internet (IP), donde cada máquina tiene un identificador conocido como “dirección IP”.

Una computadora siempre usa una dirección IP para establecer una conexión con otra. En el caso de la versión 4 del protocolo IP (IPv4), esta dirección se representa mediante una secuencia numérica de hasta 12 dígitos, como 192.168.1.102.

En la versión 6 (IPv6) del protocolo, la dirección es una secuencia hexadecimal de hasta 32 caracteres, como fe80::1c4a:8111:b690:bf18. Esto hace posible tener una cantidad mucho mayor de direcciones, lo cual es necesario dado el número cada vez mayor de dispositivos conectados a Internet.

Y aquí radica el problema: los humanos no somos muy buenos memorizando secuencias numéricas. Los números de teléfono son un buen ejemplo de esto: a muchas personas les resultaría difícil recordar los números de las cinco personas con las que hablan de manera más frecuente. ¡Ahora imagina memorizar toda tu lista de contactos o todas las direcciones IP de tus sitios web favoritos!

Para solucionar la cuestión de los teléfonos, se inventó la guía telefónica. Esos directorios impresos contenían el nombre y el número de teléfono de todos los suscriptores de la compañía telefónica en una ciudad o región, en orden alfabético por apellido, lo que facilitaba su búsqueda.

Por ejemplo, para encontrar el número de teléfono de “Pedro González”, bastaba con abrir el libro en la página “G” y buscar “González”. Las guías telefónicas han pérdido vigencia en estos días, pero la lista de contactos de tu celular juega un papel similar.

DNS es una “guía telefónica” para Internet

El DNS (Domain Name System, sistema de nombres de dominio) es una estructura jerárquica que funciona como una “guía telefónica” para Internet. Los servidores DNS mantienen registros con las direcciones IP de las computadoras conectadas a la red, asociadas con un nombre de dominio más fácil de recordar y trabajan con los dos formatos de registro.

Cuando escribes el nombre de dominio www.google.com en un navegador, tu computadora consulta el servidor DNS de tu proveedor de servicios de Internet, el cual envía una respuesta indicando que las direcciones IP correspondientes son, por ejemplo, 142.250.218.4 (IPv4) o 2800:3f0 :4001:811::200 (IPv6). Así, el navegador sabe con quién debe establecer una conexión para solicitar el contenido del sitio web.

Durante el proceso normal de resolución de DNS, un cliente envía una URL al servidor (1), que devuelve una dirección IP (2) utilizada para establecer una conexión (3).
Imagen: Azion Technologies.

Además de ser más conveniente para las personas, este sistema tiene otras ventajas prácticas: un cambio en la dirección IP de un servidor es invisible para los usuarios: el nombre de dominio sigue siendo el mismo y los servidores DNS solo necesitan actualizarse con la nueva dirección.

Asimismo, múltiples direcciones IP pueden responder por un mismo dominio, indicándose el servidor DNS más adecuado para el usuario en función de factores como la distancia geográfica o el tiempo de respuesta, en lo que se conoce como Intelligent DNS1.

¿Podemos confiar en las respuestas de un servidor DNS?

Cuando un servidor DNS no tiene ningún registro correspondiente a un dominio, consulta a otros servidores DNS de forma recurrente hasta obtener una respuesta. Luego, esta respuesta se almacena en caché para encontrar futuras consultas rápidamente.

Aquí radica una falla crucial en el sistema DNS: por diseño, las respuestas del servidor no se validan. Un atacante puede “engañar” a un servidor DNS, haciéndose pasar por otro servidor legítimo en un nivel jerárquico superior y enviar una respuesta con datos falsos sobre un dominio, como una dirección IP bajo su control.

Durante un ataque, el cliente envía una URL (1) y el servidor devuelve una dirección IP (2). Sin embargo, un delincuente puede interceptar los datos y devolver una respuesta fraudulenta con una IP diferente (3), que dirige al cliente a un servidor bajo su control (4).
Imagen: Azion Technologies.

Así, todo el tráfico de usuarios del servidor engañado que vaya a ese dominio será redirigido a la dirección controlada por el atacante. De esta forma, puede enviar contenido malicioso o robar datos. Este tipo de ataque se conoce como “DNS Spoofing”.

DNS Spoofing, una amenaza real

En 2018, los usuarios de más de 70 modelos de enrutadores de marcas populares en Brasil fueron víctimas de un malware llamado GhostDNS, que modificaba la configuración del enrutador y lleva a usar un servidor DNS malicioso.

Al acceder a los sitios web de los grandes bancos, los usuarios eran redirigidos a direcciones IP bajo el control de los delincuentes, con sitios web falsos donde les robaban sus credenciales de acceso. Una encuesta de Netlab2 determinó que cerca de 100 000 enrutadores en Brasil estaban infectados, redirigiendo el tráfico de los 50 sitios más populares del país, incluidos bancos e importantes portales de comercio electrónico.

La solución: DNSSEC

Como se mencionó anteriormente, DNSSEC es un conjunto de extensiones que va más allá de las características de DNS originales. Proporciona un mecanismo para autenticar las respuestas de servidores DNS compatibles, que están firmados con una clave criptográfica.

Mediante la comparación de firmas es posible autenticar una respuesta, lo que dificulta la manipulación o falsificación de información y realizar ataques como DNS Spoofing. Un punto importante es que DNSSEC fue diseñado para mantener la compatibilidad con los servidores DNS heredados, que no admitían sus extensiones.

Vale la pena mencionar que DNSSEC no implementa el cifrado de datos, los datos continúan fluyendo en texto claro. Una analogía de esto puede ser un documento con firma notariada: la firma por sí sola garantiza la autenticidad del documento, pero no hace nada para proteger su contenido.

Además de ser una amenaza para los usuarios privados, la falsificación de DNS también puede poner en peligro la infraestructura corporativa. Un servidor comprometido podría redirigir el tráfico de una aplicación, permitiendo que los malhechores la intercepten o la modifiquen antes de que llegue a su destino. Los riesgos van desde la filtración de información de los usuarios, que viola leyes como el Reglamento General de Protección de Datos (GDPR) en la UE, hasta amenazas a la continuidad del negocio.

Al habilitar DNSSEC en el proceso de resolución de DNS de tu infraestructura, te proteges contra amenazas como la falsificación de DNS, lo que eleva el nivel de seguridad ofrecido a tus usuarios y a tu organización.

La Plataforma de Edge Computing de Azion proporciona DNSSEC de forma gratuita con nuestro servicio de Intelligent DNS, lo que agrega una capa adicional de protección para los usuarios finales de los sitios web y las aplicaciones de nuestros clientes.

Para obtener más detalles sobre cómo habilitar esta función, consulta nuestra documentación o entra en contacto con uno de nuestros expertos.

Referencias

1&nbps;Intelligent DNS

Roteadores infectados desviam tráfego de clientes do Itaú, Bradesco, BB e outros bancos

Suscríbete a nuestro boletín informativo