Escaneo de Puertos Avanzado con Nmap: Uso de Scripts (NSE) y Evasión de Firewalls

Escaneo de Puertos Avanzado con Nmap: Uso de Scripts (NSE) y Evasión de Firewalls

Introducción: El Poder del Network Mapper

Nmap (Network Mapper) es el estándar de la industria para el reconocimiento activo en ciberseguridad. Su función principal es mapear la red objetivo, identificar los hosts activos y, lo más importante, descubrir los servicios que están corriendo en cada puerto. Para un Pentester, dominar Nmap es esencial para una auditoría de infraestructura.

Técnicas Esenciales de Escaneo Avanzado

Un buen escaneo va más allá de un simple ping. Requiere técnicas para obtener inteligencia profunda:

  1. Escaneo SYN (-sS): También conocido como half-open scan. Es el escaneo por defecto y más rápido. Envía un paquete SYN y espera un SYN/ACK para confirmar que el puerto está abierto. Nunca completa el handshake TCP, lo que lo hace menos detectable para algunos sistemas de logging.
  2. Detección de Servicios y Versiones (-sV): Esencial. No basta con saber que el puerto 80 está abierto; es necesario saber qué está corriendo exactamente (ej. Apache httpd 2.4.41 en lugar de solo “http”). El conocimiento de la versión
    exacta permite al Pentester buscar exploits públicos específicos para ese software.
  3. Escaneo UDP (-sU): Protocolo más lento y difícil de escanear, pero vital para descubrir servicios como DNS (53), SNMP (161) o DHCP, que a menudo son menos monitoreados.

Nmap Scripting Engine (NSE): La Automatización del Pentest

El NSE es un motor de scripting que permite a los usuarios extender la funcionalidad de Nmap utilizando el lenguaje Lua. Esto transforma Nmap de un simple escáner a una herramienta de auditoría de vulnerabilidades:

  • Vulnerabilidad: Scripts diseñados para buscar fallos de seguridad específicos (ej. –script smb-vuln-* para detectar vulnerabilidades en el protocolo SMB).
  • Fuerza Bruta: Scripts que intentan credenciales comunes o por defecto en servicios como SSH o FTP.
  • Enumeración Avanzada: Scripts que se conectan a un servicio para extraer información valiosa (ej. –script http-enum para descubrir directorios web ocultos o http-title para obtener el título de la página).

Evasión de Firewalls y Sistemas de Detección (IDS)

En el Pentesting, la evasión se usa para simular un ataque sigiloso. Un buen escaneo debe intentar pasar desapercibido:

  • Fragmentación de Paquetes (-f): Dividir los paquetes TCP en fragmentos muy pequeños. Algunos Firewalls y IDS más antiguos solo inspeccionan los encabezados y pueden fallar al reensamblar y analizar el contenido completo.
  • Decoy Scan (-D): Inyectar direcciones IP falsas como “señuelos” en el escaneo. Para el sistema de logging del objetivo, parecerá que múltiples hosts diferentes están escaneando, dificultando identificar la IP real del atacante.
  • Timing Avanzado (-T): Ajustar la velocidad de envío de paquetes. El modo -T0 (paranoico) es extremadamente lento y sigiloso, diseñado para evadir detecciones basadas en la velocidad.