Nmap (Network Mapper) es la herramienta de escaneo de redes más usada en el mundo, presente en más del 90% de los reportes de pruebas de penetración profesionales.
La pregunta que separa al novato del profesional
¿Cuántos puertos crees que tiene un servidor típico de una empresa mexicana expuestos a internet?
La mayoría de los estudiantes responde: "tres o cuatro". El puerto 80 para HTTP, el 443 para HTTPS, quizás el 22 para SSH. Eso es todo, ¿verdad?
Equivocado. Según datos del proyecto Shodan de 2023, el servidor promedio de una empresa mediana en México tiene entre 12 y 18 puertos abiertos detectables. Muchos de esos puertos los abrió alguien hace años y nadie recuerda para qué sirven. Ahí viven las vulnerabilidades que un atacante va a explotar.
Nmap es la herramienta que te permite ver exactamente esa realidad, con precisión quirúrgica.
Qué hace Nmap exactamente
Nmap envía paquetes de red a uno o varios hosts y analiza las respuestas. A partir de esa información, determina qué dispositivos están activos, qué puertos tienen abiertos, qué servicios corren en esos puertos y qué sistema operativo usa el dispositivo.
Eso suena simple. Pero la profundidad de análisis que puedes lograr con Nmap es lo que lo convierte en estándar de la industria. El FBI, el Ejército de los Estados Unidos y equipos de seguridad de empresas como FEMSA y Mercado Libre usan Nmap como parte de sus auditorías internas.
El Marco de los Cuatro Niveles de Escaneo
Antes de escribir un solo comando, necesitas entender cómo estructurar un escaneo profesional. Usa el Marco de los Cuatro Niveles:
- Nivel 1 – Descubrimiento de hosts: ¿Qué dispositivos están vivos en la red?
- Nivel 2 – Escaneo de puertos: ¿Qué puertos tienen abiertos esos dispositivos?
- Nivel 3 – Detección de servicios: ¿Qué software corre en cada puerto?
- Nivel 4 – Fingerprinting de sistema operativo: ¿Qué sistema operativo usa el dispositivo?
Cada nivel añade información y también añade ruido en los logs del objetivo. Un pentester profesional sabe cuándo detenerse y cuándo avanzar al siguiente nivel.
Comandos esenciales: de menor a mayor profundidad
Nivel 1: Descubrir qué hosts están activos
Este comando hace un ping sweep. No escanea puertos. Solo pregunta: ¿estás vivo?
nmap -sn 192.168.1.0/24
El /24 significa que vas a explorar las 254 direcciones posibles de esa red local. En un entorno corporativo como el de una sucursal de Liverpool, esto te dice cuántos dispositivos están conectados en ese momento.
Resultado típico:
Nmap scan report for 192.168.1.1
Host is up (0.0023s latency).
Nmap scan report for 192.168.1.45
Host is up (0.0041s latency).
Nmap scan report for 192.168.1.102
Host is up (0.0089s latency).
Tres hosts activos. Ya tienes tus objetivos para el siguiente nivel.
Nivel 2: Escanear los puertos más comunes
nmap -sV 192.168.1.45
Este comando escanea los 1,000 puertos más usados y detecta versiones de servicios. Es tu comando de uso diario en un pentest.
Resultado típico:
PORT STATE SERVICE VERSION
22/tcp open ssh OpenSSH 7.4
80/tcp open http Apache httpd 2.4.6
443/tcp open https Apache httpd 2.4.6
3306/tcp open mysql MySQL 5.7.32
8080/tcp open http-proxy Squid http proxy 3.5.20
Aquí ya aparece algo preocupante: MySQL expuesto en el puerto 3306. Una base de datos accesible desde la red sin firewall adecuado es una vulnerabilidad crítica. En una auditoría real de una empresa mexicana de retail, este hallazgo solo puede significar una cosa: alguien configuró el servidor para "hacer pruebas" y olvidó cerrarlo.
Nivel 3: Escanear TODOS los puertos
nmap -p- 192.168.1.45
El parámetro -p- le dice a Nmap que revise los 65,535 puertos posibles. Este escaneo tarda más, pero encuentra servicios en puertos no estándar que el escaneo básico ignora.
Algunos atacantes instalan backdoors en puertos como el 31337 o el 4444 precisamente porque los escaneos rápidos no los detectan.
Nivel 4: Fingerprinting del sistema operativo
nmap -O 192.168.1.45
Nmap analiza peculiaridades en la respuesta TCP/IP para adivinar el sistema operativo. El resultado incluye algo como:
OS details: Linux 3.10 - 4.11
Conocer el sistema operativo te dice qué vulnerabilidades conocidas aplican. Un servidor con Linux 3.10 tiene exploits documentados que ya no aplican a versiones modernas.
El comando que usan los profesionales en campo
En un pentest real, los profesionales combinan todo en un solo comando potente:
nmap -sV -sC -O -p- --open -oN resultado_escaneo.txt 192.168.1.45
Desglose:
-sV: detecta versiones de servicios-sC: ejecuta scripts básicos de detección (NSE scripts)-O: fingerprinting de sistema operativo-p-: todos los puertos--open: muestra solo puertos abiertos-oN resultado_escaneo.txt: guarda el resultado en un archivo
Ese archivo de texto es parte de la evidencia que entregas al cliente al final del pentest. Sin documentación, no hay reporte. Sin reporte, no cobras.
Interpretando resultados como profesional
Nmap clasifica cada puerto en uno de tres estados:
| Estado | Significado |
|---|---|
open |
El puerto acepta conexiones. Hay un servicio activo. |
closed |
El puerto responde pero no hay servicio escuchando. |
filtered |
Un firewall está bloqueando la respuesta. No se sabe si está abierto. |
El estado filtered es el más interesante para un auditor. Significa que hay un firewall activo. Pero también significa que si ese firewall tiene una regla mal configurada, existe una forma de pasarlo.
En una auditoría hipotética de una empresa de logística como FEMSA, encontrar 40 puertos filtered y solo 5 open indica una postura de seguridad madura. Encontrar 25 puertos open indica lo contrario.
Errores comunes que cometen los principiantes
Error 1: Escanear sin autorización escrita. Nmap envía paquetes reales a hosts reales. Si escaneas una red sin permiso documentado, cometes un delito tipificado en el artículo 211 bis del Código Penal Federal mexicano. Siempre, siempre, tienes que tener autorización escrita antes de ejecutar cualquier comando.
Error 2: Usar -p- en todas las situaciones.
Escanear 65,535 puertos genera mucho tráfico. En redes de producción activas, esto puede disparar alertas de seguridad o incluso degradar el rendimiento de la red. Empieza con escaneos rápidos y escala según lo que encuentres.
Error 3: No guardar los resultados.
Muchos principiantes leen los resultados en pantalla y siguen adelante. Profesional que no guarda resultados es profesional que no puede escribir un reporte. Usa siempre -oN, -oX (formato XML) o -oA (todos los formatos al mismo tiempo).
Error 4: Confundir "puerto abierto" con "vulnerabilidad". Un puerto abierto no es automáticamente un problema. Un puerto 443 con HTTPS bien configurado es perfectamente seguro. El análisis viene después: ¿qué versión corre? ¿Tiene CVEs conocidos? ¿Está expuesto a internet o solo a la red interna?
Error 5: Ignorar los puertos UDP.
La mayoría de los escaneos por defecto solo revisan TCP. Los puertos UDP (como el 53 para DNS, el 161 para SNMP) también pueden estar expuestos y ser vulnerables. Usa nmap -sU para incluirlos en tu análisis.
De los datos a la acción
Imagina que realizas una auditoría autorizada en una empresa mexicana de manufactura. Tu escaneo con Nmap revela un servidor con el puerto 21 (FTP) abierto, usando vsftpd 2.3.4. Esa versión específica tiene una backdoor documentada en la base de datos CVE desde 2011. Con ese dato en tu reporte, el cliente puede parchear ese servidor esa misma tarde.
Eso es el valor real de Nmap: no es la herramienta en sí, es la información que te da para tomar decisiones concretas. Cada puerto abierto es una pregunta. Tu trabajo es encontrar las respuestas antes de que lo haga alguien con malas intenciones.
En la siguiente lección vas a aprender a usar esa información para identificar vulnerabilidades específicas con herramientas especializadas.