¿Qué es Nmap?
Nmap (Network Mapper) es una herramienta de código abierto para:
- Descubrimiento de hosts y servicios
- Detección de sistemas operativos
- Identificación de vulnerabilidades
Descargar Nmap
Versión actual: 7.94
Escaneos Esenciales
Descubrimiento
nmap -sn 192.168.1.0/24
Ping scan para identificar hosts activos.
Puertos Comunes
nmap -sV 192.168.1.100
Escaneo de versión en los 1,000 puertos más comunes.
Todos los Puertos
nmap -p- 192.168.1.100
Escaneo completo (1-65535). Tarda más pero es exhaustivo.
Tip: Usa
-T4 para velocidad agresiva o -T2 para escaneos sigilosos.
Técnicas Avanzadas
Evadir IDS/IPS
SYN Stealth Scan:
nmap -sS -Pn -T4 192.168.1.100
No completa la conexión TCP (half-open scan).
Fragmentación de Paquetes:
nmap -f -D RND:10 192.168.1.100
Divide los paquetes y usa decoys para evadir firewalls.
Fingerprinting de Sistemas
nmap -O --osscan-guess 192.168.1.100
Detecta el sistema operativo basado en respuestas de red.
Uso de Scripts NSE
nmap --script=http-title 192.168.1.100
nmap --script=ssl-enum-ciphers -p 443 192.168.1.100
nmap --script=vuln 192.168.1.100
Los scripts se encuentran en /usr/share/nmap/scripts/
Escaneo de Vulnerabilidades
nmap --script vuln -p 80,443,445 192.168.1.100
Busca vulnerabilidades conocidas como EternalBlue, Heartbleed, etc.
Precaución: Estos scripts pueden ser intrusivos. Usar solo en redes propias.
Formatos de Salida
Normal
nmap -oN resultado.txt 192.168.1.100
Formato legible para humanos.
XML
nmap -oX resultado.xml 192.168.1.100
Para procesamiento automatizado.
Grepable
nmap -oG resultado.gnmap 192.168.1.100
Fácil de filtrar con grep/awk.
Visualización con Ndiff
ndiff scan1.xml scan2.xml > cambios.txt
Compara dos escaneos para detectar diferencias.
Escenarios Reales
nmap -p 80,443,8080,8443 --script http-enum,http-vuln* -sV 192.168.1.100 -oX web-scan.xml
Busca:
- Directorios comunes (
http-enum) - Vulnerabilidades conocidas (
http-vuln*) - Versiones exactas de servicios (
-sV)
nmap -sn --script broadcast-ping 192.168.1.0/24
nmap -p 21,22,80,443 --open -oG active-hosts.gnmap 192.168.1.0/24
Identifica:
- Hosts activos en la red
- Servicios expuestos en dispositivos IoT
Cheatsheet de Comandos
Contenido Técnico Destacado
1. Escaneos Avanzados para Pentesting
# Escaneo sigiloso con timing aleatorio
nmap -sS -Pn --scan-delay 500ms -T2 192.168.1.100
# Escaneo UDP (importante para DNS, SNMP)
nmap -sU -p 53,161,162 192.168.1.100
# Detección de servidores web alternativos
nmap -p 80,443,8080,8443 --script http-title 192.168.1.0/24
2. Scripts NSE Esenciales
# Scripts de descubrimiento:
nmap --script discovery 192.168.1.100
# Análisis de seguridad:
nmap --script ssh-auth-methods -p 22 192.168.1.100
nmap --script smb-security-mode -p 445 192.168.1.100
# Extracción de información:
nmap --script http-headers -p 80,443 192.168.1.100
nmap --script dns-zone-transfer -p 53 192.168.1.100
3. Optimización de Escaneos
# Para redes rápidas:
nmap -T4 -n --min-rate 1000 192.168.1.100
# Para redes con restricciones:
nmap -T1 --max-rate 100 192.168.1.100
# Excluir hosts del escaneo:
nmap 192.168.1.0/24 --exclude 192.168.1.50,192.168.1.100