Realizar el Descubrimiento de Hosts con Nmap

NmapNmapBeginner
Practicar Ahora

💡 Este tutorial está traducido por IA desde la versión en inglés. Para ver la versión original, puedes hacer clic aquí

Introducción

En este laboratorio, el objetivo es aprender a realizar la detección de hosts utilizando Nmap. El laboratorio aborda varios comandos de Nmap para la detección de hosts, incluyendo la ejecución de un escaneo de ping en la red 192.168.1.0/24 con la opción -sn para deshabilitar el escaneo de puertos, el uso de ping SYN TCP y ping ACK, y la combinación de diferentes pings. También muestra cómo ver los hosts activos en la terminal Xfce. Además, demuestra la realización de un escaneo de ping en la dirección del localhost mientras se deshabilita el escaneo de puertos.


Skills Graph

%%%%{init: {'theme':'neutral'}}%%%% flowchart RL nmap(("Nmap")) -.-> nmap/NmapGroup(["Nmap"]) nmap/NmapGroup -.-> nmap/port_scanning("Port Scanning Methods") nmap/NmapGroup -.-> nmap/host_discovery("Host Discovery Techniques") nmap/NmapGroup -.-> nmap/target_specification("Target Specification") nmap/NmapGroup -.-> nmap/syn_scan("SYN Scan") nmap/NmapGroup -.-> nmap/firewall_evasion("Firewall Evasion Techniques") subgraph Lab Skills nmap/port_scanning -.-> lab-530184{{"Realizar el Descubrimiento de Hosts con Nmap"}} nmap/host_discovery -.-> lab-530184{{"Realizar el Descubrimiento de Hosts con Nmap"}} nmap/target_specification -.-> lab-530184{{"Realizar el Descubrimiento de Hosts con Nmap"}} nmap/syn_scan -.-> lab-530184{{"Realizar el Descubrimiento de Hosts con Nmap"}} nmap/firewall_evasion -.-> lab-530184{{"Realizar el Descubrimiento de Hosts con Nmap"}} end

Ejecutar un escaneo de ping con nmap -sn 192.168.1.0/24

En este paso, realizaremos un escaneo de ping utilizando Nmap. Un escaneo de ping, también conocido como un escaneo de detección de hosts, es una técnica básica para determinar qué hosts están activos (en línea) en una red. Nmap envía varios sondeos a cada dirección IP en el rango especificado y analiza las respuestas para identificar los hosts activos. La opción -sn en Nmap deshabilita el escaneo de puertos, lo que lo hace más rápido y menos invasivo que un escaneo completo.

192.168.1.0/24 es una notación CIDR que representa una red. /24 significa que los primeros 24 bits de la dirección IP son fijos, definiendo la red, y los 8 bits restantes se utilizan para las direcciones de host dentro de esa red. Esto se traduce en un rango de direcciones IP desde 192.168.1.1 hasta 192.168.1.254.

Para realizar un escaneo de ping en la red 192.168.1.0/24, ejecute el siguiente comando en su terminal:

sudo nmap -sn 192.168.1.0/24

Este comando le dice a Nmap que realice un escaneo de ping en todas las direcciones IP de la red 192.168.1.0/24. sudo es necesario porque Nmap a menudo necesita privilegios elevados para enviar ciertos tipos de paquetes de red.

La salida listará las direcciones IP de los hosts que respondieron a los sondeos de Nmap, lo que indica que están encendidos y en funcionamiento. La salida se verá similar a esto (las direcciones IP y nombres de host específicos variarán según su red):

