Les outils pour le développement de l’IA ne sont pas exemptes de failles de sécurité. La CISA (Cybersecurity and Infrastructure Security Agency) vient de lancer un avertissement sur une faille critique dans Langflow. Elle a été corrigée le mois dernier, mais cela n’empêche pas la vulnérabilité d’être ciblée activement par les cybercriminels pour toucher des logiciels non mis à jour. Pour bien insister sur la gravité de la situation, l’agence américaine a classé cette faille à son catalogue des vulnérabilités exploitées connues (KEV), indiquant ainsi aux agences gouvernementales et aux organisations privées qu'elle doit être corrigée immédiatement.
La brèche peut être exploitée sans authentification pour exécuter à distance un code arbitraire sur des serveurs. Écrit en Python, l’outil open source Langflow est utilisé pour construire et déployer des agents d’IA en passant par une interface visuelle et un serveur API. Alors que de nombreuses entreprises cherchent à exploiter de grands modèles de langage (LLM) pour automatiser les flux de travail internes, Langflow a beaucoup gagné en popularité, affichant près de 60 000 étoiles sur GitHub. De par sa nature, Langflow propose aux utilisateurs authentifiés d'exécuter du code. Au moment de la construction d'agents à l’aide des composants visuels de Langflow, les utilisateurs modifient librement le code Python sous-jacent. Mais la vulnérabilité CVE-2025-3248 découverte par les chercheurs de Horizon3.ai donne la même liberté à des utilisateurs non authentifiés. Ce problème est aggravé par le fait qu'il existe plus de 500 instances Langflow exposées à Internet et beaucoup d'autres accessibles via des réseaux internes.
Un défaut d’authentification sur le serveur API
La faille est assez simple. Elle résulte de l’absence de contrôles d'authentification à un point de terminaison de l'API appelé /api/v1/validate/code, point qui transmet du code à la fonction exec de Python. Cependant, la vulnérabilité n’exécute pas la fonction exec directement sur les fonctions, mais sur les définitions de fonctions, qui rendent les fonctions disponibles pour l'exécution, mais n'exécutent pas leur code. C’est la raison pour laquelle les chercheurs d'Horizon3.ai ont dû trouver une autre méthode d'exploitation en tirant parti de fonctions de Python appelées « decorators », qui renvoient des fonctions qui enveloppent d'autres fonctions.
Le PoC publié par Horizon3.ai le 9 avril exploite ces « decorators » pour réaliser une exécution de code à distance, mais les chercheurs signalent qu'un chercheur tiers a obtenu le même résultat en abusant d'une autre caractéristique des fonctions Python appelée « default arguments ». Depuis, un exploit pour cette vulnérabilité a également été ajouté au framework de test de pénétration Metasploit, il n'est donc pas surprenant que les attaquants aient déjà commencé à exploiter cette faille dans des attaques.
Remédiation
Il est conseillé aux utilisateurs de Langflow de mettre à jour immédiatement leurs déploiements vers la version 1.3.0 publiée le 1er avril, qui inclut le correctif, ou vers la dernière version, 14.0, qui contient des correctifs supplémentaires. Les chercheurs d'Horizon3.ai soulignent que tout utilisateur de Langflow peut déjà élever ses privilèges au rang de super utilisateur, car il peut exécuter du code sur le serveur de par sa conception. En tant que tel, tout identifiant d'utilisateur Langlow volé ou faible peut représenter un risque important.
« D'une manière générale, nous recommandons de faire preuve de prudence lorsque l'on expose à Internet des outils d'intelligence artificielle récents », ont déclaré les chercheurs. « Si ces outils doivent être exposés à l'extérieur, il vaut mieux prévoir de les placer dans un Cloud Privé Virtuel (Virtual Private Cloud, VPC) isolé et/ou derrière un SSO. Il suffit d'une erreur ou d'un déploiement fantôme de ces outils sur une instance de cloud pour qu'une brèche soit ouverte. »
Commentaire