En bref

  • Cluster de 5 vulnérabilités CVSS 9.8 (CVE-2026-57124, CVE-2026-57131, CVE-2026-57139, CVE-2026-57141, CVE-2026-57148) dans PraisonAI et praisonaiagents permettant l'exécution de code à distance sans authentification
  • Systèmes affectés : PraisonAI et la bibliothèque praisonaiagents versions antérieures à 4.6.59 — interfaces MCP exposées sur 0.0.0.0 par défaut
  • Action urgente : mettre à jour vers PraisonAI 4.6.59 ou supérieur ; restreindre l'exposition réseau du serveur MCP si la mise à jour est impossible

Les faits

Les 14 et 15 septembre 2026, cinq vulnérabilités critiques affectant PraisonAI, un framework populaire d'orchestration d'agents IA multi-modèles, ont été divulguées publiquement. Ces failles, toutes notées CVSS 9.8, affectent le protocole Model Context Protocol (MCP) implémenté dans le framework et sa bibliothèque complémentaire praisonaiagents. Elles permettent à un attaquant distant non authentifié d'exécuter du code arbitraire sur les serveurs hébergeant PraisonAI, compromettant ainsi l'intégralité des données et des workflows IA de l'organisation visée.

CVE-2026-57124 est la faille pivot du cluster. Elle affecte l'API MCP exposée par les interfaces utilisateur de PraisonAI. Le serveur MCP expose le point d'entrée POST /api/mcp/connect sans exiger d'authentification. Ce point d'entrée accepte des paramètres command et args fournis par l'appelant, qui sont transmis directement au constructeur StdioMCPClient pour démarrer un processus local sur le serveur hôte. Comme les commandes UI de PraisonAI se lient par défaut à l'interface 0.0.0.0 (toutes les interfaces réseau), n'importe quel client accessible en réseau peut exécuter des commandes système arbitraires sous le compte de service de l'interface UI, même si le handshake MCP échoue ultérieurement. La vulnérabilité est corrigée dans la version 4.6.59.

CVE-2026-57139 exploite une faille similaire dans MCPServer.startHttp(). Cette méthode démarre un serveur HTTP sans restriction de bind-host et sans authentification. Chaque requête HTTP POST reçue est transmise sans vérification aux handlers enregistrés, permettant à un attaquant réseau de déclencher l'exécution de toute fonction enregistrée côté serveur avec les credentials du service. Le vecteur d'attaque est identique : connexion réseau directe à l'interface HTTP MCP, sans aucune connaissance préalable de la cible.

CVE-2026-57131 et CVE-2026-57141 concernent toutes deux des vulnérabilités d'injection de code via l'outil codeMode. Cet outil exécute du JavaScript généré par le modèle LLM en utilisant new Function() combiné à une sandbox with(sandbox). La protection repose sur une liste noire basée sur des expressions régulières censée interdire l'accès aux objets globaux dangereux. Or, un attaquant peut contourner ce filtre regex par diverses techniques d'obfuscation afin de reconstruire le module child_process et d'exécuter des commandes système arbitraires. La particularité de ces CVE est qu'elles peuvent être déclenchées par une instruction injectée dans le prompt LLM (prompt injection vers RCE), ouvrant un vecteur d'attaque via des données utilisateur ou des sources tierces ingérées par l'agent IA.

CVE-2026-57147 et CVE-2026-57148 complètent le tableau avec respectivement des credentials codés en dur (hardcoded credentials, CWE-798) et un bypass d'authentification par canal alternatif (CWE-288). CVE-2026-57147 identifie des clés d'API ou tokens d'authentification intégrés directement dans le code source de praisonaiagents, accessibles à quiconque installe le package ou consulte le dépôt public. CVE-2026-57148 décrit un mécanisme d'authentification contournable via un chemin de requête alternatif non soumis aux contrôles d'accès normaux.

PraisonAI est un framework open source utilisé pour construire des pipelines d'agents IA multi-modèles, compatible avec les API OpenAI, Anthropic, Google Gemini, Ollama et d'autres. Il est fréquemment déployé dans des environnements d'entreprise pour automatiser des processus métier, générer du contenu, analyser des données sensibles et orchestrer des workflows complexes via des outils MCP. Sa popularité croissante dans le domaine de l'IA d'entreprise en fait une cible de choix pour les acteurs de la menace cherchant à accéder aux données et aux systèmes d'entreprise via les nouvelles couches d'infrastructure IA.

