1.3 ⚙️ Motor de Secuencias de Comandos de Nmap (NSE)
El Nmap Scripting Engine (NSE) es una poderosa funcionalidad de Nmap 🛠️ que permite ejecutar scripts escritos en Lua para interactuar con servicios específicos. Esto lo hace ideal tanto para tareas de reconocimiento, enumeración, análisis de vulnerabilidades y explotación.
📁 Los scripts NSE están organizados en 14 categorías:
| 🏷️ Categoría | 📋 Descripción |
|---|---|
🔐 auth |
Descubrimiento de credenciales y autenticación. |
📡 broadcast |
Descubrimiento de hosts mediante difusión. |
💥 brute |
Ataques de fuerza bruta contra servicios. |
⚙️ default |
Scripts ejecutados por defecto con -sC. |
🔍 discovery |
Enumeración de servicios accesibles. |
🚫 dos |
Pruebas de denegación de servicio (poco usadas por riesgo). |
🎯 exploit |
Explotación de vulnerabilidades conocidas. |
🌐 external |
Interacción con servicios externos. |
🧪 fuzzer |
Envío de campos aleatorios para detectar fallos. |
🚨 intrusive |
Scripts potencialmente destructivos o invasivos. |
🦠 malware |
Comprobación de presencia de malware. |
🛡️ safe |
Scripts seguros, no intrusivos. |
🔎 version |
Detección avanzada de versiones de servicios. |
🩻 vuln |
Detección de vulnerabilidades conocidas. |
🧰 ¿Cómo se usan los scripts NSE?
🔍 ¿Dónde están los scripts?
locate *.nse
✅ Usar los scripts por defecto:
sudo nmap <IP> -sC
📂 Usar scripts por categoría:
sudo nmap <IP> --script <categoría>
📝 Usar scripts específicos:
sudo nmap <IP> --script <script1>,<script2>
Ejemplo
sudo nmap -p 80 -sV --script=http-enum,http-wordpress-users,http-vuln* 10.129.36.169 -oN http_scan.txt

📧 Ejemplo práctico: Escanear puerto SMTP
sudo nmap 10.129.2.28 -p 25 --script banner,smtp-commands
🔍 Este escaneo nos revela:
-
💬 El banner del servicio SMTP (identifica la plataforma: Ubuntu).
-
📬 Los comandos SMTP disponibles: PIPELINING, VRFY, STARTTLS, etc.
🌐 Ejemplo: Escaneo de vulnerabilidades web
Escaneo del puerto 80 para detectar servicios, versiones y vulnerabilidades:
sudo nmap 10.129.2.28 -p 80 -sV --script vuln
🧠 Este comando:
-
📦 Detecta versión del servidor web (Apache/Ubuntu).
-
🧩 Encuentra rutas de WordPress y su versión.
-
👤 Descubre usuarios (
admin) conhttp-wordpress-users. -
📛 Informa sobre vulnerabilidades (CVEs) asociadas al software detectado.
📎 Ejemplo de resultado con http-enum, vulners, http-stored-xss, etc.
🎓 Conclusión
El motor NSE permite extender Nmap más allá del simple escaneo de puertos. Al conocer su potencial, puedes:
-
Identificar servicios y software instalados 🖥️
-
Detectar vulnerabilidades conocidas 📉
-
Automatizar tareas de reconocimiento ⚙️
-
Ahorrar tiempo en análisis y reporting 🧾
📚 Más info: https://nmap.org/nsedoc/