Nmap Scripting Engine
El Nmap Scripting Engine (NSE) es una característica útil de Nmap que nos permite crear scripts en Lua para interactuar con servicios específicos. Los scripts se dividen en 14 categorías diferentes:
Categorías de scripts en NSE
Categoría
Descripción
auth
Determina credenciales de autenticación.
broadcast
Scripts usados para descubrimiento de hosts mediante broadcasting. Los hosts descubiertos se pueden agregar automáticamente a los escaneos.
brute
Realiza ataques de fuerza bruta para iniciar sesión en el servicio correspondiente.
default
Scripts predeterminados ejecutados con la opción -sC
.
discovery
Evalúa servicios accesibles.
dos
Verifica vulnerabilidades de denegación de servicio (DoS).
exploit
Intenta explotar vulnerabilidades conocidas.
external
Usa servicios externos para procesamiento adicional.
fuzzer
Envía campos diferentes para identificar vulnerabilidades. Puede tardar mucho tiempo.
intrusive
Scripts intrusivos que podrían afectar negativamente al sistema objetivo.
malware
Verifica si el sistema está infectado con malware.
safe
Scripts defensivos que no realizan accesos intrusivos o destructivos.
version
Extiende la detección de servicios.
vuln
Identifica vulnerabilidades específicas.
Formas de ejecutar scripts NSE
Scripts predeterminados
Se pueden ejecutar los scripts predeterminados de NSE utilizando el siguiente comando:
Ejecutar scripts por categoría
Es posible ejecutar todos los scripts de una categoría específica de NSE:
Ejecutar scripts específicos
Para ejecutar scripts específicos, se puede usar el siguiente comando:
Ejemplo de uso con scripts específicos
Supongamos que queremos escanear el puerto 25 (SMTP) de un objetivo y utilizar los scripts banner
y smtp-commands
:
Salida del escaneo:
Explicación del ejemplo:
banner: Muestra el banner del servicio SMTP, identificando que es un servidor Postfix en Ubuntu.
smtp-commands: Muestra los comandos que el servidor SMTP admite, lo que puede ayudar a descubrir usuarios existentes.
Escaneo agresivo
El escaneo agresivo (-A
) utiliza múltiples opciones como:
Detección de servicios (-sV)
Detección de sistema operativo (-O)
Traceroute (--traceroute)
Scripts predeterminados (-sC)
Salida del escaneo:
Información obtenida:
Servidor web: Apache 2.4.29 en Ubuntu.
Aplicación web: WordPress 5.3.4.
Título de la página web: blog.inlanefreight.com.
Sistema operativo: Probablemente Linux (96%).
Evaluación de vulnerabilidades
Se pueden identificar vulnerabilidades utilizando scripts de la categoría vuln. A continuación, se muestra un ejemplo de escaneo en el puerto 80 de un objetivo:
Salida del escaneo:
Información obtenida:
WordPress: Identifica múltiples versiones de WordPress y posibles archivos sensibles como
wp-login.php
yreadme.html
.Vulnerabilidades: Identifica vulnerabilidades conocidas en el servidor Apache con enlaces a bases de datos de CVEs.
Referencias adicionales
Para más información sobre los scripts de NSE y sus categorías, puedes visitar la documentación de NSE.
Last updated