Le contexte est particulièrement préoccupant : les serveurs PraisonAI déployés en entreprise ont souvent accès à des bases de données, des APIs internes, des fichiers sensibles et d'autres systèmes via les outils MCP configurés. Une compromission du serveur PraisonAI ne se limite donc pas à l'équipement lui-même, mais peut servir de pivot vers l'intégralité des ressources accessibles par le compte de service hébergeant PraisonAI.

Ces failles s'inscrivent dans une tendance plus large de vulnérabilités affectant les infrastructures IA d'entreprise en 2026. Les frameworks d'orchestration IA, adoptés rapidement par les organisations sans toujours appliquer les mêmes standards de sécurité que pour les logiciels traditionnels, représentent une surface d'attaque émergente et encore insuffisamment surveillée par les équipes SOC. Selon le bulletin CVE Brief du 15 septembre 2026, les frameworks d'orchestration IA ont généré 13 CVE actifs ce seul jour, marquant une accélération notable de la recherche offensive sur ces composants.

Impact et exposition

Toute instance PraisonAI ou praisonaiagents exposée sur un réseau accessible (intranet ou Internet) avant la version 4.6.59 est potentiellement vulnérable. L'exposition est particulièrement critique lorsque l'interface MCP est accessible depuis Internet ou depuis un segment réseau non isolé. Le binding par défaut sur 0.0.0.0 signifie que la plupart des déploiements sans configuration réseau explicite sont exposés sur toutes leurs interfaces, y compris les interfaces réseau internes et potentiellement externes selon la configuration du serveur hôte.

Le vecteur de CVE-2026-57131 et CVE-2026-57141 (prompt injection vers RCE) est particulièrement insidieux car il peut être déclenché sans accès réseau direct au serveur PraisonAI : il suffit qu'un agent IA traite des données contenant des instructions malveillantes (email, document, page web, entrée base de données) pour que la RCE soit déclenchée côté serveur. Ce scénario est difficile à défendre car il exploite la logique applicative de l'IA plutôt qu'une faille réseau classique, et les mécanismes de défense standard (pare-feu, WAF) ne peuvent pas le prévenir.

Les organisations déployant PraisonAI pour traiter des données sensibles — contrats, données RH, données financières, code source propriétaire — sont particulièrement exposées. Un attaquant obtenant une RCE sur le serveur PraisonAI a potentiellement accès à l'ensemble des données ingérées par l'agent IA ainsi qu'aux credentials de connexion aux systèmes tiers configurés dans le framework. Dans les environnements où PraisonAI est connecté à des bases de données de production ou à des API internes critiques, l'impact peut être catastrophique.

Recommandations immédiates

  • Mettre à jour PraisonAI et praisonaiagents vers la version 4.6.59 minimum : pip install --upgrade praisonai praisonaiagents
  • Vérifier la version installée : pip show praisonai praisonaiagents | grep Version
  • Restreindre l'accès réseau au serveur MCP PraisonAI via des règles de pare-feu : n'autoriser que les adresses IP légitimes à atteindre les ports d'écoute MCP
  • Configurer explicitement le bind-host sur 127.0.0.1 ou une interface interne spécifique plutôt que 0.0.0.0 si l'accès réseau externe n'est pas requis
  • Auditer les logs du serveur PraisonAI pour des appels MCP inhabituels ou des exécutions de commandes système inattendues
  • Scanner les secrets dans le code source si praisonaiagents est utilisé comme dépendance pour identifier les credentials hardcodés (CVE-2026-57147) via des outils comme truffleHog ou gitleaks

⚠️ Urgence

Le cluster CVE-2026-57124 expose les infrastructures IA d'entreprise à une compromission complète sans authentification. Avec le binding par défaut sur 0.0.0.0 et l'absence d'authentification sur l'API MCP, toute instance PraisonAI déployée sans restriction réseau explicite doit être considérée comme exposée. Mettez à jour vers la version 4.6.59 immédiatement.

Comment savoir si je suis vulnérable ?

Exécutez pip show praisonai praisonaiagents | grep Version sur votre environnement Python. Si la version affichée est inférieure à 4.6.59, votre installation est vulnérable. Pour vérifier l'exposition réseau, exécutez ss -tlnp | grep python pour identifier les ports en écoute. Si des ports PraisonAI sont en écoute sur 0.0.0.0, l'interface est accessible depuis toutes les interfaces réseau et doit être sécurisée immédiatement.

Votre infrastructure IA est-elle sécurisée ?

Ayi NEDJIMI réalise des audits ciblés pour identifier et corriger vos vulnérabilités.

Demander un audit