Docly Child

3.2.2. Herramientas terminal Gathering-Net Scanning Kali Linux

Tabla de contenidos:

3.2.2.1. DNS Lookup: dig, nslookup

En anteriores epígrafes se han mostrado herramientas web para realizar DNS Lookup. No obstante, Kali Linux dispone de herramientas de líneas de comandos para realizar consultas y búsquedas de registros sobre dominios en servidores DNS. Algunas de estas herramientas son: dig (Domain Information Grouper), nslookup, host o enum. La información que proporcionan es bastante simular en todos los casos, aunque varía la presentación de la información y al final es cuestión de preferencias. Estas herramientas son útiles para administradores de redes y pueden proporcionar información sobre la red y hosts de una organización.

Nota: Es preciso tener conocimientos acerca del funcionamiento del sistema DNS y los tipos de registros para comprender la información.

Para dig la estructura del comando básico es: dig [opcional: tipo de registro] [opcional:@servidor dns] dominio.tld. Si no se indica un tipo de registro o servidor, por defecto será A y el servidor DNS configurado en el archivo ‘/ etc / resolv.conf’ respectivamente, que responderá a la información que guarda en su caché o irá a buscarla a otro servidor. No obstante, como se indica, se puede hacer apuntar dig hacia un servidor DNS concreto (que puede ser el primario para una zona de dominio o los obtenidos a través de la consulta WHOIS para un dominio). 

				
					dig [<a|ns|mx|cname|soa>] [@<ns.servidordominio.tld>] <dominio.tld >
				
			

A continuación, algunos ejemplos:

  • dig dominio: Consulta para resolución de IP de dominio al servidor configurado con registro A:
Consulta básica dig
  • dig ns dominio: Información sobre servidores autoritativos (registros NS) para la zona de dominio:
Información servidores DNS para el dominio (NS)
  • dig ns @servidor_dns dominio: Información sobre servidores autoritativos (registros NS) para la zona de dominio apuntando a un servidor DNS concreto:
Información servidores DNS para el dominio apuntando a servidor DNS

Con dig también se pueden realizar consultas inversas DNS y obtener información de los registros PTR con la siguiente línea de comandos:

				
					dig [@<ns.servidordominio.tld>] -x <IP>
				
			
Consulta inversa DNS dig

La otra herramienta a mostrar es nslookup, que viene integrado con el software para el servidor DNS de código abierto BIND, que es uno de lo más usados en todo el mundo. Nslookup permite parametrizar el tipo de registro a buscar (con opción any se muestran todos) y el servidor DNS al que realizar la consulta (sino también será el que está configurado en el fichero / etc / resolv.conf):

				
					nslookup [-type=[a,ns,mx,txt,cname,soa,any]] domain.tld [ns.servidordominio.tld]
				
			
nslookup ejemplo

Nota: Acerca de los registros TXT: Permiten registros para diferentes aplicaciones. Por ejemplo: las claves de código que se emplean en la autentificación del dominio en servicios como Google Analytics.

Nslookup también puede emplearse seteando las diferentes opciones, es decir, añadir un parámetro y después realizar la consulta de acuerdo al siguiente esquema:

				
					nslookup {tecla_enter}
> set query=[ns,mx,txt,cname,soa] {tecla_enter}
> set type=tx {tecla_enter}
> domain {tecla_enter}

				
			
Información de servidores correo electrónico con dig y nslookup

3.2.2.1.1. Ataque de transferencia de zonas DNS no autorizadas (axfr)

Como ya se ha indicado en anteriores notas, una transferencia de zona se produce cuando un servidor DNS primario transfiere información a un servidor DNS secundario o esclavo. Estas transferencias de información de zona se producen solo si se ha configurado correctamente en el servidor DNS y para una zona de dominio en concreto. Por defecto está configuración no viene hecha en los servidores DNS, por lo que si el administrador de red no ha parametrizado correctamente el servidor,  se podría dar el caso de exponer información no deseada realizando una petición externa.

En dig, El parámetro “axfr” es quien permite la transferencia de zona del servidor DNS primario al secundario, ya que se usa para sincronizar y actualizar datos de la zona cuando se han producido cambios. La transferencia puede hacerse vía el parámetro axfr, aunque también es posible hacerla de forma incremental, denominada entonces ixfr. Al efectuarse, se puede obtener la transferencia de toda la zona como respuesta. Sin la debida configuración, esto permite a un atacante replicar la base de datos DNS, obteniendo información sensible. Los comandos para efectuar este tipo de ataques son:

				
					dig @<ns.servidordominio.tld <axfr|ixfr> dominio.tld
				
			
Ataque axfr con dig

En todo caso, y aunque siempre vale la pena comprobarlo, este ataque actualmente no resulta de gran utilidad ni tener éxito por el simple hecho de que en una red empresarial los DNS privados y públicos suelen estar diferenciados y no existen transferencias de zona entre dichos servidores.

3.2.2.2. Información de dominios: The Harvester, dmitry

Nota: Ver en sección de OSINT: Herramientas para información de dominios.

3.2.2.3. Trazados de ruta: traceroute

Kali Linux dispone de una herramienta con líneas de comandos para efectuar trazados de ruta, permitiendo parametrizar diferentes opciones. Para comprender el funcionamiento de los trazados de ruta, es necesario leer el epígrafe correspondiente al funcionamiento de esta técnica, que resulta de gran utilidad para los administradores de rutas que básicamente buscan medir los tiempos de espera para la recepción de respuesta de un host dentro de la ruta, ver que trayecto realiza la petición, etc.

Esta herramienta es traceroute. Por defecto, esta herramienta emplea el protocolo ICMP aunque puede  parametrizarse para efectuar esta técnica empleando el protocolo TCP (usando puerto 80). El comando básico consiste en incluir la IP o nombre de host, aunque existen estas opciones principales (n indica número):

				
					traceroute -T -q <n> -w <n> -f <n> -m <n> <host|IP>
				
			

Las opciones de los parámetros indican:

Parámetro

Descripción

-T

Usar trazado de ruta con protocolo TCP puerto 80.

-q <n>

Número de paquetes a enviar a cada host (por defecto son 3).

-w <n>

Tiempo de espera máximo cada vez que se envía un paquete para recepción.

-f <n>

Mostrar información a partir de un determinado hop (salto).

-m <n>

Número máximo de saltos (por defecto 30).

Los ruta obtenida hacia un host pueden verse alterada según la combinación de  parámetros, teniendo en cuenta la implicación de los protocolos de enrutamiento existentes. Siempre es posible obtener información interesante acerca de las conexiones entre routers y la infraestructura implícita. A continuación dos ejemplos para apreciar las diferencias en la información obtenida:

				
					sudo traceroute  -q 2 google.es
sudo traceroute -T -f 3 -q 1 –w 2 google.es

				
			
Ejemplos traceroute