opciones de nmap

Instrucciones de Nmap: qué hacen y como aplicarlas.

Traducciòn de publicaciòn original de LinuxHint: https://linuxhint.com/nmap_flags/


Cuando usamos Nmap naturalmente primero llamamos al programa “nmap” y despùes especificamos instrucciones mediante lo que se llama “nmap flags” (instrucciones u opciones, por ejemplo -p) y el objetivo identificado por su IP, host o rango. Habiendo varias formas de definir objetivos a escanear en este tutorial se usan 5:

Escaneo simple pasando un host o IP. Escaneo de rangos de IP usando un guion entre el numero inicial y final dentro del rango 0-255. Escaneo de múltiples objetivos importados desde un archivo. Escaneo de objetivos aleatorios mediante wildcard (*).


Ejemplos

Escaneo simple: nmap X.X.X.X/www.hostname.com

Escaneo de rango: nmap nmap X.X.X.Y-Z/X.X.Y-Z.Y-Z

Escaneo alteatorio: nmap -iR X <FLAG>

Escaneo de toda la subnet: X.X.X.*


Donde: X,Y, Z son reemplazados por números.

Breve introducción a los estados de puertos:

Los resultados de escaneos de puertos pueden reportar 6 estados:

Abierto (Open): el puerto esta abierto y una aplicaciòn escuchando.

Cerrado (Closed): el puerto esta cerrado.

Filtrado (Filtered): un firewall impide a Nmap contactar con el puerto.

Sin filtrar (Unfiltered): El puerto es accesible pero nmap es incapaz de conocer su estado.

Open|filtered: Nmap es incapaz de saber si el puerto esta abierto o filtrado.
Closed|Filtered: Nmap es incapaz de saber si el puerto esta cerrado o filtrado.

NMAP FALGS (Instrucciones de nmap)

-p: el flag o la instrucción -p sirve para especificar uno o varios puertos, o rangos de puertos. Podemos listar puertos separados por comas como en el siguiente ejemplo:

nmap -p 80,22,139 linuxhint.com


Instruyendo a nmap a escanear los puertos 80,22 y 139 de linuxhint.com. Mientras que el puerto http y ssh estan abiertos el de netbios esta cerrado.

En el próximo ejemplo se usa un guion para separar los limites del rango, para escanear puertos desde el 21 al 25 se debe ejecutar:

nmap -p 21-25 linuxhint.com



Opcionalmente se pueden definir puertos por el servicio que ofrecen en vez de numericamente, por ejemplo “nmap -p ssh <IP-del-Objetivo>“.

–open: Esta instrucciòn es para que nmap encuentro puertos abiertos dentro de un rango de direcciones IP. En este ejemplo nmap busca puertos abiertos en direcciones dentro del rango 172.31.1.1-255 (tambièn podemos usar wildcard (*).

nmap –open <IP-rango>

-iL: Otra forma de definir objetivos creando una lista. En la lista los objetivos pueden estar separados por coma, espacios, tabulaciòn o nueva linea. Un ejemplo de nmap usado para escanear multiples objetivos usando una lista llamada “hostslist” que incluye a LinuxHint y otros 2 hosts.

nmap -iL hostslist

–exclude: Esta instrucciòn sirve para excluir una o varias direcciones IP de escaneos cuando definimos rangos o archivos con varios objetivos. En el siguiente ejemplo se usa nuevamente una lista llamada “hostslist¨ para escanear puertos ssh, ftp y sftp pero excluyendo a linuxhint.com:

nmap -p ssh,ftp,sftp -iL hostslist linuxhint –exclude linuxhint.com


-iR: Instruye nmap a escanear hosts aleatoriamente, esta instrucciòn depende de un parametro numerico definiendo cuantos objetivos debe escanear. En el siguiente ejemplo se aplica para escanear puertos http de 50 objetivos generados aleatoriamente, de los cuales nmap solo encontro 2 disponibles.

nmap -p 80 -iR 50

En el siguiente ejemplo se instruye a Nmap a generar 200 objetivos aleatorios para escanear el puerto de NetBios.

nmap -p 139 -iR 200


-v: Esta opciòn se usa para instruir a Nmap a imprimirnos informaciòn detallada durante el escaneo.

nmap -p 22 -v linuxhint.com


-e: Este parametro permite especificar interfaces de red (como eth0, eth1, wlan0, enp2s0, etc.).

nmap -e wlp3s0 -p 22,80 linuxhint.com


-f: La opciòn -f (fragmentaciòn de paquetes) es util para intentar mantener el escaneo oculto de firewalls y sistemas de detecciòn de instrusiones (IDS), esta opciòn no es compatible con instrucciones invasivas.

nmap -p 80,ssh,21,23,25 -f linuxhint.com


–source-port / -g: la opciòn –source-port y -g son equivalentes e instruyen a Nmap a enviar paquetes mediante puertos especificos. Esta opciòn sirve para engañar a firewalls legitimando trafico de puertos especificos. El siguiente ejemplo escanea puertos 20,22,21,23,25 y 80 enviando paquetes fragmentados a LinuxHint.

nmap -g 20 -p 80,ssh,21,23,25 -f linuxhint.com


Las opciones mencionadas son las principales, el siguiente tutorial serà sobre nmap sweep discovery con una introducciòn sobre las fases de Nmap.