¿Qué es la transferencia de zona DNS?
La transferencia de zona DNS, también conocida como AXFR de tipo de consulta DNS, es un proceso por el cual un servidor DNS pasa una copia de parte de su base de datos a otro servidor DNS. La parte de la base de datos que se replica se conoce como zona.
Una transferencia de zona utiliza el Protocolo de Control de Transmisión (TCP) y adopta la forma de una transacción cliente-servidor.
El cliente que solicita una transferencia de zona puede ser un servidor esclavo o secundario, que solicita datos de un servidor maestro o primario.
¿Cuándo suele producirse una transferencia de zona DNS?
Una transferencia de zona suele producirse cuando se pone en marcha un nuevo servidor DNS como servidor DNS secundario.
Se producirá una transferencia completa de toda la información de la zona para replicar los registros ya existentes para esa zona. Este es un proceso que consume mucho tiempo y recursos. Por ello, se desarrollaron las transferencias incrementales de DNS.
En la transferencia incremental, el servidor recupera sólo los registros de recursos que han cambiado dentro de una zona para que permanezca sincronizado con el servidor DNS primario.
Cuando se utiliza la transferencia incremental se compara el registro SOA para ver si se ha realizado algún cambio. Si el servidor de nombres primario tiene un número de versión SOA superior al del servidor de nombres secundario, se iniciará una transferencia de zona.
Si el número de versión de los registros SOA es el mismo, no se iniciará una transferencia de zona.
Cuando se han realizado cambios en el archivo de zona en el servidor de nombres primario y hay una lista de notificaciones DNS, el servidor de nombres primario notifica inmediatamente al servidor de nombres secundario que el archivo de zona ha sido modificado. A continuación, le indica que inicie una transferencia de zona sin esperar a que expire el intervalo de actualización.
La lista de notificación es una lista de direcciones IP que especifica qué servidores de nombres secundarios tienen permiso para acceder a la información de zona en el servidor de nombres primario con fines de transferencia de zona.
Aquí hay un ejemplo que muestra cómo realizar una transferencia de zona DNS utilizando dig:
Comando:
Aquí, nsztm1.digi.ninja es el servidor de nombres y la transferencia de zona.me es el nombre de dominio.
Estos registros DNS se explican con más detalle a continuación.
Registro SOA
La información almacenada en una zona DNS comienza con un registro SOA (Start Of Authority).
Este registro contiene información sobre:
-
el nombre del servidor
-
nombre del administrador de la zona
-
la versión actual del registro SOA
-
el número de segundos que debe esperar un servidor de nombres secundario antes de buscar cualquier actualización
-
el número de segundos que debe esperar antes de reintentar una transferencia de zona fallida
-
el número máximo de segundos que un servidor de nombres secundario puede utilizar los datos antes de que deban actualizarse o expirar
-
el número de segundos por defecto para el archivo de tiempo de vida (TTL).to-live (TTL) de los registros de recursos.
.
Aquí:
-
zonetransfer.me es el nombre de dominio
-
nsztm1.digi.ninja.es el servidor de nombres primario
-
robin.digi.ninja. representa a la persona encargada del dominio
-
la dirección de correo electrónico (cambiar el primer . por una @)
-
2014101601- El número de serie SOA actual del dominio
-
172800- Número de segundos que debe esperar un servidor de nombres secundario entre la realización de solicitudes de cambio
-
900- Número de segundos que debe esperar un servidor de nombres primario si no se actualiza correctamente
-
1209600-. Número de segundos que un servidor de nombres secundario puede reclamar tener información autorizada
-
3600- TTL mínimo
Registro MX
Un registro de Mail eXchange (registro MX) especifica el servidor de correo responsable de aceptar mensajes de correo electrónico en nombre de un nombre de dominio. Aquí la víctima utiliza el servicio de correo de Google. Se trata de una información útil a la hora de realizar cualquier ataque de ingeniería social.
Registro TXT
Un registro de texto (TXT) es un tipo de registro de recursos en el Sistema de Nombres de Dominio (DNS) que se utiliza para proporcionar la capacidad de asociar un texto arbitrario con un host o nombres, como información legible para el ser humano, la red, el centro de datos u otra información contable.
Los registros TXT pueden contener información valiosa. De este registro TXT, obtuvimos un id de correo electrónico y un número de teléfono.
Registro SRV
Un registro SRV (Servicio) muestra la ubicación del servidor SIP, identifica un servicio mostrando el protocolo, el host y el puerto en el que se ejecuta.
Esto apunta a un servidor llamado _sip._tcp.zonetransfer.me que escucha en el puerto TCP 5060 para el Protocolo de Iniciación de Sesión (SIP) y www.zonetransfer.me es el host que proporciona el servicio. La prioridad dada aquí es 0, y el peso es 0.
Registro A
Un registro mapea un nombre de dominio a su correspondiente dirección IP. Del registro A obtuvimos tres IP del centro de datos y tres IP de la oficina, lo que da un total de 6 objetivos.
CNAME
Un registro de nombre canónico (CNAME) se utiliza para asignar un alias de un nombre de dominio a otro nombre de dominio. A partir de esto, podemos ver un servidor de pruebas y de ensayo.
Impacto de la vulnerabilidad de transferencia de zona DNS
La transferencia de zona DNS no ofrece autenticación. Por lo tanto, cualquier cliente o alguien que se haga pasar por un cliente puede pedir a un servidor DNS una copia de toda la zona.
Esto significa que, a menos que se introduzca algún tipo de protección, cualquiera es capaz de obtener una lista de todos los hosts para el dominio en particular, lo que les da una gran cantidad de vectores de ataque potenciales.
¿Cómo prevenir la vulnerabilidad de transferencia de zona DNS?
- Sólo permita una transferencia de zona desde IPs de confianza. El siguiente es un ejemplo de cómo solucionar esto en el servidor DNS BIND.
Navegue a /etc/named.conf y añada lo siguiente:
- Use Transaction SIGnatures (TSIG) para las transferencias de zona
identifique las vulnerabilidades antes de que los hackers las exploten.