Escaneando con Nmap

Escaneando con Nmap

Escaneando con Nmap, desde hace muchos años Nmap es la herramienta por excelencia para diversos menesteres, es una herramienta que podemos usar en una fase de fingerprinting o de auditoría y exploiting.

 

Si queremos tener la última versión de la herramienta solo debemos bajarla de su repositorio oficial:

Vamos a ver algunos ejemplos de uso de la herramienta, la sintaxis es muy sencilla de usar.

Escaneando con Nmap un puerto

Como véis sale el puerto 80 abierto. La sintaxis es muy sencilla, ¿Y si necesitamos escanear dos puertos?

Es muy sencillo ¿No? Pero que pasaría si necesitamos escanear de un rango a otro?

Como véis el hacer el escaneo de puertos con nmap es muy trivial.

Nmap por defecto nos permite hacer sacar los servicios, además lleva opciones para escanear una serie de puertos determinados.

Opciones de Nmap

Las opciones en nmap son muy variables y pueden ser combinadas, aquí veremos un pequeño listado de ellas:

  • Escaneo por defecto : “nmap direccionip”
  • Escaneo utilizando ping : “nmap -sP direccionip”
  • Escaneo ignorando el ping : “nmap -Pn direccionip”
  • Modo silencioso : “nmap -sS direccionip”
  • Descubrir servicios y versiones : “nmap -sV direccionip”
  • Detectar el Sistema operativo : “nmap -O direccionip”
  • Detectar el SO Forzado : “nmap -O –osscan-guess direccionip”
  • Escanear solo puerto X : “nmap -pX direccionip”
  • Escanear varios puertos X : “nmap -pX,Y,Z direccionip”
  • Escanear los 100 (f) 1000 (F) puertos más comunes : “nmap -F direccionip”
  • Escanear todos los puertos “*” : “nmap -p* direccionip” //tambien sirve “-p-”
  • Escanear Rango de puertos : “nmap -p[1-65535] ip”
  • Definir protocolo de escaneo : “nmap -pT:80,U:53 direccionip”
  • Buscar puerto 80 abierto : “nmap -sT -p 80 -oG – 192.168.1.1/24”
  • Escanear IP-A haciéndose pasar por IP-B : “nmap -sS direccionipA -D direccionipB”

Los Scripts en NMap

Desde que NMap integrara un motor de scripting a su funcionamiento, las características y funcionalidades de la herramienta han crecido en gran medida, dejando de ser solo un escáner de puertos y pasar a ser un completo escáner de vulnerabilidades, un detector de incidencias, una herramienta de ataque y un escáner de aplicaciones web entre otras muchas funciones.

Los scripts en nmap son simples de desarrollar, utilizan lenguaje lúa y podemos tomar cualquier parámetro o componente de salida de nmap como parte del mismo, por tanto su flexibilidad esta garantizada.

Los scripts oficiales integrados con nmap se encuentran por lo general en la carpeta /usr/local/share/nmap/scripts y para llamar cualquiera de ellos solo debemos ejecutar

Algunos de los scripts oficiales mas utilizados son los siguientes

  • Script para mostrar el titulo de una web : “nmap –script=http-title direccionip”
  • Mostrar titulo y cabeceras de un sitio web : “nmap –script=http-title,http-headers ip”
  • Enumerando directorios : “ nmap –script http-enum direccionip”
  • Haciendo Whois con Nmap : “ nmap –script whois direccionip”
  • Geo localización de IPS desde nmap : “ nmap –script ip-geolocation-* direccionip”
  • Detectar si un sitio web tiene un WAF : nmap -p80 –script=http-waf-fingerprint,http-waf-detect –script-args=»http-waf-detect.detectBodyChanges» direccionip

Escaneando con Nmap y las categorías de los Scripts

Ya que los scripts han crecido rápidamente ha sido necesario agruparlos en categorías, actualmente tenemos las siguientes:

  • auth
  • broadcast
  • brute
  • default
  • discovery
  • dos
  • exploit
  • external
  • fuzzer
  • intrusive
  • malware
  • safe
  • version
  • vuln

Cada una de ellas agrupan una serie de scripts que cumplen funciones de enumeración ataques de fuerza bruta, detección de malware, etc…, si queremos ejecutar una categoría entera contra una dirección ip o un rango de ellas, solo debemos realizar lo siguiente:

Tambien podemos utilizar comodines o excluir ciertos scripts de una categoría especifica que queramos ejecutar.

  • Ejecutando categorías : “ nmap –script CATEGORIA direccionip”
  • Ejecutando con comodines : “ nmap –script http-* direccionip”
  • Todos los http- menos enum : “ nmap –script=”http-* and not http-enum”

