La CVE-2026-39987 dans Marimo, notebook Python open source, permet une RCE sans authentification. Exploitée en 10 heures, elle affecte toutes les versions jusqu'à 0.20.4.
TL;DR — En résumé
CVE-2026-39987 dans Marimo : faille RCE critique CVSS 9.3 exploitée en 10h. Mettez à jour vers 0.23.0 pour protéger vos notebooks Python.
En bref
- La CVE-2026-39987 (CVSS 9.3) permet une exécution de code à distance sans authentification sur Marimo, un notebook Python open source.
- La faille a été exploitée dans la nature moins de 10 heures après la publication de l'advisory, selon Sysdig.
- Toutes les versions jusqu'à 0.20.4 sont vulnérables ; la correction est disponible dans la version 0.23.0.
Ce qui s'est passé
Points clés à retenir
- Ce qui s'est passé
- Pourquoi c'est important
- Ce qu'il faut retenir
Marimo s'est imposé comme l'un des notebooks Python open source les plus prisés des équipes data science et machine learning, séduites par son exécution réactive et son partage simplifié. C'est précisément cette popularité qui rend la vulnérabilité Marimo CVE-2026-39987 RCE particulièrement préoccupante. Des chercheurs ont mis en évidence une faille d'authentification béante sur l'endpoint WebSocket /terminal/ws : contrairement aux autres points d'entrée, comme /ws, qui invoquent correctement la fonction validate_auth(), celui-ci n'effectue aucune vérification d'identité avant d'ouvrir la session. Conséquence directe : n'importe quel attaquant non authentifié capable d'atteindre l'instance sur le réseau obtient un shell PTY complet, avec les privilèges du processus hôte, sans exploiter le moindre débordement mémoire ni contourner de mécanisme cryptographique. Une simple requête suffit à transformer un notebook exposé en porte d'entrée sur l'ensemble du système d'information.
La vulnérabilité, référencée CVE-2026-39987 avec un score CVSS de 9.3, a été rendue publique début avril 2026. Selon les observations de Sysdig, des tentatives d'exploitation ont été détectées dans la nature en moins de 10 heures, un délai qui illustre la rapidité avec laquelle les attaquants intègrent les nouvelles failles dans leurs arsenaux. Ce constat rejoint les observations faites sur d'autres outils IA récemment ciblés, comme la faille sandbox escape dans PraisonAI ou la vulnérabilité CVSS 10 dans Flowise AI.
Toutes les versions de Marimo jusqu'à la 0.20.4 incluse sont affectées. L'équipe de développement a publié un correctif dans la version 0.23.0. Les instances exposées sur Internet sans proxy d'authentification sont les plus à risque, car l'exploitation ne nécessite aucun identifiant.
Pourquoi c'est important
Cette faille met en lumière un problème récurrent dans l'écosystème des outils de data science et d'IA : la sécurité est souvent sacrifiée au profit de la facilité d'utilisation. Les notebooks Python sont fréquemment déployés sur des serveurs accessibles depuis le réseau, parfois directement sur Internet, pour faciliter la collaboration. Un shell complet sans authentification transforme chaque instance vulnérable en point d'entrée pour un attaquant.
Le délai d'exploitation de 10 heures confirme une tendance préoccupante : les fenêtres de remédiation se réduisent drastiquement. Les équipes de sécurité ne peuvent plus compter sur des jours ou des semaines pour appliquer les correctifs. Cette réalité est d'autant plus critique pour les outils IA qui manipulent des données sensibles et ont souvent accès à des ressources GPU coûteuses, comme le soulignait notre analyse sur la surface d'attaque de l'IA agentique. La faille rappelle aussi les risques des contournements d'authentification dans Docker, un autre composant fréquent des environnements data science.
Ce qu'il faut retenir (2)
- Mettez à jour Marimo vers la version 0.23.0 ou ultérieure sans délai.
- Ne jamais exposer un notebook Python directement sur Internet sans reverse proxy avec authentification.
- Surveillez les connexions WebSocket inhabituelles sur vos instances de notebooks et outils IA.
Comment protéger mes notebooks Python contre ce type de faille ?
Placez toujours vos notebooks derrière un reverse proxy (Nginx, Traefik) avec authentification forte. Limitez l'accès réseau aux seules adresses IP autorisées via des règles de pare-feu. Désactivez les fonctionnalités terminal si elles ne sont pas nécessaires. Enfin, maintenez vos outils à jour et surveillez les advisories de sécurité des projets que vous utilisez.
Le délai d'exploitation de 10 heures confirme une tendance préoccupante observée par plusieurs éditeurs de threat intelligence depuis 2025 : le temps moyen entre la publication d'un CVE critique et sa première exploitation en conditions réelles est passé sous la barre des 24 heures pour les outils exposant une interface web accessible sans authentification forte. Sysdig indique avoir repéré les premières tentatives via des scans automatisés ciblant le chemin /terminal/ws, signe que les groupes d'attaquants disposent désormais de pipelines capables d'intégrer un exploit fonctionnel dès la publication d'un advisory public, souvent avant même que les mainteneurs n'aient largement communiqué sur le correctif.
L'écosystème des notebooks Python et des plateformes IA constitue une cible de choix pour ce type d'attaque : ces environnements hébergent fréquemment des identifiants cloud, des clés d'API et des jeux de données sensibles, tout en tournant avec des privilèges système élevés pour faciliter l'installation de dépendances. Un shell PTY obtenu sans authentification permet à un attaquant non seulement d'exécuter du code arbitraire, mais aussi de pivoter vers l'infrastructure cloud sous-jacente via les métadonnées d'instance, un scénario déjà documenté sur des services Jupyter mal configurés exposés publiquement.
Ce qu'il faut retenir
- La faille réside dans une absence totale de contrôle d'authentification sur l'endpoint WebSocket
/terminal/ws, alors que l'endpoint/wsapplique correctementvalidate_auth(). - L'exploitation ne requiert aucun identifiant : un simple accès réseau à l'instance Marimo exposée suffit à obtenir un shell PTY complet.
- Le délai de 10 heures entre publication et exploitation illustre la nécessité d'un patch management réactif, y compris pour les outils data science considérés comme secondaires par les équipes sécurité.
- La mise à jour vers la version 0.23.0 corrige la vulnérabilité en rétablissant la validation d'authentification sur tous les endpoints WebSocket.
Comment protéger mes notebooks Python contre ce type de faille ?
La première mesure consiste à mettre à jour immédiatement toute instance Marimo vers la version 0.23.0 ou supérieure. En complément, plusieurs bonnes pratiques limitent l'exposition de ce type d'outil :
- Ne jamais exposer directement un notebook sur Internet : placez l'instance derrière un VPN, un tunnel SSH ou un reverse proxy imposant une authentification (SSO, Basic Auth, mTLS).
- Segmenter le réseau : limitez l'accès aux ports des serveurs de notebooks aux seules plages IP internes ou aux postes des data scientists via un pare-feu applicatif.
- Auditer les endpoints WebSocket lors de l'intégration de tout nouvel outil open source de data science, en vérifiant que chaque route sensible applique bien une vérification d'authentification cohérente.
- Surveiller les logs d'accès pour détecter des connexions WebSocket anormales ou des commandes shell inhabituelles exécutées depuis le processus du notebook.
- Exécuter les notebooks dans des conteneurs isolés avec des privilèges minimaux, sans accès direct aux métadonnées cloud ni aux secrets de production.
Cet incident rappelle également l'intérêt d'intégrer les outils IA et data science dans le périmètre de la gestion des vulnérabilités de l'entreprise, au même titre que les serveurs applicatifs classiques, plutôt que de les traiter comme des outils de développement à part.
Besoin d'un accompagnement expert ?
Ayi NEDJIMI vous accompagne sur vos projets cybersécurité et IA.
Prendre contactSources et références
À 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
Articles connexes
Miljödata : cyberattaque sur le RH suédois, 200 communes paralysées
Cyberattaque détectée le 23 août 2026 sur Miljödata, éditeur RH suédois : 200 communes privées de leurs outils de gestion des arrêts maladie et accidents du travail.
CVE-2026-60004 : faille RCE CVSS 9.8 dans Gitea activement exploitée
CVE-2026-60004, CVSS 9.8 : tout utilisateur avec accès écriture sur un dépôt Gitea peut exécuter du code arbitraire sur le serveur. CISA confirme l'exploitation active.
Gunra Ransomware : alerte CISA-FBI-NSA sur le RaaS issu de Conti
Advisory conjoint AA26-222A : CISA, FBI, NSA et la police coréenne alertent sur Gunra ransomware, un RaaS dérivé de Conti qui exploite des failles Fortinet non patchées.
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