Starting Nmap 7.80 ( https://nmap.org )
Nmap scan report for 192.168.1.1
Host is up (0.00043s latency).
Nmap scan report for 192.168.1.10
Host is up (0.0023s latency).
Nmap scan report for 192.168.1.20
Host is up (0.0019s latency).
Nmap done: 256 IP addresses (3 hosts up) scanned in 2.54 seconds

Esta salida muestra que Nmap escanearon 256 direcciones IP (toda la red 192.168.1.0/24) y encontró 3 hosts activos.

Deshabilitar el escaneo de puertos con nmap -sn 127.0.0.1

En este paso, usaremos Nmap para realizar un escaneo de ping en la dirección del localhost (127.0.0.1) mientras se deshabilita el escaneo de puertos. El objetivo principal aquí es demostrar cómo usar la opción -sn para realizar específicamente la detección de hosts sin iniciar un escaneo completo de puertos. Esto es útil cuando solo quieres comprobar si un host está activo y evitar escaneos de puertos potencialmente ruidosos o de consumo de tiempo.

127.0.0.1 es la dirección de bucle, también conocida como localhost. Siempre se refiere a la máquina actual. Pingear localhost es una forma rápida de verificar que la interfaz de red está funcionando correctamente.

Para realizar un escaneo de ping en localhost sin escanear puertos, ejecute el siguiente comando en su terminal:

sudo nmap -sn 127.0.0.1

Este comando le dice a Nmap que realice un escaneo de ping en la dirección 127.0.0.1. La opción -sn asegura que Nmap solo realice la detección de hosts y no intente escanear ningún puerto. sudo generalmente es necesario para que Nmap envíe paquetes crudos, aunque en este caso, puede que no sea estrictamente necesario para localhost.

La salida indicará si el host está activo. Debería verse similar a esto:

Starting Nmap 7.80 ( https://nmap.org )
Nmap scan report for localhost (127.0.0.1)
Host is up (0.0000070s latency).
Nmap done: 1 IP address (1 host up) scanned in 0.00 seconds

Esta salida confirma que el localhost (127.0.0.1) está activo y en funcionamiento. Nmap solo realizó un escaneo de ping, como se especificó con la opción -sn, y no escanear ningún puerto.

Utilizar el ping SYN de TCP con nmap -PS 192.168.1.1

En este paso, usaremos Nmap para realizar un escaneo de ping SYN de TCP en un host específico (192.168.1.1). Un ping SYN de TCP envía un paquete SYN de TCP al host destino. Si el host está activo y escuchando en el puerto especificado (o en cualquier puerto por defecto), responderá con un paquete SYN/ACK. Luego, Nmap reinicia la conexión enviando un paquete RST. Esta técnica suele ser más confiable que el ping ICMP porque muchos firewalls bloquean el tráfico ICMP pero permiten el tráfico TCP.

La opción -PS en Nmap especifica que queremos usar un ping SYN de TCP. Por defecto, Nmap envía el paquete SYN al puerto 80. También puede especificar un puerto diferente o una lista de puertos para sondear.

Para realizar un escaneo de ping SYN de TCP en 192.168.1.1, ejecute el siguiente comando en su terminal:

sudo nmap -PS 192.168.1.1

Este comando le dice a Nmap que envíe un paquete SYN de TCP al puerto 80 del host 192.168.1.1. sudo es necesario porque Nmap necesita privilegios elevados para crear y enviar paquetes TCP crudos.

La salida indicará si el host está activo y escuchando en el puerto 80. La salida se verá similar a esto (si el host está activo):

Starting Nmap 7.80 ( https://nmap.org )
Nmap scan report for 192.168.1.1
Host is up (0.0012s latency).
PORT   STATE    SERVICE
80/tcp filtered http

Nmap done: 1 IP address (1 host up) scanned in 0.12 seconds

Esta salida muestra que Nmap envió un paquete SYN de TCP a 192.168.1.1 y recibió una respuesta, lo que indica que el host está activo. El estado filtered para el puerto 80 significa que es probable que un firewall esté bloqueando la conexión, pero el host todavía se considera activo porque respondió a la sonda SYN inicial. Si el host está apagado o no es alcanzable, la salida indicará que el host está apagado.

Realizar un ping ACK con nmap -PA 192.168.1.1

En este paso, usaremos Nmap para realizar un escaneo de ping ACK en un host específico (192.168.1.1). Un ping ACK envía un paquete TCP ACK al host destino. A diferencia del ping SYN, que intenta establecer una conexión, el ping ACK envía un paquete que parece ser parte de una conexión ya establecida. Los firewalls a menudo tienen reglas para manejar los paquetes ACK entrantes de manera diferente a los paquetes SYN, lo que hace útil el ping ACK para evitar algunas configuraciones de firewall.

La opción -PA en Nmap especifica que queremos usar un ping ACK de TCP. Por defecto, Nmap envía el paquete ACK al puerto 80. También puede especificar un puerto diferente o una lista de puertos para sondear.

Para realizar un escaneo de ping ACK de TCP en 192.168.1.1, ejecute el siguiente comando en su terminal:

sudo nmap -PA 192.168.1.1

Este comando le dice a Nmap que envíe un paquete TCP ACK al puerto 80 del host 192.168.1.1. sudo es necesario porque Nmap necesita privilegios elevados para crear y enviar paquetes TCP crudos.

La salida indicará si el host está activo. La salida se verá similar a esto (si el host está activo):

Starting Nmap 7.80 ( https://nmap.org )
Nmap scan report for 192.168.1.1
Host is up (0.0011s latency).
PORT   STATE    SERVICE
80/tcp unfiltered http

Nmap done: 1 IP address (1 host up) scanned in 0.11 seconds

Esta salida muestra que Nmap envió un paquete TCP ACK a 192.168.1.1 y recibió una respuesta, lo que indica que el host está activo. El estado unfiltered para el puerto 80 significa que Nmap pudo enviar el paquete ACK y recibir una respuesta sin interferencia de un firewall. Si el host está apagado o no es alcanzable, la salida indicará que el host está apagado.

Combinar pings con nmap -PS -PA 192.168.1.0/24

En este paso, combinaremos los escaneos de ping SYN y ACK de TCP usando Nmap para descubrir hosts activos en la red 192.168.1.0/24. Combinar diferentes tipos de ping puede aumentar la confiabilidad del descubrimiento de hosts, ya que algunos hosts pueden responder a un tipo de ping pero no a otro debido a las reglas de firewall o a las configuraciones de red.

Al usar las opciones -PS y -PA, Nmap enviará paquetes TCP SYN y TCP ACK a cada host en la red especificada. Esto aumenta las posibilidades de detectar hosts activos, especialmente en entornos con firewalls restrictivos.

Para realizar un escaneo combinado de ping SYN y ACK de TCP en la red 192.168.1.0/24, ejecute el siguiente comando en su terminal:

sudo nmap -PS -PA 192.168.1.0/24

Este comando le dice a Nmap que envíe paquetes TCP SYN y TCP ACK al puerto 80 de cada host en la red 192.168.1.0/24. sudo es necesario porque Nmap necesita privilegios elevados para crear y enviar paquetes TCP crudos.

La salida listará los hosts activos encontrados en la red. La salida se verá similar a esto (la salida real dependerá de los hosts presentes en su red):

Starting Nmap 7.80 ( https://nmap.org )
Nmap scan report for 192.168.1.1
Host is up (0.0010s latency).
Nmap scan report for 192.168.1.2
Host is up (0.0015s latency).
Nmap scan report for 192.168.1.10
Host is up (0.0012s latency).
Nmap done: 256 IP addresses (3 hosts up) scanned in 2.56 seconds

Esta salida muestra que Nmap escanearon la red 192.168.1.0/24 y encontraron tres hosts activos: 192.168.1.1, 192.168.1.2 y 192.168.1.10.

Ver hosts activos en la terminal Xfce

En este paso, revisaremos los comandos que hemos ejecutado en la terminal Xfce para identificar los hosts activos que descubrimos usando Nmap. La terminal Xfce guarda un historial de los comandos que has ejecutado, lo que puede ser útil para revisar tu trabajo y verificar los resultados de tus escanos.

Para ver el historial de comandos en la terminal Xfce, puedes usar el comando history. Este comando mostrará una lista numerada de los comandos que has ejecutado previamente.

Abre una nueva ventana de terminal en Xfce (si no la tienes abierta ya). Luego, escribe el siguiente comando y presiona Enter:

history

Esto mostrará una lista de tus comandos recientes. Desplázate por la lista para encontrar los comandos de Nmap que usaste en los pasos anteriores, específicamente los comandos que usan -sn, -PS y -PA para realizar escanos de ping.

Por ejemplo, deberías ver comandos como:

sudo nmap -sn 192.168.1.0/24
sudo nmap -sn 127.0.0.1
sudo nmap -PS 192.168.1.1
sudo nmap -PA 192.168.1.1
sudo nmap -PS -PA 192.168.1.0/24

Al revisar estos comandos y su salida (que debieras haber anotado en los pasos anteriores), puedes confirmar los hosts activos que se descubrieron en la red. El comando history es una herramienta útil para auditar tu trabajo y asegurarte de que has realizado correctamente los pasos en esta práctica.

Nota: La salida exacta del comando history dependerá de los comandos que hayas ejecutado en tu sesión de terminal.

Resumen

En esta práctica, los participantes aprenden a realizar el descubrimiento de hosts usando Nmap. Comienzan realizando un escaneo de ping en la red 192.168.1.0/24 con la opción -sn para deshabilitar el escaneo de puertos, lo cual es más rápido y menos invasivo. El comando sudo se utiliza para otorgar privilegios elevados para enviar paquetes de red. También aprenden a realizar un escaneo de ping en la dirección del localhost 127.0.0.1 mientras se deshabilita el escaneo de puertos. Además, exploran diferentes tipos de ping, como el ping SYN de TCP con -PS, el ping ACK con -PA, y un ping combinado con -PS -PA, y ven los hosts activos en la terminal Xfce.