Espero que disfrutaran de esta entrega, pronto profundizaremos un poco mas en algunos aspectos de esta gran herramienta.

También puede ser de tu interés – https://www.dragonjar.org/nueva-version-de-nmap-mira-sus-nuevas-funcionalidades.xhtml

Vigencia de los tipos de escaneo en 2026

Los tipos de escaneo que describe este tutorial siguen siendo el alfabeto de Nmap en 2026: `-sS` (SYN/half-open), `-sT` (connect), `-sU` (UDP), `-sV` (detección de versiones) y `-O` (huella de sistema operativo) funcionan igual que en 2013, y la <a href=»https://manpages.debian.org/testing/nmap/nmap.1.en.html»>man page actual</a> los documenta sin cambios de sintaxis. Dos puntualizaciones sobre el listado de opciones del artículo:

– El «escaneo utilizando ping» se escribe hoy `-sn`, no `-sP`. El flag viejo sobrevive como alias heredado que emite aviso de deprecación; el moderno `-sn` además se combina con sondas específicas (`-sn -PS22,80,443`). – Escanear «todos los puertos» se expresa hoy como `-p-`; `-F` sigue siendo el modo rápido de los puertos más comunes.

Lo que agregaron las versiones recientes al flujo clásico (descubrir, escanear, detectar versión, detectar SO, correr NSE):

– Resolución DNS paralela (7.96): el cuello de botella histórico del host discovery desapareció; resolver un millón de hostnames pasó de ~49 horas a poco más de una. – Más huellas: más de 12.000 firmas de detección de servicios y base de huellas de SO ampliada, útiles para `-sV` y `-O` contra dispositivos IoT y embebidos modernos. – IPv6 de primera clase: scripts como `targets-ipv6-eui64` generan objetivos a partir de direcciones MAC, relevante cuando el barrido clásico se queda corto. – TLS 1.3 en NSE: la familia de scripts `ssl-*` hoy audita configuraciones que en 2013 ni existían; `-sV –script ssl-enum-ciphers -p 443` sigue siendo el combo estándar para postura TLS.

En resumen: el flujo del tutorial sigue siendo el flujo correcto; lo que cambió es la velocidad, la cobertura de huellas y la capacidad de lidiar con IPv6 y TLS moderno.

Lo que ve el defensor: detección de escaneos hoy

Quien escanea en 2026 trabaja frente a defensores que también leyeron el manual. Esto es lo que ve el otro lado:

– Ráfagas de SYN sin handshake: la firma clásica del `-sS` sigue siendo detectable. Un IDS como Snort o Suricata dispara por umbral de comportamiento —por ejemplo, 15 SYN desde una misma IP en 5 segundos— y la propia documentación de Nmap explica cómo Snort detecta port scanners por conteo de sondas en ventana de tiempo (<a href=»https://nmap.org/install/subvert-ids.html»>doc oficial</a>, <a href=»https://dev.to/seifeldienahmad/packet-level-security-how-to-monitor-and-detect-network-attacks-with-nmap-and-wireshark-476o»>ejemplo de regla Suricata/Snort</a>). – Firewalls stateful: reglas con inspección de estado rechazan automáticamente paquetes fuera de sesión, lo que neutraliza escaneos FIN/Xmas/NULL, la fragmentación y la manipulación de flags: ninguno pertenece a una conexión establecida (<a href=»https://www.hackingarticles.in/a-detailed-guide-on-nmap-firewall-scan/»>guía de referencia</a>). – Rate limiting: reglas como `iptables -m limit` o `-m recent` (bloquear tras N intentos en 60 segundos) convierten un barrido completo de 65.535 puertos en una sesión de horas: tiempo suficiente para que el SOC investigue la fuente. – Señuelos que delatan: `-D` genera alertas sobre las IPs señuelo; el defensor ve el patrón completo y atribuye el escaneo real por correlación de tiempos, no por IP de origen (<a href=»https://www.siberoloji.com/detecting-ids-in-a-network-with-nmap/»>análisis de detección</a>). – Evasión lenta: `-T0` o `–scan-delay` reducen la detección, pero un escaneo paranoico contra decenas de miles de puertos es operativamente inviable; la defensa moderna apuesta a que el atacante no dispone de ese tiempo.

La lección defensiva: corre el mismo Nmap desde fuera de tu perímetro (`-sS -sV –top-ports 1000`) y trata cada puerto abierto inesperado como un hallazgo. Todo lo que tú ves con Nmap, el atacante también lo ve.