CVE-2026-9198 : exécution de code Python arbitraire sans authentification (CVSS 9.8) dans IBM Langflow OSS. Deux requêtes HTTP suffisent pour un accès complet au serveur. Scans massifs et exploitation active confirmés, CISA KEV le 4 août 2026.
En bref
- CVE-2026-9198 : exécution de code Python arbitraire non authentifiée (CVSS 9.8) dans IBM Langflow OSS via bypass automatique de l’authentification et injection de code — deux requêtes HTTP suffisent pour obtenir un accès complet au serveur
- Versions affectées : Langflow OSS 1.0.0 à 1.10.0 — toute instance exposée sur Internet ou sur un réseau accessible est potentiellement compromise
- Action urgente : mettre à jour vers Langflow > 1.10.0, retirer toute instance d’Internet, placer derrière un proxy authentifié et effectuer une rotation immédiate de toutes les clés API LLM stockées — CISA KEV confirmé le 4 août 2026
Les faits
CVE-2026-9198 est une vulnérabilité critique affectant IBM Langflow OSS, une plateforme d’orchestration de workflows d’intelligence artificielle permettant aux équipes de développement et de data science de construire des pipelines d’agents IA, d’intégrer des modèles de langage (LLM) et de concevoir des chaînes de traitement de données via une interface visuelle no-code/low-code. Le score CVSS 3.1 est de 9.8 (vecteur : CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H), ce qui en fait une vulnérabilité de sévérité critique maximale. La CISA a inscrit CVE-2026-9198 dans son catalogue KEV le 4 août 2026, confirmant l’exploitation active dans des environnements de production réels.
La vulnérabilité exploite deux failles logiques distinctes dans l’API backend de Langflow qui, combinées, permettent à un attaquant non authentifié d’exécuter du code Python arbitraire sur le serveur hébergeant la plateforme. La première faille réside dans le endpoint /api/v1/auto_login : ce mécanisme de connexion automatique, conçu pour faciliter le développement local et les déploiements de démonstration, émet des tokens SUPERUSER pour tout appelant réseau sans aucune vérification d’identité. En conditions normales de production sécurisée, cette fonctionnalité aurait dû être désactivée, mais elle reste active par défaut dans les installations standard de Langflow OSS versions 1.0.0 à 1.10.0.
Une fois le token SUPERUSER obtenu via la première requête, la deuxième faille entre en jeu : le endpoint /api/v1/validate/code est destiné à valider la syntaxe de code Python soumis par les utilisateurs lors de la création de composants Langflow personnalisés. Cependant, ce endpoint exécute réellement le code soumis via la fonction Python native exec(), sans restriction de sandbox, sans liste blanche des opérations autorisées, et sans isolation d’un environnement d’exécution restreint. Armé du token SUPERUSER, un attaquant peut soumettre n’importe quel code Python arbitraire — appels système, reverse shells, téléchargements de malwares, exfiltration de données — et l’obtenir exécuté immédiatement avec les privilèges du processus Langflow sur le serveur.
L’enchaînement des deux étapes est redoutablement simple dans sa conception : deux requêtes HTTP POST, la première vers /api/v1/auto_login pour obtenir le token, la seconde vers /api/v1/validate/code avec le payload Python malveillant et le token en header d’autorisation. Ce niveau de simplicité d’exploitation est comparable aux pires vulnérabilités de type « default credentials » ou « unauthenticated admin panel ». Il explique la rapidité avec laquelle des acteurs de la menace ont commencé à scanner Internet à la recherche d’instances Langflow exposées dès la divulgation de la vulnérabilité par IBM PSIRT.
IBM Langflow OSS est particulièrement populaire dans les équipes de data science et d’ingénierie IA, souvent déployé sur des serveurs internes ou dans des environnements cloud pour orchestrer des workflows impliquant des modèles de langage comme OpenAI GPT-4, Anthropic Claude, Google Vertex AI, ou des modèles open source via Hugging Face et Ollama. La particularité dangereuse de Langflow est qu’il est fréquemment configuré avec des accès directs à des API tierces via des clés d’API stockées en clair dans ses fichiers de configuration ou dans ses bases de données locales. Ces clés deviennent immédiatement accessibles à un attaquant ayant obtenu l’exécution de code. Un rapport de ComplianceHub.Wiki souligne que Langflow constitue un véritable coffre-fort de credentials que peu d’organisations ont correctement inventorié dans leur gestion des secrets.
La vulnérabilité a été découverte et signalée à IBM selon un processus de divulgation coordonnée. L’IBM Security Advisory PSIRT correspondant est référencé sous IBM PSIRT Advisory CVE-2026-9198, disponible sur les pages de support IBM. La correction consiste à désactiver le mécanisme d’auto-login en production et à implémenter des restrictions strictes sur l’endpoint de validation de code, supprimant la capacité d’exécution directe via exec(). Les versions corrigées au-delà de 1.10.0 intègrent ces corrections avec la désactivation par défaut d’auto_login et un remplacement de l’exécution directe par une analyse syntaxique AST (Abstract Syntax Tree) sans exécution effective du code soumis.
Les télémétries des chercheurs de SentinelOne et d’Intruder.io font état de scans massifs d’instances Langflow exposées sur Internet depuis début août 2026, avec des tentatives d’exploitation confirmées contre des instances accessibles sans authentification. Parmi les payloads d’exploitation observés : des dropper scripts Python téléchargeant des cryptomineurs, des agents de command-and-control (C2), et dans au moins deux cas documentés par des équipes de réponse aux incidents, des ransomwares ciblant les données de modèles IA et les jeux de données propriétaires stockés localement. Les acteurs malveillants ont rapidement compris la valeur des clés d’API LLM et des données d’entraînement propriétaires accessibles via une instance Langflow compromise.
L’advisory IBM PSIRT CVE-2026-9198 spécifie que la version fixe correspond à toute version supérieure à 1.10.0 du package PyPI langflow. La mise à jour via pip s’effectue avec la commande pip install --upgrade langflow. Pour les déploiements Docker, les images officielles IBM Langflow postérieures au 4 août 2026 intègrent le correctif. Il est essentiel de noter que la simple mise à jour ne suffit pas si des tokens compromis sont déjà présents dans les logs : une rotation complète de l’ensemble des credentials stockés et une inspection approfondie des logs d’activité récents sont indispensables pour les instances ayant été exposées sur Internet avant l’application du patch.
Impact et exposition
L’explosion de l’adoption des plateformes d’orchestration IA en 2025-2026 a conduit de nombreuses organisations à déployer Langflow en environnement de production sans appliquer les bonnes pratiques de sécurité applicative. Des instances Langflow sont fréquemment exposées directement sur Internet sans authentification, parfois délibérément pour faciliter l’accès des équipes distantes, parfois par méconnaissance des risques. Des recherches Shodan menées par plusieurs chercheurs en sécurité début août 2026 ont identifié plusieurs centaines d’instances Langflow directement accessibles depuis Internet, dont une proportion significative dans des versions vulnérables.
Le profil de risque de CVE-2026-9198 est amplifié par la nature même de la plateforme : Langflow est conçu pour s’intégrer avec de nombreux services tiers via des API. Une instance compromise expose non seulement le serveur sous-jacent, mais potentiellement l’ensemble des clés d’API stockées pour les services LLM (OpenAI, Anthropic, Google AI), les bases de données vectorielles (Pinecone, Weaviate, Chroma), les systèmes de fichiers cloud (AWS S3, Google Cloud Storage, Azure Blob Storage), et tout autre service connecté aux workflows IA déployés. Le rayon de blast d’une compromission Langflow est considérablement plus large que celui d’une application web standard.
Les organisations utilisant Langflow pour des workflows RAG (Retrieval-Augmented Generation) disposent de bases de connaissances propriétaires indexées et accessibles depuis l’instance — documents internes confidentiels, contrats, données clients, rapports stratégiques — qui peuvent être exfiltrées en quelques secondes une fois l’exécution de code obtenue. Les modèles fine-tunés hébergés localement et les jeux de données d’entraînement représentent également une propriété intellectuelle critique exposée par cette vulnérabilité, avec un impact potentiel sur la compétitivité et la conformité réglementaire (RGPD, secrets d’affaires).
Le timing de cette vulnérabilité est particulièrement préoccupant : de nombreuses organisations sont actuellement en phase d’industrialisation de leurs projets IA, déployant des infrastructures Langflow en production pour la première fois, sans que les équipes de sécurité soient systématiquement impliquées dans le processus de déploiement. La dette de sécurité accumulée dans les projets IA « move fast » crée un terreau fertile pour l’exploitation de vulnérabilités comme CVE-2026-9198. Les coûts associés à une exploitation réussie incluent non seulement la compromission serveur, mais aussi la surfacturation des API LLM via les clés volées — un vecteur de dommage financier direct souvent sous-estimé.
Recommandations immédiates
- Mettre à jour IBM Langflow vers une version supérieure à 1.10.0 via
pip install --upgrade langflowou en utilisant les images Docker officielles postérieures au 4 août 2026 — référence : IBM PSIRT Advisory CVE-2026-9198 - Retirer immédiatement toute instance Langflow d’un accès Internet direct — placer derrière un reverse proxy avec authentification forte (OAuth2, SAML, MFA) ou restreindre l’accès via VPN
- Effectuer une rotation de toutes les clés d’API stockées dans Langflow (OpenAI, Anthropic, Google AI, Pinecone, AWS S3, etc.) — les considérer comme compromises si l’instance était accessible depuis Internet avec une version vulnérable
- Auditer les logs du serveur Langflow pour des requêtes POST vers
/api/v1/auto_loginet/api/v1/validate/codeprovenant d’adresses IP inattendues, antérieures au patch - Inspecter les processus enfants et les connexions réseau sortantes du processus Langflow pour détecter des activités suspectes (cryptomineurs, agents C2, reverse shells Python)
- Désactiver explicitement la variable d’environnement
LANGFLOW_AUTO_LOGIN=falseen production même après la mise à jour, comme mesure de défense en profondeur - Vérifier sur les portails de facturation des fournisseurs LLM (OpenAI, Anthropic) si des appels API anormaux ont été effectués — indicateur possible de vol et d’utilisation des clés
⚠️ Exploitation massive en cours — Clés API LLM et données IA exposées
CVE-2026-9198 fait l’objet d’une exploitation active et de scans massifs depuis début août 2026. Toute instance Langflow OSS 1.0.0–1.10.0 exposée sur Internet doit être considérée comme potentiellement compromise. La compromission expose non seulement le serveur, mais toutes les clés API LLM, bases de données vectorielles et données propriétaires connectées aux workflows IA. Isolation, mise à jour et rotation des credentials dans les 24 heures.
Comment savoir si je suis vulnérable ?
Vérifiez la version Langflow installée avec pip show langflow | grep Version ou langflow --version. Si la version est comprise entre 1.0.0 et 1.10.0 inclus, vous êtes affecté. Pour tester l’exposition : envoyez une requête POST /api/v1/auto_login à votre instance sans header d’autorisation — si vous recevez un token JWT valide en réponse, l’instance est exploitable sans authentification. Pour les déploiements Docker : docker exec [container_name] pip show langflow | grep Version. Vérifiez également si l’interface Langflow est accessible publiquement depuis Internet via un scan de port sur le port 7860 (port par défaut Langflow).
Votre infrastructure IA est-elle sécurisée ?
Ayi NEDJIMI réalise des audits ciblés pour identifier et corriger vos vulnérabilités, y compris dans vos infrastructures d’orchestration IA.
Demander un auditÀ propos de l'auteur
Ayi NEDJIMI
Auditeur Senior Cybersécurité & Consultant IA
Expert Judiciaire — Cour d'Appel de Paris
Habilitation Confidentiel Défense
[email protected]
Ayi NEDJIMI est un vétéran de la cybersécurité avec plus de 25 ans d'expérience sur des missions critiques. Ancien développeur Microsoft à Redmond sur le module GINA (Windows NT4) et co-auteur de la version française du guide de sécurité Windows NT4 pour la NSA.
À la tête d'Ayi NEDJIMI Consultants, il réalise des audits Lead Auditor ISO 42001 et ISO 27001, des pentests d'infrastructures critiques, du forensics et des missions de conformité NIS2 / AI Act.
Conférencier international (Europe & US), il a formé plus de 10 000 professionnels.
Domaines d'expertise
Ressources & Outils de l'auteur
Testez vos connaissances
Mini-quiz de certification lié à cet article — propulsé par CertifExpress
Articles connexes
CVE-2026-34486 : Apache Tomcat RCE désérialisation KEV
CVE-2026-34486 : régression dans Apache Tomcat transformant EncryptInterceptor en fail-open, permettant une RCE via désérialisation Java sur les clusters. Exploitée par un APT chinois selon Unit 42 de Palo Alto Networks. CISA KEV confirmé.
CVE-2026-8037 : LoadMaster RCE pré-auth CVSS 9.6 KEV
CVE-2026-8037 est une injection de commandes pré-authentifiée CVSS 9.6 dans Progress Kemp LoadMaster permettant l'exécution de code root sans aucune authentification — 792 tentatives d'exploitation documentées, CISA KEV confirmé.
CVE-2026-63077 : JetBrains TeamCity RCE non-auth CISA KEV
CVE-2026-63077 (CVSS 9.8) dans JetBrains TeamCity permet une RCE non authentifiee via deserialisation XStream defectueuse sur /app/agents/v1. Exploitation active confirmee, ajoute au KEV CISA le 5 aout 2026 avec delai federal de 3 jours seulement.
Un projet cybersécurité ? Parlons-en.
Pentest, conformité NIS 2, ISO 27001, audit IA, RSSI externalisé… nos experts répondent sous 24h pour évaluer votre besoin et vous proposer un accompagnement sur mesure.
Commentaires
Aucun commentaire pour le moment. Soyez le premier à commenter !
Laisser un commentaire