Servidor DNS
Están encargados de gestionar los nombres de los dominios de las páginas web. Es decir, su trabajo es crear un vínculo entre el dominio del sitio con su IP (un conjunto de números que identifica jerárquica y lógicamente una interfaz en red a un dispositivo).
De esta manera, cuando se escribe un dominio en un explorador, el servidor lee este requerimiento y regresa la información de la interfaz de la página
¿Qué es DNS?
El sistema de nombres de dominio (DNS) es la agenda telefónica de Internet. Las personas acceden a la información en línea a través de nombres de dominio, tales como nytimes.com o espn.com. Los navegadores web interactúan mediante direcciones de protocolo de Internet (IP). DNS traduce los nombres de dominio a direcciones IP para que los navegadores puedan cargar los recursos de Internet.
Cada dispositivo conectado a Internet tiene una dirección IP única que pueden usar otras máquinas para encontrar el dispositivo. Con los servidores DNS, no es necesario que las personas memoricen direcciones IP, tales como 192.168.1.1 (en IPv4) o nuevas direcciones IP alfanuméricas más complejas, tales como 2400:cb00:2048:1::c629:d7a2 (en IPv6).
¿Cómo funciona DNS?
El proceso de resolución de DNS consiste en convertir un nombre de host (tal como www.example.com) en una dirección IP fácil de usar en un computadora (tal como 192.168.1.1). Se otorga una dirección IP a cada dispositivo en Internet y esa dirección será necesaria para encontrar el dispositivo apropiado de Internet, al igual que se usa la dirección de una calle para encontrar una casa en particular. Cuando un usuario quiere cargar una página web, se debe hacer una traducción entre lo que un usuario escribe en su navegador web (example.com) y la dirección fácil de usar para la máquina que se necesitará para localizar la página web example.com.
Para entender el proceso de la resolución de DNS, es importante conocer los diferentes componentes de hardware entre los que debe pasar una consulta de DNS. Para el navegador web, la búsqueda de DNS se produce "en segundo plano" y no requiere ninguna interacción del computador del usuario, aparte de la solicitud inicial.
Hay 4 servidores DNS que intervienen al cargar un sitio web:
Recursor DNS: el recursor se puede comparar con un bibliotecario al que se le pide que busque un libro específico en alguna parte en una biblioteca. El recursor DNS es un servidor diseñado para recibir consultas de los equipos de los clientes mediante aplicaciones, tales como los navegadores web. En general, el recursor será entonces el responsable de hacer solicitudes adicionales para satisfacer la consulta de DNS del cliente.Servidor de nombres raíz: el servidor raíz es el primer paso para traducir (resolver) nombres de host legibles por los seres humanos en direcciones IP. Se puede comparar a un índice en una biblioteca que apunta a diferentes estantes de libros, por lo general, sirve como referencia para otras ubicaciones más específicas.Servidor de nombres TLD: el servidor de dominio de nivel superior (TLD) se puede comparar con una estantería de libros en una biblioteca. Es el paso siguiente en la búsqueda de una dirección IP específica, y contiene la última parte de un nombre de servidor (en ejemplo.com, el servidor TLD es “com”).Servidor de nombres autorizado: este servidor de nombres final se puede comparar a un diccionario en un estante de libros, en el que un nombre específico se puede traducir a su definición. El servidor de nombres autorizado es la última parada en la consulta del servidor de nombres. Si el servidor de nombres autorizado tiene acceso al registro solicitado, devolverá la dirección IP para el nombre de host solicitado al recursor DNS (el bibliotecario) que hizo la solicitud inicial.
¿Cuál es la diferencia entre un servidor DNS autorizado y una resolución de DNS recursiva?
Ambos conceptos se refieren a servidores (grupos de servidores) que son integrales para la infraestructura de DNS, pero cada uno desempeña un rol diferente y se encuentra en diferentes ubicaciones dentro del trayecto de una consulta de DNS. Una forma de pensar acerca de la diferencia es que la resolución recursiva está al inicio de la consulta de DNS y el servidor de nombres autorizado está al final.
¿Qué es un servidor de raíz DNS?
La administración del Sistema de nombres de dominio (DNS) está estructurada en una jerarquía que utiliza diferentes áreas gestionadas o "zonas", con la zona raíz en la parte superior de dicha jerarquía. Los servidores raíz son servidores de nombres DNS que operan en la zona raíz. Estos servidores pueden responder directamente a las consultas de los registros almacenados o almacenados en caché en la zona raíz, y también pueden remitir otras solicitudes al servidor de dominio de nivel superior (TLD) apropiado. Los servidores TLD son el grupo de servidores DNS que está un paso por debajo de los servidores raíz en la jerarquía DNS, y son una parte integral de la solución de consultas DNS
Durante una consulta DNS sin caché, cada vez que un usuario introduce una dirección web en su navegador, esta acción desencadena una búsqueda DNS, y todas las búsquedas DNS comienzan en la zona raíz Una vez que la búsqueda llega a la zona raíz, la búsqueda bajará en la jerarquía del sistema DNS, alcanzando primero los servidores de TLD, luego los servidores para dominios específicos (y posiblemente los subdominios), hasta que acabe llegando al servidor de nombres autoritativo para el dominio correcto, que contiene la dirección IP numérica del sitio web que se está buscando. Esta dirección IP se devuelve entonces al cliente. Es interesante que, a pesar del número de pasos necesarios, este proceso puede ocurrir muy rápido.
Los servidores raíz son una parte fundamental de la infraestructura de Internet; sin estos no funcionarían ni los navegadores web ni muchas otras herramientas de Internet. Hay 13 direcciones IP diferentes que sirven a la zona raíz de DNS, y existen cientos de servidores raíz redundantes en todo el mundo para gestionar las solicitudes a la zona raíz.
¿Cuáles son los tipos diferentes de servidor de DNS?
Todos los servidores DNS forman parte de alguna de las siguientes cuatro categorías: solucionadores recursivos, servidores de nombres raíz, servidores de nombres de primer nivel y servidores de nombres autoritativos. En una búsqueda clásica de DNS (cuando no hay almacenamiento en caché en juego), hay cuatro servidores de DNS que trabajan juntos en armonía para completar la tarea de entregar la dirección IP al cliente para un dominio específico (el cliente generalmente es un solucionador stub - un solucionador simple integrado en un sistema operativo).
¿Qué son los tipos de consultas de DNS?
En una consulta común de DNS hay tres tipos de consultas. Al usar una combinación de estas consultas, un proceso optimizado para la resolución de DNS puede resultar en una reducción de la distancia recorrida. En una situación ideal, los datos de registro almacenados en la memoria caché estarán disponibles, y permitirán que un servidor de nombre de DNS devuelva una consulta no recursiva.
3 tipos de consultas de DNS:
Consulta recursiva: en una consulta recursiva, un cliente DNS exige que un servidor DNS (en general, una resolución DNS recursiva) responda al cliente con el registro del recurso solicitado o un mensaje de error si la resolución no puede encontrar el registro.Consulta iterativa: en esta situación, el cliente DNS permitirá que un servidor DNS devuelva la mejor respuesta posible. Si el servidor DNS consultado no tiene una coincidencia para el nombre de la consulta, devolverá una referencia a un servidor DNS autorizado para un nivel más bajo del espacio de nombres del dominio. A continuación, el cliente DNS hará una consulta a la dirección de referencia. Este proceso continúa con servidores DNS adicionales por la cadena de consulta hasta que se produzca un error o se supere el tiempo de espera.Consulta no recursiva: por lo general, se produce cuando un cliente de resolución de DNS consulta a un servidor DNS sobre un registro al que tiene acceso, ya sea porque es autorizado para el registro o porque el registro existe dentro de su caché. En general, un servidor DNS almacenará en caché registros de DNS para evitar el consumo de banda ancha adicional y cargar en servidores en sentido ascendente.
¿Qué es un solucionador recursivo de DNS
Un solucionador recursivo (también conocido como recursor de DNS) es la primera parada en una consulta DNS. El solucionador recursivo actúa como intermediario entre un cliente y un servidor de nombres DNS.
La resolución recursiva es la computadora que responde a una solicitud recursiva de un cliente y se toma el tiempo necesario para inspeccionar el registro de DNS. Hace esto mediante una serie de solicitudes hasta que alcanza el servidor de nombres DNS autorizado para el registro solicitado (o se vuelve inactiva o devuelve un error si no encuentra ningún registro). Afortunadamente, las resoluciones de DNS recursivas no siempre tienen que hacer solicitudes múltiples para inspeccionar los registros necesarios para responder a un cliente; el almacenamiento en caché es un proceso de persistencia de datos que ayuda a saltarse las solicitudes necesarias y ofrece antes el registro de recurso solicitado en la búsqueda de DNS.
Tras recibir una consulta DNS de un cliente web, un solucionador recursivo responderá con datos almacenados en caché o enviará una solicitud a un servidor de nombres raíz, seguida de otra solicitud a un servidor de nombres de primer nivel, y luego una última solicitud a un servidor de nombres autoritativos. Después de recibir una respuesta del servidor de nombres autoritativos que contiene la dirección IP solicitada, el solucionador recursivo envía una respuesta al cliente.
Durante este proceso, el solucionador recursivo almacenará en caché la información recibida de los servidores de nombres autoritativos. Cuando un cliente solicite la dirección IP de un nombre de dominio solicitado recientemente por otro cliente, el solucionador puede eludir el proceso de comunicación con los servidores de nombres y enviar al cliente simplemente el registro solicitado desde su caché.
La mayoría de los usuarios de internet usan un solucionador recursivo ofrecido por sus ISP, pero hay otras opciones disponibles, por ejemplo 1.1.1.1 de Cloudflare
Servidor DNS autorizado
Básicamente, un servidor DNS autorizado es un servidor que contiene realmente los registros de recursos DNS y es responsable de ellos. Este es el servidor al final de la cadena de búsqueda de DNS que responderá con el registro del recurso consultado, lo que finalmente permite que el navegador web que hace la solicitud alcance la dirección IP necesaria para acceder a un sitio web u otros recursos web. Un servidor de nombres autorizado puede satisfacer consultas desde sus propios datos sin necesidad de consultar otra fuente, ya que es la fuente final de confianza para ciertos registros de DNS
Es importante mencionar que, en los casos en los que la consulta es para un subdominio, tal como foo.example.com o blog.cloudflare.com, se añadirá un servidor de nombres adicional a la secuencia después del servidor de nombres autorizado, que es el responsable de almacenar el registro CNAME del subdominio
Hay una diferencia fundamental entre muchos servicios de DNS y el que proporciona Cloudflare. Diferentes resoluciones recursivas de DNS, tales como Google DNS, OpenDNS y proveedores, como Comcast, mantienen instalaciones de centro de datos de resoluciones recursivas de DNS. Estas resoluciones permiten consultas rápidas y fáciles mediante clústeres optimizados de sistemas informáticos optimizados para DNS, pero son esencialmente diferentes de los servidores de nombres alojados por Cloudflare.
Cloudflare mantiene servidores de nombres a nivel de infraestructura que son esenciales para el funcionamiento de Internet. Un ejemplo clave es la red de servidor f-root, de cuyo alojamiento es parcialmente responsable Cloudflare. El F-root es uno de los componentes de la infraestructura del servidor de nombres DNS a nivel de raíz responsable de miles de millones de solicitudes en Internet cada día. Nuestra red Anycast nos permite gestionar grandes volúmenes de tráfico de DNS sin interrumpir el servicio.
¿Qué es un servidor de nombres raíz de DNS
Los 13 servidores de nombres raíz de DNS los conocen todos los solucionadores recursivos y son la primera parada de un solucionador recursivo al buscar registros DNS. Un servidor raíz acepta una consulta de solucionador recursivo que incluye un nombre de dominio, y el servidor de nombres raíz responde dirigiendo al solucionador recursivo a un servidor de nombres de primer nivel basado en la extensión de ese dominio (.com, .net, .org, etc.). Los servidores de nombres raíz los supervisa una organización sin ánimo de lucro conocida como Corporación de Internet para la Asignación de Nombres y Números (ICANN).
Ten en cuenta que aunque haya 13 nombres del servidor raíz, eso no implica que haya solo 13 máquinas en el sistema del servidor de nombres raízHay 13 tipos de nombres del servidor raíz, pero hay múltiples copias de cada uno a lo largo de todo el mundo, que usan enrutamiento Anycast para ofrecer respuestas rápidas.Si añadiste todos los casos de servidores de nombres raíz, tendrías 600 servidores diferentes.
¿Por qué solo hay 13 direcciones de servidores raíz de DNS?
Un error común es creer que solo hay 13 servidores raíz en el mundo. En realidad hay muchos más, pero solo se utilizan 13 direcciones IP para consultar las diferentes redes de servidores raíz. Las limitaciones de la arquitectura original de DNS exigen que haya un máximo de 13 direcciones de servidor en la zona raíz. En los primeros tiempos de Internet, solo había un servidor para cada una de las 13 direcciones IP, la mayoría de los cuales estaban en Estados Unidos.
En la actualidad, cada una de las 13 direcciones IP tiene varios servidores, que utilizan el enrutamiento Anycast para distribuir las solicitudes en función de la carga y la proximidad. Ahora mismo hay más de 600 servidores raíz de DNS diferentes distribuidos por todos los continentes.
¿Qué es un servidor de nombres de dominios de primer nivel
Un servidor de nombres de dominios de primer nivel mantiene información para todos los nombres de dominio que comparten una extensión de dominio común, tal como .com, .net, o cualquiera que venga tras el último punto en una url. Por ejemplo, un servidor de nombres de primer nivel .com contiene información para todos los sitios web que terminen en ".com". Si un usuario buscara google.com después de recibir una respuesta de servidor de nombres raíz, el solucionador recursivo enviaría entonces una consulta a un servidor de nombres .com de primer nivel, que respondería señalando al servidor de nombres autoritativo (ver a continuación) para el dominio.
La gestión de servidores de nombres de dominios de primer nivel la realiza la Internet Assigned Numbers Authority (IANA), que es una rama de la ICANN. La IANA divide los servidores de primer nivel en dos grupos principales:
Dominios de primer nivel genéricos: Estos son dominios que no son específicos de países, algunos de los dominios de nivel superior genéricos más conocidos son .com, .org, .net, .edu, y .gov.Dominios de primer nivel de código de país: Estos incluyen todos los dominios que sean específico de un país o estado. Por ejemplo: .uk, .us, .ru y .jp.
De hecho, existe una tercera categor´ía para dominios de infraestructura, pero rara vez se usa. Esta categoría se creó para el dominio .arpa, que era un dominio de transición usado en la creación del DNS moderno; su relevancia actual es principalmente histórica.
¿Qué es un servidor de nombres autoritativos?
Cuando un solucionador recursivo recibe una respuesta de un servidor de nombres de primer nivel, esa respuesta dirigirá al solucionador a un servidor de nombres autoritativo. El servidor de nombres autoritativo suele ser el último paso del solucionador en el recorrido a una dirección IP. El servidor de nombres autoritativos incluye información específica para el nombre de dominio al que sirve (p. ej. google.com) y puede ofrecer un solucionador recursivo con la dirección IP de ese servidor encontrada en el registro DNS A, o si el dominio tiene un registro CNAME (alias), ofrecerá al solucionador recursivo un dominio de alias, en cuyo punto el solucionador recursivo tendrá que realizar una nueva búsqueda de DNS para obtener un registro desde un servidor de nombres autoritativo (a menudo un registro A que incluye una dirección IP). El DNS de Cloudflare distribuye servidores de nombres autoritativos, que vienen acompañados de enrutamiento Anycast para hacerlos más confiables.
¿Quién gestiona los servidores raíz del DNS?
La Corporación de Internet para nombres y números asignados (ICANN) gestiona los servidores de una de las 13 direcciones IP de la zona raíz y delegaba la gestión de las otras 12 direcciones IP a varias organizaciones, como la NASA, la Universidad de Maryland y Verisign, que es la única organización que gestiona dos de las direcciones IP raíz. En realidad, Cloudflare ayuda a proporcionar servicios de DNS Anycast a uno de los servidores raíz, conocido como F-Root; Cloudflare suministra instancias adicionales de F-Root bajo contrato con ISC (el operador de F-Root). Más información sobre cómo Cloudflare da soporte al F-Root.
¿Cómo encuentran los solucionadores los servidores raíz de DNS?
Como la zona raíz del DNS está en la parte superior de la jerarquía del DNS, los solucionadores recursivos no pueden dirigirse a ellos en una búsqueda de DNS. Por ello, todos los solucionadores de DNS tienen una lista de las 13 direcciones IP de los servidores raíz integrada en su software. Siempre que se inicia una búsqueda de DNS, la primera comunicación del recursor es con una de esas 13 direcciones IP.
¿Qué sucede si un servidor raíz de DNS no está disponible?
Gracias al uso del enrutamiento Anycast y a la enorme redundancia, los servidores raíz son muy fiables. Sin embargo, en raras ocasiones, un servidor raíz tendrá que actualizar su dirección IP. En este caso, los solucionadores recursivos pueden seguir utilizando las otras 12 direcciones IP de la zona raíz para realizar búsquedas de DNS hasta que su software se actualice con las direcciones correctas de los 13 servidores. Ya que los solucionadores lo seguirán intentando hasta que lleguen a un servidor raíz que funcione, no se interrumpe el funcionamiento normal de Internet cuando un servidor raíz deja de funcionar. Más información sobre cómo Cloudflare DNS utiliza el enrutamiento Anycast para mejorar la fiabilidad.
DNS secundario vs principal
Los servidores DNS principales son hosts de los archivos de control de zona, mientras que los servidores DNS se usan para la fiabilidad y redundancia.
¿Qué es un servidor DNS principal?
DNS, o el Sistema de nombres de dominio, traduce los nombres de dominio en direcciones IP, para que los usuarios puedan navegar fácilmente a los sitios de Internet sin tener que memorizar largas y específicas cadenas de números y letras.
En este sistema, un servidor DNS principal es un servidor que aloja el archivo de zona principal de un sitio web. Se trata de un archivo de base de datos de texto que contiene toda la información autorizada de un dominio, incluida su dirección IP, la identidad del administrador del dominio y varios registros de recursos. Los registros de recursos enumeran los nombres de dominio junto a sus correspondientes direcciones IP, y pueden adoptar diferentes formas:
Registro A: dirige un dominio a una dirección IPv4Registro AAAA: dirige un dominio a una dirección IPv6Registro MX: asigna un servidor de correo a un dominioRegistro NS: identifica los servidores DNS autoritativos de un dominio
Los servidores principales también son responsables de realizar los cambios necesarios en los registros DNS de una zona. Una vez que el servidor principal ha completado la actualización, puede pasar las solicitudes de cambio a los servidores secundarios.
¿Qué es un servidor DNS secundario?
Los servidores DNS principales incluyen todos los registros de recursos relevantes y gestionan las solicitudes DNS para un dominio. En cambio, los servidores DNS secundarios contienen copias de archivos de zona que son de solo lectura, es decir, que no se pueden modificar. En lugar de obtener su información de los archivos locales, reciben la información pertinente de un servidor principal en un proceso de comunicación conocido como transferencia de zona.
Las transferencias de zona se complican cuando se completan entre varios servidores secundarios. Si se usan varios servidores secundarios, uno de ellos puede ser designado como servidor secundario de nivel superior, para que pueda replicar las copias de los archivos de zona al resto de servidores secundarios.
¿Cómo se configura un servidor DNS principal?
Un administrador de servidores puede elegir designar un servidor DNS como servidor principal o secundario. En algunos casos, un servidor puede ser principal para una zona y secundario para otra.
Aunque cada zona está limitada a un servidor DNS principal, puede tener cualquier número de servidores DNS secundarios. Mantener uno o más servidores secundarios garantiza que las consultas se puedan resolver incluso si el servidor principal deja de responder.
¿Cuáles son las ventajas de utilizar un servidor DNS secundario?
Aunque los servidores DNS secundarios no son necesarios para completar las consultas DNS de un dominio, es una práctica habitual (y obligatoria para muchos registradores) establecer al menos uno.
Usar un servidor DNS secundario tiene dos ventajas principales:
Redundancia y resiliencia: depender de un solo servidor DNS crea un único punto de fallo. Si el servidor principal falla o se ha puesto en peligro por un ataque, los posibles visitantes ya no pueden acceder al dominio deseado. El uso de servidores secundarios genera redundancia y reduce la probabilidad que los usuarios experimenten una interrupción del servicio.Load Balancing: los servidores DNS secundarios pueden compartir la carga de las solicitudes entrantes al dominio, para que no se sobrecargue el servidor principal y provoque una denegación de servicio. Para ello, utilizan DNS round-robin, una técnica de load balancing diseñada para enviar cantidades similares de tráfico a cada servidor.
¿Qué es el DNS dinámico?
DNS dinámico (DDNS) es un servicio que mantiene las direcciones IP actualizadas de forma automática. Es especialmente útil para las propiedades web más pequeñas (sitios web personales, pequeñas empresas, etc.) a las que no se les asignan IP estáticas, sino que alquilan temporalmente las IP a su proveedor de acceso a Internet (ISP).
En lugar de tener que realizar frecuentes cambios manuales en la dirección IP de un dominio mediante el servidor principal, los usuarios pueden emplear el DDNS para actualizar automáticamente sus registros DNS con la dirección IP más actual que se haya asignado a su dominio.
¿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.
¿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 spectrum 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 de DNS más comunes?
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 falsificació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 una resolución 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 rendimiento 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 ponen en riesgo 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 una resolución 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.
¿Cuáles son los pasos en una búsqueda de DNS?
En la mayoría de los casos, DNS se ocupa de que un nombre de dominio se traduzca a la dirección IP apropiada. Para saber cómo funciona este proceso, resulta útil seguir la ruta de una búsqueda de DNS desde un navegador web a través del proceso de búsqueda de DNS, y de regreso. Veamos los pasos.
Nota: A menudo, la información de búsqueda de DNS se almacenará en caché, en forma local dentro de la computadora que realiza la consulta o remota en la infraestructura de DNS. En una búsqueda de DNS, por lo general, hay 8 pasos. Cuando la información de DNS se almacena en caché, se omiten pasos del proceso de búsqueda de DNS, lo que acelera el proceso. El ejemplo a continuación resume los 8 pasos cuando no se almacena nada en caché.
Los 8 pasos en una búsqueda de DNS:
Un usuario escribe “example.com” en un navegador web y la consulta viaja por Internet y es recibida por una resolución DNS recursiva.
A continuación, la resolución consulta un servidor de nombres raíz de DNS (.).
Luego, el servidor raíz responde con la dirección de un servidor DNS de dominios de primer nivel (TLD) (tales como as .com o .net), que almacena la información para sus dominios. Al buscar example.com, nuestra solicitud apuntará hacia el dominio de primer nivel .com.
A continuación, la resolución hará una solicitud al dominio de primer nivel .com.
Luego, el servidor de dominio de primer nivel responderá con la dirección IP del servidor de nombres de dominio, example.com.
Por último, la resolución recursiva envía una consulta al servidor de nombres de dominio.
La dirección IP example.com se devolverá a la resolución desde el servidor de nombres.
A continuación, la resolución de DNS responderá al navegador web con la dirección IP del dominio solicitado inicialmente.
Una vez que los 8 pasos de la búsqueda de DNS han devuelto la dirección IP para example.com, el navegador podrá hacer la solicitud para la página web:
El navegador hará una solicitud de HTTP a la dirección IP.
El servidor en esa IP devuelve la página web para que se procese en el navegador (paso 10)
¿Qué es el caché de DNS? ¿Dónde se produce el caché de DNS?
El objetivo del almacenamiento en caché es guardar datos temporalmente en una ubicación que produzca mejoras en rendimiento y fiabilidad para las solicitudes de datos. El almacenamiento en caché de DNS consiste en almacenar datos más cerca del cliente que los solicita para que la consulta de DNS se pueda resolver antes y se puedan evitar las consultas adicionales más abajo de la cadena de búsqueda de DNS, mejorar de este modo los tiempos de carga y reducir el consumo de banda ancha/CPU. Los datos de DNS se pueden almacenar en caché en diversas ubicaciones; cada una de ellas guardará los registros de DNS durante un período de tiempo determinado por un tiempo de vida (TTL).
Almacenamiento en caché de DNS del navegador
Los navegadores web modernos están diseñados, de forma predeterminada, para almacenar en caché registros de DNS por un período de tiempo establecido. El objetivo aquí es evidente: cuanto más cerca esté el almacenamiento en caché de DNS del navegador web, menos pasos de procesamiento habrá que tomar para verificar el caché y hacer las solicitudes correctas para una dirección IP. Cuando se realiza una solicitud para un registro de DNS, el caché del navegador será la primera ubicación verificada por el registro solicitado.
En Chrome, puedes ver el estado de tu caché de DNS en chrome://net-internals/#dns.
Almacenamiento en caché de DNS a nivel del sistema operativo (SO)
La resolución de DNS a nivel del sistema operativo es la segunda y última parada local antes de que una consulta de DNS deje tu equipo. Al proceso dentro de tu sistema operativo, diseñado para gestionar esta consulta, se le denomina habitualmente “resolución stub” o cliente DNS. Cuando una resolución stub recibe una solicitud de una aplicación, primero comprobará su propio caché para ver si tiene el registro. Si no lo tiene, envía una consulta de DNS (con un marcador recursivo establecido) fuera de la red local a una resolución de DNS recursiva dentro del proveedor de servicios de Internet (ISP).
Cuando la resolución recursiva dentro del ISP recibe una consulta de DNS, como en todos los pasos anteriores, también verificará si la traducción solicitada de la dirección IP al host ya está almacenada dentro de la capa persistente local.
La resolución recursiva también tiene una funcionalidad adicional según los tipos de registros que tenga en su caché:
Si la resolución no tiene los registros A, pero tiene los registros NS para los servidores de nombres autorizados, consultará a estos servidores de nombres directamente, y omitirá varios pasos en la consulta de DNS. Este atajo evita búsquedas desde la raíz y servidores de nombres .com (en nuestra búsqueda para example.com) y ayuda a que la resolución de la consulta de DNS sea más rápida.
Si la resolución no tiene los registros NS, enviará la consulta a los servidores TLD (.com en nuestro caso), y omitirá el servidor raíz.
En el caso improbable de que la resolución no tenga registros apuntando a los servidores TLD, consultará entonces a los servidores raíz. Este evento se produce, en general, tras hacer una purga de caché de DNS.
Descubre qué diferencia al DNS de Cloudflare de otros proveedores de DNS.
Last updated