🔍 ¿Qué es Nuclei?
Nuclei es una herramienta de escaneo de vulnerabilidades basada en "plantillas" o templates. Estas plantillas definen los tipos de pruebas de seguridad que se van a realizar. A diferencia de los escáneres de vulnerabilidades tradicionales, Nuclei es altamente personalizable y automatizable, permitiendo a los usuarios crear sus propias pruebas o utilizar una gran cantidad de templates predefinidas.
Se usa comúnmente en hacking ético, red teaming y bug bounty. Gracias a su enfoque modular y velocidad, es ampliamente adoptada por la comunidad de ciberseguridad.
🎯 ¿Para qué sirve Nuclei?
Nuclei se utiliza principalmente para:
- Detección de vulnerabilidades: Detectar fallas de seguridad en aplicaciones web, servidores y redes.
- Automatización de pruebas de seguridad: Ejecutar pruebas automatizadas sin necesidad de intervención manual.
- Personalización de pruebas: Los usuarios pueden crear sus propias "plantillas" personalizadas.
- Escaneos masivos: Permite escanear una gran cantidad de objetivos (hosts) en poco tiempo.
- Integración con pipelines de CI/CD: Se puede integrar en flujos de desarrollo de software (DevSecOps) para escanear aplicaciones antes de su despliegue.
⚙️ ¿Cómo funciona Nuclei?
- Plantillas (Templates): Las pruebas se realizan con base en templates (archivos YAML) que contienen la lógica de los escaneos. Cada template describe una posible vulnerabilidad o problema de configuración.
- Ejecución: Cuando ejecutas Nuclei, la herramienta lee las plantillas e intenta identificar si los objetivos (por ejemplo, un sitio web) son vulnerables a las pruebas definidas.
- Detección: Se comprueba la existencia de la vulnerabilidad mediante solicitudes HTTP, DNS, TCP, entre otros protocolos.
- Reportes: Nuclei muestra los resultados del escaneo, indicando los problemas encontrados en el objetivo.
Ejemplo de una plantilla simple:

En este ejemplo, Nuclei envía una solicitud GET a {{BaseURL}}/example
y verifica si la respuesta tiene un código de estado 200
. Si coincide, se considera que la vulnerabilidad está presente.
🚀 ¿Cómo se instala Nuclei?
La instalación de Nuclei es sencilla y se puede hacer en sistemas Linux, Windows y macOS. Aquí te dejo los pasos generales:
1️⃣ Requisitos previos
- Tener Go (Golang) instalado (versión 1.17 o superior).
- Linux:

- Windows: Instalar desde la página oficial de Golang.
- macOS:

2️⃣ Instalar Nuclei Una vez que tengas Go instalado, ejecuta:

Esto descargará, compilará e instalará Nuclei en tu sistema. Para verificar que Nuclei se ha instalado correctamente:

Si todo está correcto, verás la versión de Nuclei instalada.
3️⃣ Descargar plantillas de Nuclei Las plantillas son esenciales para que Nuclei pueda realizar los escaneos. Para descargarlas, ejecuta:

Esto descargará todas las plantillas más recientes del repositorio oficial. Estas plantillas se guardan localmente y se pueden personalizar.
Usar Nuclei
Ejemplo de uso básico para escanear una URL:

Comandos útiles de Nuclei

Ejemplo práctico
- Escanear un objetivo:
==nuclei -u https://example.com==
- Escanear usando una plantilla específica:
nuclei -u https://example.com -t cves/2023/CVE-2023-XXXX.yaml
- Personalizar una plantilla: Imagina que quieres crear una plantilla para verificar si existe un archivo
robots.txt
en la raíz de un sitio web.

Guarda esta plantilla como robots-txt.yaml
y ejecútala con:
nuclei -u https://example.com -t robots-txt.yaml
💡 ¿Por qué usar Nuclei?
- Rápido y ligero: No requiere muchos recursos para funcionar.
- Escaneo masivo: Permite escanear cientos o miles de hosts en minutos.
- Customizable: Puedes crear tus propias plantillas para pruebas de seguridad personalizadas.
- Compatible con CI/CD: Ideal para integrarlo en pipelines de desarrollo.
- Comunidad activa: La comunidad de ciberseguridad crea nuevas plantillas para detectar las vulnerabilidades más recientes.
Si deseas más detalles sobre algún punto o necesitas ayuda para crear plantillas personalizadas, ¡avísame y te guiaré! 🚀