Une faille RCE de Langflow permet aux utilisateurs authentifiés d'exécuter des commandes shell
Les attaquants exploitent la CVE-2026-105740 dans Langflow pour exécuter du code arbitraire via les configurations de serveurs MCP, avec plus de 1 400 tentatives enregistrées.
Traduit automatiquement depuis l'original anglais.
Des acteurs malveillants exploitent activement une vulnérabilité critique d'exécution de code à distance (RCE) dans Langflow, une plateforme open source destinée à la création d'applications d'IA. La société de sécurité Previdian a signalé que les attaquants ont lancé plus de 1 400 tentatives d'exploitation contre des capteurs honeypot depuis la mi-septembre 2026. Le défaut, identifié sous le nom de CVE-2026-105740, affecte les versions de Langflow antérieures à la 1.9.0 et permet à tout utilisateur authentifié d'exécuter des commandes système arbitraires sur le serveur hôte.
Ce qui s'est passé
La vulnérabilité provient de la manière dont Langflow gère les configurations des serveurs Model Context Protocol (MCP). Lorsqu'un utilisateur ajoute un serveur MCP en utilisant le transport 'stdio', l'application accepte un champ de commande sans validation, liste blanche ni sandboxing. Cette commande est transmise directement au shell via bash -c "exec {command}". Par conséquent, tout utilisateur disposant d'identifiants valides, y compris les comptes non-administrateurs, peut injecter des charges utiles malveillantes. La commande s'exécute immédiatement lorsque la liste des serveurs est récupérée, accordant à l'attaquant les mêmes privilèges que le processus Langflow.
Les données de Previdian révèlent une augmentation soudaine de l'activité, avec 333 tentatives enregistrées rien que le 11 octobre 2026. Au total, 1 423 tentatives d'exploitation ont été détectées provenant de 27 adresses IP uniques situées dans des pays tels que la Chine, la Russie, les États-Unis et le Vietnam. Les attaquants s'authentifient généralement en utilisant des identifiants faibles ou courants après avoir vérifié la version de Langflow. Une fois à l'intérieur, ils envoient des requêtes HTTP POST élaborées vers le point de terminaison du serveur MCP pour stocker leur charge utile, puis déclenchent l'exécution en récupérant la liste des serveurs.
Les conséquences d'une exploitation réussie sont graves. Les attaquants peuvent compromettre entièrement le serveur, injecter des variables d'environnement telles que LD_PRELOAD et déployer des backdoors persistants. Étant donné que les configurations des serveurs MCP sont stockées dans les paramètres du projet plutôt que dans les composants visibles du flux, ces configurations malveillantes peuvent rester cachées lors des revues de code normales. Les charges utiles capturées montrent que les attaquants tentent d'extraire des secrets sensibles tels que LANGFLOW_SECRET_KEY et de lire des fichiers du système de fichiers hôte comme /etc/passwd.
Comment cela fonctionne
Le mécanisme central repose sur l'absence d'assainissement des entrées pour le transport stdio de MCP. Dans une chaîne d'attaque typique, l'adversaire se connecte d'abord en tant qu'utilisateur standard. Il envoie ensuite une requête POST vers /api/v2/mcp/servers/{server_name} contenant une commande malveillante dans le corps de la requête. Langflow stocke cette configuration sans vérifier si la commande est sûre. Pour déclencher l'exploit, l'attaquant envoie une requête GET vers /api/v2/mcp/servers?action_count=true. Cette action force l'application à charger la liste des serveurs, ce qui exécute involontairement la commande stockée en arrière-plan.
Cette méthode est particulièrement dangereuse car elle contourne les processus traditionnels de revue de code. Contrairement aux composants Python personnalisés qui apparaissent dans l'éditeur visuel, les configurations MCP sont des paramètres backend. De plus, la vulnérabilité permet l'injection de variables d'environnement, permettant aux attaquants de manipuler l'environnement d'exécution du processus Langflow. Cela peut faciliter les mouvements latéraux au sein du réseau ou établir un accès persistant, car la configuration malveillante réexécute chaque fois que la liste des serveurs est consultée.
Détails clés
- ID de la vulnérabilité : CVE-2026-105740 avec un score CVSS de 9,9.
- Versions affectées : Toutes les versions de Langflow antérieures à la 1.9.0.
- Vecteur d'attaque : Exécution de code à distance authentifiée via la configuration du serveur MCP.
- Volume d'exploitation : 1 423 tentatives enregistrées par Previdian depuis le 19 septembre 2026.
- Cible principale : Des identifiants faibles sont utilisés pour obtenir un accès initial avant d'exploiter la faille.
- Persistance : Les configurations MCP malveillantes restent dans les paramètres du projet et réexécutent lors des récupérations de listes.
Pourquoi c'est important
Pour les équipes d'ingénierie qui créent des workflows d'IA, cet incident met en lumière les risques liés à l'intégration de gestionnaires de protocoles complexes comme MCP sans limites de sécurité strictes. Le fait qu'un utilisateur non-administrateur puisse compromettre l'hôte entier souligne l'importance des contrôles d'accès basés sur le moindre privilège. De nombreuses organisations supposent peut-être que les utilisateurs internes ou les collaborateurs sont dignes de confiance, mais cette vulnérabilité transforme tout compte compromis en porte d'entrée pour une prise de contrôle totale du serveur. Elle démontre également comment les interfaces de configuration peuvent devenir des surfaces d'attaque si elles ne sont pas correctement isolées (sandboxed).
De plus, l'escalade rapide des tentatives d'exploitation suggère que les scanners automatisés ciblent désormais spécifiquement cette faille. L'implication d'adresses IP liées à d'autres vulnérabilités récentes dans des outils comme Flowise indique une campagne systématique contre l'infrastructure de développement IA. Les équipes faisant tourner des instances Langflow exposées doivent considérer cela comme une menace active, et non simplement un risque théorique. La capacité d'extraire des clés secrètes et des variables d'environnement signifie qu'une seule violation peut entraîner une compromission plus large de l'infrastructure.
Que pouvez-vous faire
- Mettez à niveau Langflow vers la version 1.9.0 ou ultérieure immédiatement pour corriger la CVE-2026-105740.
- Désactivez la connexion automatique en définissant
LANGFLOW_AUTO_LOGIN=falsedans vos variables d'environnement. - Appliquez des mots de passe forts et uniques pour tous les comptes utilisateurs Langflow afin de prévenir les accès non autorisés.
- Passez en revue les journaux d'authentification et surveillez les requêtes vers
/api/v2/mcp/servers/pour détecter toute activité suspecte. - Évitez d'exposer directement les instances Langflow à des réseaux non fiables ou à Internet public.
- Restreignez la création de comptes Langflow uniquement au personnel de confiance et auditez les permissions des utilisateurs existants.



