Parte: 1 — Redes y seguridad de redes · Fuente: Nmap Network Scanning, G. Lyon ⏱️ Duración estimada: 120 min · Nivel: Intermedio
Dominar los tipos de escaneo de puertos de Nmap (SYN, connect, UDP, y los "stealth" FIN/NULL/Xmas/ACK), entender la máquina de estados TCP que hay detrás de cada uno y saber elegir el tipo, el rango de puertos y la temporización correctos según el objetivo y las defensas presentes.
Al finalizar, el alumno podrá:
-sS), connect scan (-sT) y UDP scan (-sU) y cuándo usar cada uno.-T0..-T5) y el paralelismo.| # | Tema | Por qué importa |
|---|---|---|
| 1 | Handshake TCP y estados de puerto | Base de toda interpretación |
| 2 | SYN scan (-sS) semiabierto |
Rápido y relativamente sigiloso |
| 3 | Connect scan (-sT) sin privilegios |
Cuando no hay root/raw sockets |
| 4 | UDP scan (-sU) |
Servicios críticos (DNS, SNMP) van por UDP |
| 5 | FIN/NULL/Xmas/ACK | Rodear filtros y mapear firewalls |
| 6 | Selección de puertos (-p, --top-ports, -F) |
Cobertura vs. tiempo |
| 7 | Temporización (-T, --min-rate) |
Precisión vs. sigilo vs. velocidad |
-sS): envía SYN y ante un SYN/ACK envía RST sin completar la conexión ("semiabierto"). Requiere privilegios; es el default de Nmap con root.-sT): completa el handshake con la syscall connect(). No necesita privilegios pero es más ruidoso y lento; queda en logs de aplicación.-sU): envía datagramas UDP; la ausencia de respuesta se interpreta como open\|filtered, y un ICMP port-unreachable como closed. Lento por diseño.filtered: Nmap no puede determinar si el puerto está abierto porque un firewall descarta las sondas.-sA): no determina open/closed, sino si el puerto está filtered o unfiltered; sirve para mapear reglas de firewall con y sin estado.sudo) para los escaneos raw.docker run -d -p 80:80 nginx, un DNS, etc.).⚠️ Nota ética: el escaneo de puertos contra sistemas ajenos sin permiso es intrusivo y puede ser delito. Practica solo en tu laboratorio o con autorización explícita y alcance definido por escrito.
bash
sudo nmap -sS 192.168.56.101
Observa en Wireshark que Nmap responde con RST a cada SYN/ACK. 2. Connect scan sin privilegios y compara la salida:
bash
nmap -sT 192.168.56.101
bash
sudo nmap -sS -p- 192.168.56.101
bash
sudo nmap -sU -p 53,123,161 192.168.56.101
bash
sudo nmap -sS --top-ports 100 192.168.56.101
nmap -F 192.168.56.101
bash
sudo nmap -sA -p 1-1000 192.168.56.101
bash
sudo nmap -sF 192.168.56.101 # FIN
sudo nmap -sN 192.168.56.101 # NULL
sudo nmap -sX 192.168.56.101 # Xmas
bash
sudo nmap -sS -T4 --min-rate 500 -p- 192.168.56.101
bash
sudo nmap -Pn --reason -p 22,80,443 192.168.56.101
-sS y -sT y compara tiempos y estados; explica por qué difieren.--reason para averiguar por qué un puerto aparece como filtered.open\|filtered.-sA, deduce si el firewall del objetivo es con estado o sin estado.-p- con -T3 vs. -T4 --min-rate 1000 y comenta el riesgo de perder puertos.-p http,https,domain.Elabora un inventario de puertos abiertos TCP y UDP de un host de laboratorio, indicando para cada puerto el estado y la razón (--reason). Entrega el comando usado, la salida -oN y una tabla con: puerto, protocolo, estado y razón. Incluye al menos un puerto filtered correctamente justificado.
Criterio de aceptación: la tabla coincide con un reescaneo del revisor y cada estado está respaldado por la razón correcta (p. ej. syn-ack para open, no-response/admin-prohibited para filtered).
| Síntoma / mensaje | Causa y cómo arreglar |
|---|---|
-sS cae a connect scan |
Sin privilegios; ejecuta con sudo |
| UDP scan tardísimo | Es normal por rate-limiting ICMP; limita puertos con -p o usa --host-timeout |
Todos los puertos filtered |
Firewall descarta sondas; combina con -Pn, prueba otros tipos, revisa alcance/ruta |
FIN/NULL/Xmas dan todo open\|filtered |
El objetivo es Windows (no sigue RFC 793 así); esos escaneos no aplican |
| Resultados inconsistentes entre corridas | Temporización agresiva provoca pérdidas; baja a -T3 o aumenta reintentos |
❓ ¿Cuál es el escaneo por defecto?
Con privilegios, -sS (SYN). Sin privilegios, -sT (connect). Puedes forzar cualquiera explícitamente.
❓ ¿Por qué el UDP scan es tan lento? Porque la ausencia de respuesta es ambigua y los hosts limitan la tasa de mensajes ICMP unreachable, obligando a Nmap a esperar y reintentar.
❓ ¿Los escaneos "stealth" son realmente invisibles? No. Un IDS moderno (Suricata/Snort) los detecta. "Stealth" se refiere a que evitan completar el handshake y ciertos logs de aplicación, no a ser indetectables.
❓ ¿Qué diferencia hay entre closed y filtered?
closed responde con RST (el host está vivo pero sin servicio en ese puerto). filtered no responde o responde con error de firewall (no puedes saber si hay servicio).
Clase 029 — Nmap: descubrimiento de hosts y técnicas de ping
Clase 031 — Nmap: detección de servicios y fingerprinting de OS