Comandos Nmap con ejemplos
Nmap (Network Mapper) es una herramienta de seguridad gratuita y de código abierto que se utiliza para el escaneo de redes. Algunas de las características principales de Nmap son el escaneo de puertos abiertos, el descubrimiento y la seguridad de servicios y la auditoría de vulnerabilidades.
Nmap se usa más comúnmente a través de una interfaz de línea de comandos y está disponible para muchos sistemas operativos diferentes, como Ubuntu, CentOS, Redhat, Free BSD y Mint.
En este tutorial, veremos algunos de los comandos de Nmap más utilizados con algunos ejemplos.
Instalar NMAP
Sea predeterminado, nmap no está instalado en la mayoría de las distribuciones de Linux como Debian, Ubuntu, Hat, CentOS y Fedora. Pero está disponible en yum y apt repo para una fácil instalación.
Los siguientes comandos instalan nmap en Linux:
Sistemas basados en CentOS y Redhat
$ sudo yum install nmap
En sistemas basados en Ubuntu y Debian
$ sudo apt-get install nmap
1. Escanear host específico
Para escanear un host específico (esto supone que ya tiene la IP o el nombre de host del host) y revelar información básica, use el comando:
$ nmap IP-address
Por ejemplo,
$ nmap 192.163.43.103
El comando anterior es rápido y genera resultados en poco tiempo
También puede escanear usando el nombre de host en lugar de la dirección IP, por ejemplo
$ nmap ubuntu-server
Para escanear un rango de direcciones IP, use la sintaxis
$ nmap 192.163.43.1-103
El comando escaneará todos los hosts desde IP 192.168.43.1 to 192.168.43.103
2. Realice un escaneo completo en un sistema
Puede revelar toda la información sobre un sistema host utilizando el -A
bandera como se muestra a continuación. Esto revelará toda la información relacionada con el sistema host, como el sistema operativo subyacente, los puertos abiertos, los servicios en ejecución y sus versiones, etc.
$ nmap -A 192.163.43.103
En el resultado, puede ver que el comando realiza la detección del sistema operativo y del servicio, brindándole información detallada, como el tipo de servicio y su versión, y el puerto en el que se está ejecutando. Por lo general, el comando tarda un poco en ejecutarse, pero es completo y le brinda todo lo que necesita sobre el sistema host en particular.
3. Escaneo de un puerto en particular
Para escanear un puerto específico y verificar si está abierto, use el indicador -p en la siguiente sintaxis:
$ nmap -p port_number IP-address
Por ejemplo, para escanear el puerto 80 en un sistema host, ejecute:
$ nmap -p 80 192.168.43.103
Para escanear un rango de puertos, por ejemplo entre 80-433, use la sintaxis:
$ nmap -p 25-443 192.168.43.13 or $ nmap -p 80,443 192.168.43.13
4. Busque el nombre del servicio de host y su versión
Para comprobar la información básica sobre los servicios que se ejecutan en un host, utilice el -sV
bandera como se muestra:
$ nmap -sV 192.168.43.103
5. Escaneo de una subred de red completa
Para escanear dispositivos en una subred de red, use la notación CIDR como se muestra
$ nmap 192.168.43.0/24
6. Excluir un host específico en el análisis
A medida que realiza un escaneo completo de la red, puede optar por excluir un host específico mediante el --exclude
bandera . En el siguiente ejemplo, excluiremos nuestra máquina Kali Linux de ser escaneada.
$ nmap 192.168.43.* --exclude 192.168.43.8
7. Mostrar interfaces y rutas de host
Para mostrar interfaces y rutas en un host en particular, use el --iflist
bandera como se muestra.
$ nmap 192.168.43.103 --iflist
8. Escanee el host remoto usando TCP ACK y TCP Syn
A veces, los firewalls pueden bloquear las solicitudes ICMP que interfieren con los resultados del análisis. En ese caso, usamos TCP syn (PS) y TCP ACK (PA) para lograr los resultados deseados.
$ nmap -PS 192.168.43.103
$ nmap -PA 192.168.43.103
9. Escanee para detectar la configuración del firewall
Puede usar la herramienta Nmap para realizar un escaneo para mostrar si el firewall está abierto o no como se muestra
$ nmap -sA 192.168.43.223
En primera instancia, el cortafuegos está desactivado y, por tanto, no se está ejecutando. (Los puertos no están filtrados). En la segunda instancia, se habilitó el firewall y las posibilidades de descubrir puertos abiertos serán mínimas.
10. Escaneo de puertos TCP o UDP
Para escanear los puertos TCP que están abiertos en el host, use el -sT
bandera como se muestra:
$ nmap -sT 192.168.43.103
Para escanear puertos UDP, use el -sU
bandera
$ nmap -sU 192.168.43.103
11. Guarde los resultados del análisis en un archivo.
Una vez que haya completado su escaneo, puede guardar los resultados en un archivo de texto usando el indicador -oN y especificando el archivo de salida como se muestra a continuación:
$ nmap -oN scan.txt 192.168.43.103
El archivo se creará en su directorio de trabajo actual. Para ver la vista, simplemente use el comando cat como se muestra:
$ cat results.txt
Además, puede usar el símbolo de redirección (>) mayor que el símbolo para redirigir la salida a un archivo diferente, por ejemplo,
$ nmap 192.168.43.103 > output.txt
12. Escanee con un conjunto de scripts de Nmap
Nmap viene con numerosos y poderosos scripts que se utilizan para escanear vulnerabilidades y, por lo tanto, señalan las debilidades de un sistema. Para obtener la ubicación de los scripts de NSE, simplemente ejecute el comando:
$ locate *nse
Puede cargar un script de Nmap usando el --script
opción como se muestra.
$ nmap -sV --script=mysql-info.nse 192.168.43.103
Para escanear con la mayoría de los scripts predeterminados, use la sintaxis
$ nmap -sC 192.168.43.103
Si está buscando automatización, NSE es la respuesta (motor de scripting NMAP)
Conclusión
Si está buscando automatización, NSE es la respuesta (motor de secuencias de comandos NMAP). Para obtener ayuda con los comandos en Nmap, simplemente ejecute $ nmap -h
. Y eso es todo lo que teníamos para este tema. Esperamos que se sienta cómodo utilizando el comando nmap para escanear su red y descubrir más detalles sobre sus sistemas host.