Langflow – la plateforme open-source qui permet aux développeurs d'assembler des prompts LLM, des sources de données et du code Python personnalisé – présente une faille critique permettant à n'importe qui d'exécuter du code Python arbitraire sur un serveur vulnérable. La CVE-2026-33017, notée 9,8 sur l'échelle CVSS, affecte toutes les versions antérieures à la 1.9.0 et peut être déclenchée sans authentification, obligeant les exploitants à effectuer une mise à jour ou à désactiver la fonctionnalité « public flow ».
Ce que fait le bug
L'endpoint public-flow de Langflow était destiné aux chatbots de type démonstration que n'importe qui peut tester sans se connecter. L'endpoint accepte un paramètre data dans le corps de la requête, suppose que la charge utile contient une définition de flux sûre, puis transmet directement le contenu à la fonction intégrée exec() de Python. exec() évalue la chaîne de caractères comme du code et l'exécute avec les mêmes privilèges que le processus Langflow.
Un attaquant a seulement besoin de l'ID du flux public – une valeur souvent affichée dans les URL partagées – pour concevoir une requête qui remplace la définition par un flux malveillant. Lorsque le serveur traite la requête, le code Python injecté s'exécute immédiatement, donnant à l'attaquant le contrôle total sur le système hôte.
Comment la vulnérabilité s'est glissée
Dans les versions précédentes, le chemin de code qui charge un flux depuis la base de données était contourné lorsqu'un champ data était présent. Au lieu de nettoyer ou de valider la charge utile, le serveur faisait confiance à l'appelant et l'exécutait textuellement. Comme l'endpoint est accessible sans aucune connexion, la surface d'attaque est l'internet public pour toute instance Langflow ayant activé les flux publics.
Qui est à risque
Compte tenu du score de sévérité, la vulnérabilité est considérée comme « critique ».
Mesures d'atténuation immédiates
- Passez à Langflow 1.9.0 – il s'agit de la seule correction vérifiée.
- Désactivez la fonctionnalité public flow si vous n'avez pas besoin d'un accès anonyme.
- Désactivez AUTO_LOGIN – cela empêche la création automatique de sessions pour les requêtes non authentifiées.
- Placez l'API derrière un pare-feu ou un proxy inverse pour limiter l'accès aux plages d'adresses IP de confiance.
- Déployez un pare-feu d'application Web (WAF) qui bloque les requêtes vers l'endpoint
build_public_tmpcontenant un paramètredata.
Pourquoi la correction est importante
La vulnérabilité exploite une erreur de conception fondamentale : faire confiance au code fourni par l'utilisateur dans un contexte qui s'exécute avec des privilèges élevés. En supprimant cette confiance et en imposant une gestion plus stricte des entrées, Langflow 1.9.0 rétablit la barrière entre les utilisateurs de démo publics et le serveur sous-jacent.
À surveiller ensuite
- Réponse de la communauté – surveillez le dépôt Langflow pour d'éventuels correctifs ou avis de sécurité.
En résumé : Tout déploiement Langflow exposant l'endpoint public-flow doit être corrigé dès aujourd'hui. Tant que la version 1.9.0 n'est pas déployée, désactivez la fonctionnalité et barricadez le service derrière des contrôles réseau. Le coût d'une violation dépasse de loin l'effort d'une mise à jour rapide.
