Fingerprinting - Recopilación Activa con nmap

A la hora de obtener información sobre un host, podemos utilizar diferentes técnicas de recopilación: pasivas, semipasivas o activas, en función del nivel de intrusión que se quiera realizar. En esta ocasión vamos a ver un técnica de recopilación activa, concretamente con nmap.

nmap es una potente herramienta con la que podremos obtener mucha información sobre un host o sobre una red completa, pero debemos tener en cuenta que esta técnica utiliza procedimientos intrusivos (algunos más que otros) y que podrían ser detectables. Para el ejemplo que vamos a ilustrar, utilizaremos un laboratorio con las siguientes máquinas:

  • Kali Linux 2021.3 como equipo atacante. Dirección IP en los ejemplos: 192.168.152.128.
  • Metasploitable 3 Linux como objetivo (este puede ser descargado e instalado siguiendo las instrucciones de: https://github.com/rapid7/metasploitable3). Dirección IP en los ejemplos: 192.168.152.129.

Vamos a ver diferentes opciones de escaneo que tenemos con nmap:

  • nmap -sn 192.168.152.0/24: Con esta opción lanzaremos un sondeo contra la red completa probando la conexión TCP con el puerto 80 y 443. Si este mismo comando lo lanzamos con sudo o como root, utilizará el protocolo ARP. En la siguiente imagen, vemos la salida de nmap con el usuario kali, y a continuación con sudo. En esta última, obtenemos la dirección MAC de los hosts detectados.

  •  sudo nmap -sS 192.168.152.129. Aquí realizaremos un escaneo de puertos SYN TCP, y como podemos ver, requiere de privilegios para poder ejecutarlo.
 
  • nmap -PS 192.168.152.129. Escaneo de puertos como el ejemplo anterio, pero aquí realiza una conexión completa, por lo que es más intrusivo. En esta ocasión no requiere ser lanzados con sudo.

  • nmap -sT 192.168.152.129. Escaneo TCP Connect. Este tipo de escaneos realiza una conexión handshake completa, tampo requiere sudo. Si en vez de utilizar la opción -sT y utilizamos -sU, estaremos haciendo una conexión UDP. Si sólo queremos realizar el escaneo sobre un puerto en concreto, tendremos que añadir la opción -p seguido del puerto.
  • sudo nmap -O 192.168.152.129. Con la opción -O conseguiremos obtener la versión del SO. Esta opción es más instrusiva, también podemos añadir la opción -v (verbose) para obtener más información.
 
  •  nmap -sV 192.168.152.129. Conseguiremos obtener la versión de los servicios detectados, ya que no siempre el servicio se corresponde con el puerto estándard. Con esta opción, se realiza una conexión y analiza el banner para comprobar la versión del servicio.
 
  • sudo nmap -sS -p 80 --script=http-server-header 192.168.152.129. También podemos hacer uso de los scripts de nmap (se encuentran en /usr/share/nmap/scripts) para obtener más información. Por ejemplo, escaneando el puerto 80 y analizando las cabeceras http-server, podemos obtener la versión del servicio http.
 
Bien, esto son sólo algunos ejemplos de las posibilidades que nos brinda nmap para realizar una recopilación activa de los hosts y sus servicios.
 

Comentarios

Entradas populares de este blog

Protección GRUB