CVE-2026-42302 (CVSS 9.8) expose le composant agent-sandbox de FastGPT à une RCE non authentifiée via code-server lancé avec --auth none. Versions 4.14.10 à 4.14.12 vulnérables, patch 4.14.13 disponible.
En bref
- CVE-2026-42302 — RCE non authentifié dans le composant agent-sandbox de FastGPT, plateforme de construction d'agents IA, CVSS 9.8 publié le 8 mai 2026.
- Versions affectées : FastGPT 4.14.10 à 4.14.12 incluse. Le service code-server est lancé avec --auth none et écoute sur 0.0.0.0:8080.
- Action urgente : passer à FastGPT 4.14.13 ou supérieur, restreindre l'exposition réseau du port 8080, auditer les sandboxes déployées pour détecter des sessions code-server actives.
Les faits
La vulnérabilité CVE-2026-42302, publiée le 8 mai 2026, frappe FastGPT, une plateforme open source très populaire pour construire des agents conversationnels et des workflows IA sur RAG (Retrieval-Augmented Generation). Avec un score CVSS 3.1 de 9.8 (vecteur AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H), elle figure parmi les défauts les plus sévères publiés cette semaine. Selon l'advisory de l'éditeur et l'analyse publiée sur TheHackerWire, l'exploitation ne demande aucune authentification, aucun pré-requis utilisateur, et peut être déclenchée à distance par simple connexion TCP au port concerné.
Le défaut réside dans le composant agent-sandbox, l'environnement isolé que FastGPT utilise pour exécuter le code généré ou demandé par les agents IA. Cet environnement repose sur code-server, l'IDE Visual Studio Code accessible via le navigateur. Lors de l'initialisation du conteneur, le script entrypoint.sh — chargé d'amorcer le sandbox — démarre code-server avec le drapeau --auth none. Ce drapeau désactive entièrement le mécanisme d'authentification du serveur. Le service est par ailleurs configuré pour écouter sur toutes les interfaces (0.0.0.0) sur le port 8080, ce qui le rend immédiatement joignable dès que le port est exposé sur le réseau.
Selon les chercheurs ayant signalé la faille à l'équipe FastGPT, le scénario d'exploitation se résume à trois étapes triviales : identifier une instance FastGPT exposée, se connecter au port 8080 de la sandbox, et obtenir immédiatement une session interactive code-server avec les privilèges du conteneur. À partir de là, l'attaquant dispose d'un terminal complet, peut exécuter des commandes arbitraires, lire et écrire dans le système de fichiers du conteneur, manipuler les fichiers de configuration de l'agent IA, et potentiellement pivoter vers le service FastGPT principal en exfiltrant les secrets API et clés OpenAI/Anthropic stockés à proximité.
La chronologie de la découverte établie par TheHackerWire indique que le défaut a été identifié lors d'un audit de configuration des images Docker officielles de FastGPT. Le script entrypoint.sh, supposé démarrer un environnement protégé, contenait depuis la version 4.14.10 une option de débogage --auth none qui n'avait jamais été retirée avant la mise en production. La régression provient probablement d'une modification destinée à faciliter les tests internes, propagée dans les builds publics sans contrôle de sécurité.
Aucun PoC public n'a été diffusé à ce stade, mais le code source de FastGPT étant ouvert et le défaut purement configurationnel, l'écriture d'un exploit ne demande qu'une commande netcat ou un navigateur. Plusieurs équipes de threat intelligence ont déjà signalé des balayages opportunistes sur le port 8080 ciblant les bannières HTTP de code-server, ce qui suggère une exploitation imminente in-the-wild si elle n'est pas déjà en cours.
Cette vulnérabilité s'inscrit dans une série noire pour FastGPT : à peine deux semaines avant CVE-2026-42302, les CVE-2026-40351 et CVE-2026-40352 — deux injections NoSQL permettant le takeover administratif non authentifié — étaient déjà signalées. Le projet semble payer le prix d'une adoption rapide dans l'écosystème des agents IA sans renforcement proportionnel des contrôles de sécurité côté infrastructure.
L'éditeur a publié la version 4.14.13 le 8 mai 2026, qui corrige le défaut en supprimant le drapeau --auth none de entrypoint.sh et en imposant un jeton d'authentification généré aléatoirement à chaque démarrage du conteneur sandbox. La mise à jour est marquée comme prioritaire critique dans le changelog.
FastGPT étant fréquemment déployé en self-hosted dans des architectures Kubernetes et Docker Compose pour orchestrer des agents IA d'entreprise, l'exposition réseau réelle dépend de la topologie de chaque organisation. Selon une recherche Shodan menée par plusieurs analystes après publication, environ 2 400 instances FastGPT sont accessibles publiquement, dont une fraction non négligeable expose directement le port 8080 du sandbox.
Impact et exposition
Les organisations exposées sont celles qui déploient FastGPT en self-hosted dans une version 4.14.10, 4.14.11 ou 4.14.12 et qui n'ont pas isolé strictement le composant agent-sandbox derrière un reverse proxy ou une politique réseau Kubernetes. Les déploiements SaaS gérés par l'éditeur sont supposés patchés en priorité, mais aucune communication officielle n'a confirmé l'état de ces environnements à la date de publication.
La surface d'attaque dépasse le périmètre apparent du conteneur. Une fois la session code-server obtenue, l'attaquant peut lire les variables d'environnement injectées (souvent CLES OPENAI_API_KEY, ANTHROPIC_API_KEY, MONGO_URI, JWT_SECRET), accéder aux volumes montés contenant les corpus RAG indexés et les conversations historiques des utilisateurs, et exécuter des requêtes vers les bases vectorielles (Milvus, PostgreSQL/pgvector) accessibles depuis le réseau interne.
Aucune exploitation in-the-wild n'est formellement confirmée à la publication, mais les balayages opportunistes documentés en sources ouvertes et la trivialité de l'attaque rendent l'apparition d'exploits massifs probable dans les 48 à 72 heures. Les équipes SOC doivent considérer toute instance non patchée comme déjà potentiellement compromise.
Le contexte d'exploitation est particulièrement favorable à un attaquant : le sandbox est typiquement déployé avec des privilèges élevés dans Docker afin de pouvoir exécuter du code généré par l'IA, ce qui maximise le rayon d'impact d'une compromission. Dans certaines configurations, l'évasion de conteneur vers l'hôte est plausible si le sandbox a accès au socket Docker — un anti-pattern fréquent observé dans les déploiements communautaires.
Recommandations immédiates
- Mettre à jour FastGPT immédiatement vers la version 4.14.13 ou supérieure (advisory : FastGPT Security Advisory CVE-2026-42302).
- Si la mise à jour ne peut être appliquée sous 24 heures : bloquer l'accès réseau au port 8080 du conteneur agent-sandbox via une NetworkPolicy Kubernetes ou un firewall hôte, en n'autorisant que le service FastGPT principal en source.
- Vérifier les images Docker en cours d'exécution : docker ps --filter ancestor=labring/fastgpt-sandbox puis docker exec [container] cat /entrypoint.sh pour confirmer la présence ou non du drapeau --auth none.
- Auditer les logs code-server à la recherche de connexions WebSocket non sollicitées sur le path /stable-* depuis des IP extérieures connues.
- Faire tourner toutes les clés API (OpenAI, Anthropic, Cohere, etc.) accessibles depuis le sandbox si une instance vulnérable a été exposée publiquement.
- Restreindre les privilèges du conteneur sandbox : retirer le montage du socket Docker, appliquer un profil seccomp et un user non-root.
⚠️ Urgence
CVE-2026-42302 expose une RCE non authentifiée triviale sur un composant souvent déployé avec des privilèges Docker étendus. Toute instance FastGPT en 4.14.10–4.14.12 exposée publiquement doit être considérée comme à risque de compromission imminente. Le délai de patch recommandé est inférieur à 24 heures.
Comment savoir si je suis vulnérable ?
Vérifiez la version de votre instance FastGPT : docker inspect labring/fastgpt:latest | grep -i version ou consultez l'image tag dans votre docker-compose.yml. Si la version est comprise entre 4.14.10 et 4.14.12 incluse, vous êtes vulnérable. Testez ensuite l'exposition du port sandbox : depuis une machine externe, curl -sI http://votre-instance:8080/ — une réponse contenant l'en-tête « code-server » ou un redirect vers /stable-... confirme l'exposition critique.
Votre infrastructure est-elle exposée ?
Ayi NEDJIMI réalise des audits ciblés pour identifier et corriger vos vulnérabilités.
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
ayi@ayinedjimi-consultants.fr
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-42605 : RCE AzuraCast path traversal upload (8.8)
CVE-2026-42605 (CVSS 8.8) : un compte DJ AzuraCast suffit pour exploiter un path traversal dans l'endpoint d'upload Flow.js et déposer un webshell PHP. Patch 0.23.6 urgent.
CVE-2026-27960 : OpenCTI takeover non-auth via API GraphQL
CVE-2026-27960 (CVSS 9.8) permet à un attaquant non authentifié de prendre le contrôle administratif d'OpenCTI via l'API GraphQL. Versions 6.6.0 à 6.9.12 vulnérables.
CVE-2026-42569 : bypass auth phpVMS import legacy (CVSS 9.4)
phpVMS jusqu'à 7.0.5 affecté par CVE-2026-42569 : bypass d'authentification sur endpoints d'import legacy, CVSS 9.4. Mise à jour 7.0.6 obligatoire.
Commentaires
Aucun commentaire pour le moment. Soyez le premier à commenter !
Laisser un commentaire