El comando HOST es una sencilla utilidad de interfaz de línea de comandos para realizar la enumeración de DNS.
En la investigación de seguridad y la piratería ética, la enumeración de DNS es la primera etapa de la recopilación de información específica. Este es el proceso de consultar los servidores de nombres para todos los registros DNS potenciales, como detalles del servidor de nombres, direcciones IP, detalles del intercambiador de correo, TTL, etc.
Los atacantes podrían usar potencialmente estas enumeraciones de DNS para inspeccionar los registros de la red interna.
Hay muchas herramientas de reconocimiento de DNS y enumeración en línea en Internet. Sin embargo, la enumeración de DNS se puede lograr fácilmente usando una única utilidad de línea de comando. Ese es el «anfitrión».
En este artículo, cubriremos algunos ejemplos de comandos de host útiles para consultar detalles de DNS.
¡Empecemos!
Instalar en pc
En las máquinas recién instaladas, el comando «HOST» a veces puede no estar disponible de forma predeterminada. Por lo tanto, debe instalarlo manualmente en su sistema. El proceso de instalación es bastante simple.
Todos los comandos relacionados con DNS como nslookup
, dig
y host
Incluido en la biblioteca «bind-utils». Para hacer esto, simplemente escriba el siguiente comando en la terminal.
sudo apt-get install dnsutils -y
Este comando HOST está disponible para MAC y Linux.
uso
Sintaxis general: El comando genérico «host» imprime la sintaxis general del comando y los argumentos que se pueden usar con él, así como una breve descripción de cada argumento.
Salida de muestra:
┌──(geekflare㉿kali)-[~]
└─$ host
Usage: host [-aCdilrTvVw] [-c class] [-N ndots] [-t type] [-W time]
[-R number] [-m flag] [-p port] hostname [server]
-a is equivalent to -v -t ANY
-A is like -a but omits RRSIG, NSEC, NSEC3
-c specifies query class for non-IN data
-C compares SOA records on authoritative nameservers
-d is equivalent to -v
-l lists all hosts in a domain, using AXFR
-m set memory debugging flag (trace|record|usage)
-N changes the number of dots allowed before root lookup is done
-p specifies the port on the server to query
-r disables recursive processing
-R specifies number of retries for UDP packets
-s a SERVFAIL response should stop query
-t specifies the query type
-T enables TCP/IP mode
-U enables UDP mode
-v enables verbose output
-V print version number and exit
-w specifies to wait forever for a reply
-W specifies how long to wait for a reply
-4 use IPv4 query transport only
-6 use IPv6 query transport only
Buscar dirección IP de dominio
Para encontrar la dirección IP de un dominio específico, simplemente pase el nombre de dominio de destino como parámetro después del comando host.
host Target-domain
Salida de muestra:
┌──(geekflare㉿kali)-[~]
└─$ host geekflare.com
geekflare.com has address 104.27.118.115
geekflare.com has address 104.27.119.115
geekflare.com has IPv6 address 2606:4700:20::681b:7673
geekflare.com has IPv6 address 2606:4700:20::681b:7773
geekflare.com mail is handled by 1 aspmx.l.google.com.
geekflare.com mail is handled by 5 alt1.aspmx.l.google.com.
geekflare.com mail is handled by 5 alt2.aspmx.l.google.com.
geekflare.com mail is handled by 10 alt3.aspmx.l.google.com.
geekflare.com mail is handled by 10 alt4.aspmx.l.google.com.
Para una búsqueda completa usando el modo detallado, use -a
o -v
Opciones de bandera.
Salida de muestra:
┌──(geekflare㉿kali)-[~]
└─$ host -a geekflare.com
Trying "geekflare.com"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 24690
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;geekflare.com. IN ANY
;; ANSWER SECTION:
geekflare.com. 3789 IN HINFO "RFC8482" ""
geekflare.com. 3789 IN RRSIG HINFO 13 2 3789 20220307065004 20220305045004 34505 geekflare.com. HW0Lfr5HazPMaACSBHmFqs94usKUljX+kONW/8Q2jwQ1QoAO9DEMjwDX rIQKODGtGnEizj2SzBF98mC2uQr7hQ==
Received 161 bytes from 192.168.1.1#53 in 64 ms
Esta opción (-a) se utiliza para buscar todos los registros de dominio y la información de la zona. También puede observar las direcciones del servidor DNS local que se utilizan para las búsquedas.
realizar una búsqueda inversa
Este comando realiza una búsqueda inversa en una dirección IP y muestra el nombre de host o el nombre de dominio.
Por ejemplo, la sintaxis es la siguiente:
host target-ip-address
Salida de muestra:
┌──(geekflare㉿kali)-[~]
└─$ host dnsleaktest.com
dnsleaktest.com has address 23.239.16.110
┌──(geekflare㉿kali)-[~]
└─$ host 23.239.16.110
110.16.239.23.in-addr.arpa domain name pointer li685-110.members.linode.com.
Si copia y pega la dirección del puntero (li685-110.members.linode.com.) en su navegador web, será redirigido a este sitio web.
Buscar servidores de nombres
Utilice la opción -t para obtener los servidores de nombres. Se utiliza para especificar el tipo de consulta.
Aquí, paso el parámetro -t para encontrar los servidores de nombres para un nombre de dominio específico.
Los registros NS especifican servidores de nombres autorizados.
host -t ns target-domain
Salida de muestra:
┌──(geekflare㉿kali)-[~]
└─$ host -t ns geekflare.com
geekflare.com name server olga.ns.cloudflare.com.
geekflare.com name server todd.ns.cloudflare.com.
consultar un servidor de nombres de dominio
Consultar los detalles de un dominio autorizado específico nombre del servidoruse el siguiente comando.
host target-domain [name-server]
Salida de muestra:
┌──(root💀kali)-[/home/geekflare]
└─# host geekflare.com olga.ns.cloudflare.com. 1 ⨯
Using domain server:
Name: olga.ns.cloudflare.com.
Address: 173.245.58.137#53
Aliases:
geekflare.com has address 104.27.118.115
geekflare.com has address 104.27.119.115
geekflare.com has IPv6 address 2606:4700:20::681b:7773
geekflare.com has IPv6 address 2606:4700:20::681b:7673
geekflare.com mail is handled by 1 aspmx.l.google.com.
geekflare.com mail is handled by 5 alt1.aspmx.l.google.com.
geekflare.com mail is handled by 5 alt2.aspmx.l.google.com.
geekflare.com mail is handled by 10 alt3.aspmx.l.google.com.
geekflare.com mail is handled by 10 alt4.aspmx.l.google.com.
Buscar registros MX de dominio
Obtenga una lista de registros MX (Mail Exchanger) para el dominio.
host -t MX target-domain
Salida de muestra:
┌──(geekflare㉿kali)-[~]
└─$ host -t mx geekflare.com
geekflare.com mail is handled by 1 aspmx.l.google.com.
geekflare.com mail is handled by 5 alt1.aspmx.l.google.com.
geekflare.com mail is handled by 5 alt2.aspmx.l.google.com.
geekflare.com mail is handled by 10 alt3.aspmx.l.google.com.
geekflare.com mail is handled by 10 alt4.aspmx.l.google.com.
Esta registros MX Responsable de dirigir los correos electrónicos al servidor de correo.
Buscar registros TXT de dominio
Obtener una lista de dominios Archivo de texto (Información legible por humanos sobre el servidor de dominio) registro.
host -t txt target-domain
Salida de muestra:
┌──(geekflare㉿kali)-[~]
└─$ host -t txt geekflare.com
geekflare.com descriptive text "google-site-verification=MRSwa454qay1S6pwwixzoiZl08kfJfkhiQIslhok3-A"
geekflare.com descriptive text "google-site-verification=7QXbgb492Y5NVyWzSAgAScfUV3XIAGTKKZfdpCvcaGM"
geekflare.com descriptive text "yandex-verification: 42f25bad396e79f5"
geekflare.com descriptive text "v=spf1 include:_spf.google.com include:mailgun.org include:zcsend.net ~all"
geekflare.com descriptive text "ahrefs-site-verification_8eefbd2fe43a8728b6fd14a393e2aff77b671e41615d2c1c6fc365ec33a4d6d0"
geekflare.com descriptive text "ca3-7fbfaa573ba248ddb17a618e5b46ca01"
Buscar registros SOA de dominio
Obtenga una lista de registros SOA (Inicio de autorización) para un dominio
host -t soa target-domain
Salida de muestra:
┌──(geekflare㉿kali)-[~]
└─$ host -t soa geekflare.com
geekflare.com has SOA record olga.ns.cloudflare.com. dns.cloudflare.com. 2271966690 10000 2400 604800 3600
Use el siguiente comando para comparar registros SOA Todos los servidores de nombres autorizados de una zona específica (una parte específica del espacio de nombres DNS).
host -C target-domain
Salida de muestra:
┌──(geekflare㉿kali)-[~]
└─$ host -C geekflare.com 2 ⨯
Nameserver 173.245.58.137:
geekflare.com has SOA record olga.ns.cloudflare.com. dns.cloudflare.com. 2271966690 10000 2400 604800 3600
Buscar registros CNAME de dominio
CNOMBRE Representa un registro de nombre canónico. Este registro DNS es responsable de redirigir un dominio a otro, lo que significa que asigna el nombre de dominio original a un alias.
Para encontrar el registro DNS CNAME del dominio, use el siguiente comando.
host -t cname target-domain
Salida de muestra:
┌──(geekflare㉿kali)-[~]
└─$ host -t cname geekflare.com
geekflare.com has no CNAME record
Si el nombre de dominio de destino tiene un registro CNAME, se mostrará después de ejecutar el comando.
Encuentre información TTL de dominio
TTL representa el tiempo de supervivencia. Es parte del servidor de nombres de dominio. Los servidores de nombres autorizados lo configuran automáticamente para cada registro DNS.
En términos simples, TTL se refiere a cuánto tiempo un servidor DNS almacena en caché un registro antes de vaciar los datos. Use el siguiente comando para ver la información TTL del nombre de dominio.
host -v -t a target-domain
Salida de muestra:
┌──(root💀kali)-[/home/geekflare]
└─# host -v -t a geekflare.com 1 ⨯
Trying "geekflare.com"
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 2479
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 0
;; QUESTION SECTION:
;geekflare.com. IN A
;; ANSWER SECTION:
geekflare.com. 30 IN A 104.27.119.115
geekflare.com. 30 IN A 104.27.118.115
Received 63 bytes from 192.168.1.1#53 in 60 ms
En conclusión
Espero que este artículo le haya resultado útil para conocer algunos ejemplos útiles de comandos de host para consultar los detalles de DNS.
También puede estar interesado en obtener información sobre herramientas gratuitas en línea para verificar los registros DNS de un nombre de dominio.