El Sistema de Nombres de Dominio (DNS) es una de las bases de Internet, pero la mayoría de las personas fuera de las redes probablemente no se dan cuenta de que lo usan todos los días para hacer su trabajo, revisar su correo electrónico o perder el tiempo en sus teléfonos inteligentes.
En su forma más básica, DNS es un directorio de nombres que coinciden con números. Los números, en este caso, son direcciones IP, que las computadoras usan para comunicarse entre sí. La mayoría de las descripciones de DNS usan la analogía de una guía telefónica, lo cual está bien para personas mayores de 30 años que saben qué es una guía telefónica.
Si tiene menos de 30 años, piense en DNS como la lista de contactos de su teléfono inteligente, que relaciona los nombres de las personas con sus números de teléfono y direcciones de correo electrónico. Luego multiplique esa lista de contactos por todos los demás en el planeta.
Una breve historia de DNS
Cuando Internet era muy, muy pequeño, era más fácil para las personas corresponder direcciones IP específicas con computadoras específicas, pero eso no duró mucho ya que más dispositivos y la gente se unió a la creciente red. Todavía es posible escribir una dirección IP específica en un navegador para llegar a un sitio web, pero entonces, como ahora, la gente quería una dirección compuesta de palabras fáciles de recordar, del tipo que reconoceríamos como un nombre de dominio (como networkworld.com) hoy. En la década de 1970 y principios de la de 1980, esos nombres y direcciones fueron asignados por una persona, Elizabeth Feinler en Stanford, quien mantuvo una lista maestra de todas las computadoras conectadas a Internet en un archivo de texto llamado HOSTS.TXT.
Obviamente, esta era una situación insostenible a medida que Internet crecía, sobre todo porque Feinler solo manejaba solicitudes antes de las 6 p.m. hora de California, y se tomó un tiempo libre por Navidad. En 1983, a Paul Mockapetris, investigador de la USC, se le encomendó la tarea de llegar a un compromiso entre varias sugerencias para abordar el problema. Básicamente los ignoró a todos y desarrolló su propio sistema, al que denominó DNS. Si bien obviamente ha cambiado bastante desde entonces, en un nivel fundamental todavía funciona de la misma manera que hace casi 40 años.
Cómo funcionan los servidores DNS
El directorio DNS que hace coincidir el nombre con los números no se encuentra en un solo lugar en algún rincón oscuro de Internet. Con más de 332 millones de nombres de dominio listados a fines de 2017, un solo directorio sería realmente muy grande. Al igual que Internet, el directorio se distribuye por todo el mundo, se almacena en servidores de nombres de dominio (generalmente denominados servidores DNS para abreviar) que se comunican entre sí de forma muy regular para proporcionar actualizaciones y redundancias.
Servidores DNS autoritativos frente a servidores DNS recursivos
Cuando su computadora quiere encontrar la dirección IP asociada con un nombre de dominio, primero realiza su solicitud a un servidor DNS recursivo, también conocido como resolución recursiva< em>. Un resolutor recursivo es un servidor que generalmente es operado por un ISP u otro proveedor externo, y sabe qué otros servidores DNS necesita solicitar para resolver el nombre de un sitio con su dirección IP. Los servidores que realmente tienen la información necesaria se denominan servidores DNS autorizados.
Servidores DNS y direcciones IP
Cada dominio puede corresponder a más de una dirección IP. De hecho, algunos sitios tienen cientos o más direcciones IP que se corresponden con un solo nombre de dominio. Por ejemplo, el servidor al que llega su computadora para www.google.com probablemente sea completamente diferente del servidor al que llegaría alguien en otro país al escribir el mismo nombre de sitio en su navegador.
Otra razón de la naturaleza distribuida del directorio es la cantidad de tiempo que le llevaría obtener una respuesta cuando buscaba un sitio si solo hubiera una ubicación para el directorio, compartida entre millones, probablemente miles de millones. , de personas que también buscan información al mismo tiempo. Esa es una línea larga para usar la guía telefónica.
¿Qué es el almacenamiento en caché de DNS?
Para evitar este problema, la información de DNS se comparte entre muchos servidores. Pero la información de los sitios visitados recientemente también se almacena en caché localmente en las computadoras cliente. Lo más probable es que utilice google.com varias veces al día. En lugar de que su computadora consulte al servidor de nombres DNS para obtener la dirección IP de google.com cada vez, esa información se guarda en su computadora para que no tenga que acceder a un servidor DNS para resolver el nombre con su dirección IP. El almacenamiento en caché adicional puede ocurrir en los enrutadores utilizados para conectar clientes a Internet, así como en los servidores del proveedor de servicios de Internet (ISP) del usuario. Con tanto almacenamiento en caché, la cantidad de consultas que realmente llegan a los servidores de nombres DNS es mucho menor de lo que parece.
¿Cómo encuentro mi servidor DNS?
En términos generales, el proveedor de red establecerá automáticamente el servidor DNS que utilice cuando se conecte a Internet. Si desea ver qué servidores son sus servidores de nombres primarios, generalmente el solucionador recursivo, como se describió anteriormente, existen utilidades web que pueden proporcionar una gran cantidad de información sobre su conexión de red actual. Browserleaks.com es bueno y proporciona mucha información, incluidos sus servidores DNS actuales.
¿Puedo usar DNS 8.8.8.8?
Es importante tener en cuenta, sin embargo, que aunque su ISP establecerá un servidor DNS predeterminado, usted no tiene la obligación de usarlo. Algunos usuarios pueden tener motivos para evitar el DNS de su ISP; por ejemplo, algunos ISP usan sus servidores DNS para redirigir las solicitudes de direcciones inexistentes a páginas con publicidad.
Si desea una alternativa, puede dirigir su computadora a un servidor DNS público que actuará como un solucionador recursivo. Uno de los servidores DNS públicos más destacados es el de Google; su dirección IP es 8.8.8.8. Los servicios de DNS de Google tienden a ser rápidos, y aunque existen ciertas dudas sobre los motivos ocultos que tiene Google para ofrecer el servicio gratuito, en realidad no pueden obtener más información de usted que no obtengan ya de Chrome. Google tiene una página con instrucciones detalladas sobre cómo configurar su computadora o enrutador para conectarse al DNS de Google.
Cómo el DNS agrega eficiencia
El DNS está organizado en una jerarquía que ayuda a que todo funcione de manera rápida y sin problemas. Para ilustrar, supongamos que desea visitar networkworld.com.
La solicitud inicial de la dirección IP se realiza a un solucionador recursivo, como se mencionó anteriormente. El solucionador recursivo sabe qué otros servidores DNS necesita solicitar para resolver el nombre de un sitio (networkworld.com) con su dirección IP. Esta búsqueda conduce a un servidor raíz, que conoce toda la información sobre los dominios de nivel superior, como .com, .net, .org y todos los dominios de países como .cn (China) y .uk (Reino Unido). Los servidores raíz están ubicados en todo el mundo, por lo que el sistema generalmente lo dirige al más cercano geográficamente.
Una vez que la solicitud llega al servidor raíz correcto, va a un servidor de nombres de dominio de nivel superior (TLD), que almacena la información para el dominio de segundo nivel, las palabras utilizadas antes de llegar a .com, .org , .net (por ejemplo, esa información para networkworld.com es "networkworld"). La solicitud luego va al servidor de nombres de dominio, que contiene la información sobre el sitio y su dirección IP. Una vez que se descubre la dirección IP, se envía de vuelta al cliente, que ahora puede usarla para visitar el sitio web. Todo esto toma meros milisegundos.
Debido a que DNS ha estado funcionando durante más de 30 años, la mayoría de la gente lo da por sentado. La seguridad tampoco se consideró al construir el sistema, por lo que los piratas informáticos han aprovechado al máximo esto, creando una variedad de ataques.
Ataques de reflexión de DNS
Los ataques de reflexión de DNS pueden abrumar a las víctimas con un gran volumen de mensajes de los servidores de resolución de DNS. Los atacantes solicitan archivos DNS grandes de todos los solucionadores de DNS abiertos que pueden encontrar y lo hacen utilizando la dirección IP falsificada de la víctima. Cuando los resolutores responden, la víctima recibe una avalancha de datos de DNS no solicitados que abruman sus máquinas.
Envenenamiento de caché de DNS
El envenenamiento de caché de DNS puede desviar a los usuarios a sitios web maliciosos. Los atacantes logran insertar registros de direcciones falsas en el DNS, de modo que cuando una posible víctima solicita una resolución de dirección para uno de los sitios envenenados, el DNS responde con la dirección IP de un sitio diferente, uno controlado por el atacante. Una vez en estos sitios falsos, las víctimas pueden ser engañadas para que den sus contraseñas o sufran descargas de malware.
Agotamiento de recursos de DNS
Los ataques de agotamiento de recursos de DNS pueden obstruir la infraestructura de DNS de los ISP, impidiendo que los clientes del ISP accedan a sitios en Internet. Esto lo pueden hacer los atacantes que registran un nombre de dominio y usan el servidor de nombres de la víctima como el servidor autorizado del dominio. Entonces, si un solucionador recursivo no puede proporcionar la dirección IP asociada con el nombre del sitio, le preguntará al servidor de nombres de la víctima. Los atacantes generan una gran cantidad de solicitudes para su dominio y lanzan subdominios inexistentes para arrancar, lo que lleva a que se dispare un torrente de solicitudes de resolución en el servidor de nombres de la víctima, abrumándolo.
¿Qué es DNSSec?
Extensiones de seguridad de DNS es un esfuerzo por hacer que la comunicación entre los distintos niveles de servidores involucrados en las búsquedas de DNS sea más segura. Fue ideado por la Corporación de Internet para la Asignación de Nombres y Números (ICANN), la organización a cargo del sistema DNS.
ICANN se dio cuenta de las debilidades en la comunicación entre los servidores de directorio de nivel superior, segundo y tercer nivel de DNS que podrían permitir a los atacantes secuestrar búsquedas. Eso permitiría a los atacantes responder a las solicitudes de búsqueda de sitios legítimos con la dirección IP de los sitios maliciosos. Estos sitios podrían cargar malware a los usuarios o llevar a cabo ataques de phishing y pharming.
DNSSEC solucionaría esto haciendo que cada nivel del servidor DNS firme digitalmente sus solicitudes, lo que garantiza que los atacantes no se apoderen de las solicitudes enviadas por los usuarios finales. Esto crea una cadena de confianza para que en cada paso de la búsqueda se valide la integridad de la solicitud.
Además, DNSSec puede determinar si existen nombres de dominio y, si no es así, no permitirá que ese dominio fraudulento se entregue a solicitantes inocentes que buscan resolver un nombre de dominio.
A medida que se crean más nombres de dominio y más dispositivos continúan uniéndose a la red a través de dispositivos de Internet de las cosas y otros sistemas "inteligentes", y a medida que más sitios migran a IPv6, será necesario mantener un ecosistema de DNS saludable. El crecimiento de big data y análisis también genera una mayor necesidad de gestión de DNS.
SIGRed: una falla de DNS que se puede usar como gusano asoma la cabeza
El mundo observó bien recientemente el tipo de caos que las debilidades en el DNS podrían causar con el descubrimiento de una falla en los servidores DNS de Windows. El agujero de seguridad potencial, denominado SIGRed, requiere una cadena de ataque compleja, pero puede explotar servidores DNS de Windows sin parches para instalar y ejecutar código malicioso arbitrario en los clientes. Y el exploit es "gusano", lo que significa que puede propagarse de una computadora a otra sin intervención humana. La vulnerabilidad se consideró lo suficientemente alarmante como para que las agencias federales de EE. UU. tuvieran solo unos días para instalar los parches.
DNS sobre HTTPS: un nuevo panorama de privacidad
Al momento de escribir este artículo, el DNS está al borde de uno de los mayores cambios en su historia. Google y Mozilla, que juntos controlan la mayor parte del mercado de navegadores, están alentando un movimiento hacia DNS sobre HTTPS, o DoH, en el que las solicitudes de DNS se cifran mediante el mismo protocolo HTTPS que ya protege la mayor parte del tráfico web. En la implementación de Chrome, el navegador verifica si los servidores DNS son compatibles con DoH y, si no lo son, redirige las solicitudes de DNS al 8.8.8.8 de Google.
Es un movimiento no exento de controversia. Paul Vixie, quien realizó gran parte del trabajo inicial en el protocolo DNS en la década de 1980, llama a la medida un "desastre" para la seguridad: la TI corporativa tendrá muchas más dificultades para monitorear o dirigir el tráfico DoH que atraviesa su red, por ejemplo. Aún así, Chrome es omnipresente y DoH pronto se activará de forma predeterminada, por lo que veremos qué depara el futuro.
(Keith Shaw es ex editor sénior de Network World y un galardonado escritor, editor y revisor de productos que ha escrito para muchas publicaciones y sitios web alrededor del mundo.)
(Josh Fruhlinger es un escritor y editor que vive en Los Ángeles).
Únase a las comunidades de Network World en Facebook y LinkedIn para comentar sobre los temas que más le preocupan.