
Vulnerabilidad crítica Ni8mare en n8n permite control total sin autenticación (CVE-2026-21858)
Una nueva falla de seguridad de severidad máxima en n8n, la popular plataforma de automatización, permite a atacantes remotos no autenticados obtener control completo sobre instancias vulnerables. Con 26.512 instancias expuestas a nivel mundial según Censys, esta vulnerabilidad representa uno de los riesgos más críticos detectados en la plataforma durante 2025.
¿Qué es la CVE-2026-21858?
La vulnerabilidad CVE-2026-21858, bautizada como Ni8mare por Cyera Research Labs, tiene una calificación CVSS de 10.0 (la máxima posible). Fue descubierta por el investigador de seguridad Dor Attias y reportada el 9 de noviembre de 2025.
A diferencia de otras vulnerabilidades críticas recientes en n8n que requerían autenticación, CVE-2026-21858 puede ser explotada por cualquier atacante remoto sin necesidad de credenciales. Esto reduce drásticamente la barrera de entrada para un ataque exitoso.
Según el advisory oficial de n8n: «Una vulnerabilidad en n8n permite a un atacante acceder a archivos en el servidor subyacente mediante la ejecución de ciertos flujos de trabajo basados en formularios. Un flujo de trabajo vulnerable podría otorgar acceso a un atacante remoto no autenticado».
Contexto técnico: confusión de Content-Type
La raíz del problema reside en el mecanismo de webhooks y manejo de archivos de n8n. Los webhooks permiten recibir datos de aplicaciones y servicios cuando ocurren ciertos eventos, y son procesados después de que la solicitud entrante es analizada mediante la función parseRequestBody().
La función parseRequestBody() está diseñada para leer el header Content-Type de la solicitud HTTP y ejecutar diferentes parsers según el tipo de contenido:
- Si el
Content-Typeesmultipart/form-data(datos de formulario), invocaparseFormData()(el «file upload parser») - Para todos los demás tipos de contenido, utiliza
parseBody()(el «regular body parser»)
El parser de archivos utiliza la función parse() del módulo Node.js formidable y almacena el resultado en una variable global llamada req.body.files. El parser regular, por otro lado, almacena los datos extraídos en req.body.
La CVE-2026-21858 ocurre cuando una función de manejo de archivos se ejecuta sin verificar primero que el content-type sea multipart/form-data, permitiendo a un atacante sobrescribir req.body.files con datos maliciosos controlados completamente por este.
Según Cyera Research Labs, el flujo vulnerable se encuentra en la función que maneja envíos de formularios (formWebhook()), que invoca una función de manejo de archivos (copyBinaryFile()) para actuar sobre req.body.files.
«Como esta función se llama sin verificar que el content-type sea multipart/form-data, controlamos completamente el objeto req.body.files«, explicó Attias. «Eso significa que controlamos el parámetro filepath, por lo que en lugar de copiar un archivo subido, podemos copiar cualquier archivo local del sistema».
Cadena de ataque: de lectura arbitraria a ejecución remota de código
Cyera documentó una cadena de explotación completa que permite escalar desde lectura arbitraria de archivos hasta la ejecución remota de código (RCE, por sus siglas en inglés). El escenario de ataque sigue estos pasos:
- Lectura arbitraria inicial: Usar la primitiva de lectura arbitraria para acceder a la base de datos ubicada en
/home/node/.n8n/database.sqlitey cargarla en la base de conocimiento del sistema - Extracción de credenciales: Extraer el ID de usuario del administrador, email y contraseña hasheada usando la interfaz de chat
- Obtención de claves de cifrado: Usar la primitiva de lectura nuevamente para cargar el archivo de configuración en
/home/node/.n8n/configy extraer la clave secreta de cifrado - Bypass de autenticación: Usar la información de usuario y clave obtenida para forjar una cookie de sesión falsa y obtener acceso de administrador
- Ejecución remota de código: Lograr RCE creando un nuevo workflow con un nodo «Execute Command»
Esta metología de ataque demuestra que un atacante no autenticado puede obtener el control total del sistema en pocos pasos, comprometiendo todos los secretos, credenciales API, tokens OAuth y conexiones a bases de datos almacenados en la instancia.
Versiones afectadas y parche disponible
Versiones vulnerables: Todas las versiones de n8n anteriores e incluyendo la 1.65.0
Versión con parche: La vulnerabilidad fue corregida en la versión 1.121.0, lanzada el 18 de noviembre de 2025. Las versiones más recientes disponibles son 1.123.10, 2.1.5, 2.2.4 y 2.3.0.
Magnitud del problema
Según datos de Censys, la plataforma de gestión de superficie de ataque, actualmente hay 26.512 instancias de n8n expuestas a nivel mundial. La distribución geográfica es la siguiente:
- Estados Unidos: 7.079 instancias
- Alemania: 4.280 instancias
- Francia: 2.655 instancias
- Brasil: 1.347 instancias
- Singapur: 1.129 instancias
Cada una de estas instancias expuestas representa un objetivo potencial para atacantes. Dado que la explotación no requiere autenticación, cualquier instancia vulnerable accesible desde internet puede ser comprometida.
Consecuencias potenciales de una instancia comprometida
Como señala Cyera: «El radio de explosión de un n8n comprometido es masivo. Una instancia de n8n comprometida no solo significa perder un sistema, significa entregarle a los atacantes las llaves de todo. Credenciales API, tokens OAuth, conexiones a bases de datos, almacenamiento en la nube, todo centralizado en un solo lugar. n8n se convierte en un punto único de falla y una mina de oro para actores de amenazas».
n8n actúa como un hub central de automatización que típicamente tiene acceso a múltiples sistemas críticos de la organización. Un compromiso exitoso puede llevar a movimiento lateral extenso y exfiltración de datos desde sistemas conectados.
Contexto: cuarta vulnerabilidad crítica en dos semanas
CVE-2026-21858 es la cuarta vulnerabilidad crítica divulgada por n8n en un período de aprox. dos semanas:
- CVE-2025-68613 (CVSS 9.9): Control inadecuado de recursos de código gestionados dinámicamente que permitía a atacantes autenticados lograr RCE bajo ciertas condiciones. Corregida en versiones 1.120.4, 1.121.1 y 1.122.0
- CVE-2025-68668 o N8scape (CVSS 9.9): Bypass del sandbox que permitía a usuarios autenticados con permisos para crear o modificar workflows ejecutar comandos arbitrarios en el sistema host. Corregida en versión 2.0.0
- CVE-2026-21877 (CVSS 10.0): Carga sin restricciones de archivos con tipo peligroso que permitía a atacantes autenticados ejecutar código no confiable, llevando al compromiso total de la instancia. Corregida en versión 1.121.3 Con respecto a CVE-2026-21858, este es la única de estas cuatro vulnerabilidades que no requiere autenticación, lo que la convierte en una de las más peligrosas desde la perspectiva del atacante.
Medidas de mitigación
Para protegerse contra CVE-2026-21858, se deben implementar las siguientes medidas en orden de prioridad:
- Actualizar inmediatamente a la versión 1.121.0 o posterior. Se recomienda la última versión estable disponible (1.123.10, 2.1.5, 2.2.4 o 2.3.0 dependiendo de su línea de versión)
- Evitar exponer n8n directamente a internet. Implemente acceso a través de VPN, bastion hosts o restricciones de red a nivel de firewall
- Forzar autenticación para todos los formularios. Configure todos los workflows de tipo Form para requerir autenticación obligatoria
- Restringir o deshabilitar endpoints de webhook y formularios públicamente accesibles hasta que se pueda aplicar el parche (como medida temporal)
- Auditar instancias existentes en busca de señales de compromiso, especialmente revisando logs de acceso a archivos sensibles como
database.sqlitey archivos de configuración - Rotar credenciales y secretos si la instancia estuvo expuesta antes del parcheado, especialmente claves de cifrado, tokens de API y credenciales de integración
¿Te pareció útil este artículo?
Si te pareció util este artículo, ¡te invitamos a compartirlo con personas que podrían verse beneficiadas al leerlo!
Artículos destacados
Últimos artículos
-
Descubren tres paquetes npm maliciosos que distribuyen NodeCordRAT, un troyano de acceso remoto
Investigadores de ciberseguridad en Zscaler ThreatLabz han identificado una campaña maliciosa en el ecosistema npm que compromete credenciales de navegadores…
-
Vulnerabilidad en MongoDB permite obtención de datos privados sin autenticación (CVE-2025-14847)
Una falla de seguridad recientemente descubierta en MongoDB está siendo activamente explotada, afectando a más de 87,000 instancias potencialmente vulnerables…
-
Dos extensiones de Chrome robaron conversaciones de ChatGPT y DeepSeek a 900.000 usuarios
Investigadores de ciberseguridad han descubierto dos extensiones maliciosas en Chrome Web Store diseñadas para exfiltrar conversaciones de ChatGPT y DeepSeek…
-
Vulnerabilidad crítica en n8n con CVSS 9.9 permite la ejecución remota de código (CVE-2025-68613)
Se ha descubierto una vulnerabilidad crítica de ciberseguridad en la plataforma de automatización n8n, identificada como CVE-2025-68613. Esta vulnerabilidad tiene…
