XUT_ / COURSES / PENETRATION TESTER

Built-in Tools

Esta tarea se enfoca en:

  • whois
  • dig, nslookup, host
  • traceroute/tracert

Antes de empezar a usar whois, vamos a ver los que es WHOIS. WHOIS es un protocolo de petición y respuesta que sigue la especificación RFC 3912. Un servidor WHOIS escucha en el puerto TCP 43 peticiones entrantes. El registro de dominio es responsable de mantener los registros WHOIS para los dominios que asigna. La herramienta whois le pide al servidor WHOIS los registros guardados. En el siguiente ejemplo puedes ver que whois nos ofrece:

  • Registrador del servidor WHOIS
  • URL del registrador
  • Fecha de creación del registro
  • Fecha de actualización del registro
  • Contacto y dirección de la persona registrada (a no ser que se oculte por privacidad)
  • Contacto y dirección del admin (a no ser que se oculte por privacidad)
  • Contacto y dirección de la tecnología (a no ser que se oculte por privacidad)
bash
pentester@TryHackMe$ whois thmredteam.com
[Querying whois.verisign-grs.com]
[Redirected to whois.namecheap.com]
[Querying whois.namecheap.com]
[whois.namecheap.com]
Domain name: thmredteam.com
Registry Domain ID: 2643258257_DOMAIN_COM-VRSN
Registrar WHOIS Server: whois.namecheap.com
Registrar URL: http://www.namecheap.com
Updated Date: 0001-01-01T00:00:00.00Z
Creation Date: 2021-09-24T14:04:16.00Z
Registrar Registration Expiration Date: 2022-09-24T14:04:16.00Z
Registrar: NAMECHEAP INC
Registrar IANA ID: 1068
Registrar Abuse Contact Email: abuse@namecheap.com
Registrar Abuse Contact Phone: +1.6613102107
Reseller: NAMECHEAP INC
Domain Status: clientTransferProhibited https://icann.org/epp#clientTransferProhibited
Registry Registrant ID: 
Registrant Name: Withheld for Privacy Purposes
Registrant Organisation: Privacy service provided by Withheld for Privacy ehf
Registrant Street: Kalkofnsvegur 2 
Registrant City: Reykjavik
Registrant State/Province: Capital Region
Registrant Postal Code: 101
Registrant Country: IS
Registrant Phone: +354.4212434
Registrant Phone Ext: 
Registrant Fax: 
Registrant Fax Ext: 
Registrant Email: 4c9d5617f14e4088a4396b2f25430925.protect@withheldforprivacy.com
Registry Admin ID: 
Admin Name: Withheld for Privacy Purposes
[...]
Tech Name: Withheld for Privacy Purposes
[...]
Name Server: kip.ns.cloudflare.comName Server: uma.ns.cloudflare.com
DNSSEC: unsigned
URL of the ICANN WHOIS Data Problem Reporting System: http://wdprs.internic.net/
>>> Last update of WHOIS database: 2021-10-13T10:42:40.11Z <<<
For more information on Whois status codes, please visit https://icann.org/epp

Como podemos ver arriba, es posible ganar mucha información valiosa con sólo un nombre de dominio. Después de mirar whois, podemos tener suerte y encontrar nombres, direcciones de correo electrónico, direcciones de portales, números de teléfono, además de información técnica. Al final de la query whois, podemos encontrar name servers autoritativos para el dominio en cuestión.

Las queries DNS pueden ser ejecutadas con diferentes herramientas encontradas en nuestros sistemas, especialmente en sistemas de tipo UNIX. Una herramienta común encontrada en sistemas de tipo UNIX o Windows es nslookup. En la siguiente query podemos ver que nslookup usa el servidor DNS por defecto para obtener los registros A y AAAA relacionados con el dominio.

bash
pentester@TryHackMe$ nslookup cafe.thmredteam.com
Server:		127.0.0.53
Address:	127.0.0.53#53

Non-authoritative answer:
Name:	cafe.thmredteam.com
Address: 104.21.93.169
Name:	cafe.thmredteam.com
Address: 172.67.212.249
Name:	cafe.thmredteam.com
Address: 2606:4700:3034::ac43:d4f9
Name:	cafe.thmredteam.com
Address: 2606:4700:3034::6815:5da9

Otra herramienta encontrada en sistemas de tipo UNIX es dig, siglas de Domain Information Groper. La herramienta dig ofrece un montón de opciones de query e incluso nos permite especificar un servidor DNS diferente para usar. Por ejemplo, podemos usar el servidor DNS de Cloudflare: dig @1.1.1.1 tryhackme.com.

bash
pentester@TryHackMe$ dig cafe.thmredteam.com @1.1.1.1

; <<>> DiG 9.16.21-RH <<>> cafe.thmredteam.com @1.1.1.1
;; global options: +cmd
;; Got answer:
;; ->>HEADER<<- opcode: QUERY, status: NOERROR, id: 16698
;; flags: qr rd ra; QUERY: 1, ANSWER: 2, AUTHORITY: 0, ADDITIONAL: 1

;; OPT PSEUDOSECTION:
; EDNS: version: 0, flags:; udp: 4096
;; QUESTION SECTION:
;cafe.thmredteam.com.		IN	A

;; ANSWER SECTION:
cafe.thmredteam.com.	3114	IN	A	104.21.93.169
cafe.thmredteam.com.	3114	IN	A	172.67.212.249

;; Query time: 4 msec
;; SERVER: 1.1.1.1#53(1.1.1.1)
;; WHEN: Thu Oct 14 10:44:11 EEST 2021
;; MSG SIZE  rcvd: 80

La herramienta host es otra alternativa útil para obtener registros DNS de servidores DNS. Considera el siguiente ejemplo:

bash
pentester@TryHackMe$ host cafe.thmredteam.com
cafe.thmredteam.com has address 172.67.212.249
cafe.thmredteam.com has address 104.21.93.169
cafe.thmredteam.com has IPv6 address 2606:4700:3034::ac43:d4f9
cafe.thmredteam.com has IPv6 address 2606:4700:3034::6815:5da9

La herramienta final que viene con todos los sistemas de tipo UNIX es traceroute o tracert en MS Windows. Como indica el nombre, traza la ruta tomada por los paquetes de nuestro sistema al host objetivo. El output de consola debajo muestra que traceroute nos ha dado los saltos de routers que nos conectan al sistema objetivo. Algunos routers no responden a los paquetes mandados por traceroute, por lo que vemos una fila de * en lugar de la dirección IP.

bash
pentester@TryHackMe$ traceroute cafe.thmredteam.com
traceroute to cafe.thmredteam.com (172.67.212.249), 30 hops max, 60 byte packets
 1  _gateway (192.168.0.1)  3.535 ms  3.450 ms  3.398 ms
 2  * * *
 3  * * *
 4  * * *
 5  * * *
 6  * * *
 7  172.16.79.229 (172.16.79.229)  4.663 ms  6.417 ms  6.347 ms
 8  * * *
 9  172.16.49.1 (172.16.49.1)  6.688 ms 172.16.48.1 (172.16.48.1)  6.671 ms 172.16.49.1 (172.16.49.1)  6.651 ms
10  213.242.116.233 (213.242.116.233)  96.769 ms 81.52.187.243 (81.52.187.243)  96.634 ms  96.614 ms
11  bundle-ether302.pastr4.paris.opentransit.net (193.251.131.116)  96.592 ms  96.689 ms  96.671 ms
12  193.251.133.251 (193.251.133.251)  96.679 ms  96.660 ms  72.465 ms
13  193.251.150.10 (193.251.150.10)  72.392 ms 172.67.212.249 (172.67.212.249)  91.378 ms  91.306 ms

En resumen, siempre podemos confiar en:

  • whois para hacer queries a la base de datos WHOIS.
  • nslookup, dig o host para hacer queries de los servidores DNS.

Las bases de datos WHOIS y los servidores DNS tienen información pública disponible y hacer queries a cualquiera no genera tráfico sospechoso.

Además, podemos confiar en Traceroute para descubrir los saltos entre nuestro sistema y el objetivo.