En bref

  • CVE-2026-44791 (CVSS 9.4) : bypass du patch CVE-2026-42232 dans le noeud XML de n8n permettant une pollution de prototype aboutissant a une execution de code arbitraire (RCE) sur le serveur hote
  • Systemes affectes : toutes les instances n8n auto-hebergees anterieures aux versions 1.123.43, 2.20.7 et 2.22.1 - les instances n8n.cloud sont automatiquement corrigees
  • Action urgente : mettre a jour n8n vers 1.123.43, 2.20.7 ou 2.22.1 immediatement - ou desactiver le noeud XML via la variable d environnement NODES_EXCLUDE=n8n-nodes-base.xml

Les faits

Le mois de mai 2026 a ete marque par une multiplication des vulnerabilites critiques dans n8n, la plateforme d automatisation de workflows open-source devenue incontournable dans les environnements DevOps, IA et integration de donnees. Apres CVE-2026-21877 (CVSS 10.0, RCE non-authentifie) divulguee en janvier 2026, c est cette fois CVE-2026-44791 qui s invite dans les bulletins d alerte avec un CVSS de 9.4 et une nature particulierement preoccupante : il s agit d un bypass du patch precedemment publie pour CVE-2026-42232, revelant une vulnerabilite architecturale profonde dans la gestion du parsing XML au sein de la plateforme.

CVE-2026-44791 est categorisee comme une vulnerabilite de pollution de prototype (prototype pollution) dans le noeud XML de n8n. La pollution de prototype est une classe de vulnerabilites JavaScript consistant a injecter des proprietes arbitraires dans le prototype de l objet racine (Object.prototype), affectant ainsi potentiellement tous les objets de l application. Dans le contexte de n8n, dont le runtime s execute en Node.js, cette primitive d attaque peut etre chainee avec d autres noeuds de traitement pour escalader vers une execution de code arbitraire sur le serveur hote, le scenario le plus grave pour une instance n8n accessible en entreprise.

La particularite de CVE-2026-44791 reside dans son statut de patch bypass. La vulnerabilite originale CVE-2026-42232 avait ete corrigee par l equipe n8n dans une mise a jour anterieure via l ajout de filtres de validation sur les entrees XML traitees par le noeud XML natif. Or, les chercheurs en securite ayant travaille sur l advisory GitHub GHSA-wrwr-h859-xh2r ont decouvert que des chemins alternatifs dans le parseur XML de n8n permettaient de contourner integralement ces filtres. En construisant une charge utile XML specifiquement concue pour exploiter ces chemins non filtres, un attaquant peut toujours induire une pollution de prototype dans le runtime n8n, rendant ainsi le patch precedent inefficace et creusant un faux sentiment de securite chez les administrateurs ayant cru avoir corrige le probleme.

Deux autres vulnerabilites ont ete divulguees simultanement dans le meme bulletin de securite : CVE-2026-44789 (advisory GHSA-hqr4-h3xv-9m3r, CVSS 9.4) concernant une pollution de prototype initiale dans le noeud XML via le parsing du corps de webhook, et CVE-2026-44790 (advisory GHSA-q5f4-99jv-pgg5, CVSS 9.4) traitant d une variante supplementaire exploitant le parseur XML du webhook body. Les trois CVE partagent la meme root cause architecturale, une gestion insuffisante des entrees XML dans les noeuds de traitement n8n, et ont ete corrigees simultanement dans les memes versions de maintenance. L equipe de securite de n8n a publie un bulletin unifie via GitHub Security Advisories le 22 mai 2026, accompagne de correctifs pour les trois branches de maintenance actives.

La chaine d exploitation documentee dans l advisory GHSA-wrwr-h859-xh2r se deroule en trois etapes distinctes. Premierement, un utilisateur authentifie disposant de droits de creation ou modification de workflows cree un workflow contenant un noeud XML avec une entree malveillante craftee pour induire une pollution de prototype via un chemin alternatif non filtre. Deuxiemement, lors de l execution du workflow, le parseur XML traite la charge utile et pollue Object.prototype dans le contexte d execution Node.js du processus n8n. Troisiemement, les noeuds adjacents dans le workflow, notamment les noeuds de type Code, Function, Execute Command, ou les noeuds d integration utilisant des bibliotheques tierces JavaScript, heritent de la propriete polluee et peuvent etre manipules pour executer du code arbitraire avec les droits du processus n8n sur le serveur hote.

La condition d exploitation requiert qu un attaquant dispose de droits de creation ou modification de workflows dans l instance n8n cible. Cette condition limite partiellement la surface d attaque par rapport a CVE-2026-21877 qui ne necessitait aucune authentification. Cependant, dans de nombreux deployements n8n en entreprise, plusieurs utilisateurs disposent de droits de creation de workflows : les equipes d integration, les developpeurs, les equipes data, et parfois des utilisateurs metier avances. Un seul compte compromis parmi ces utilisateurs suffit a declencher l exploitation complete. De plus, dans les instances mal configurees exposees a Internet sans authentification renforcee, un attaquant externe peut creer un compte utilisateur et acceder directement au vecteur d exploitation.

Les versions affectees couvrent l integralite des branches n8n anterieures aux correctifs. La branche 1.x est corrigee a partir de la version 1.123.43. La branche 2.x presente deux versions corrigees selon la branche de maintenance : 2.20.7 pour la branche LTS et 2.22.1 pour la branche courante. Les instances n8n auto-hebergees via Docker, npm ou installation directe sont toutes exposees si elles n ont pas ete mises a jour. Les instances n8n.cloud (service gere officiel) ont ete mises a jour automatiquement par l editeur et ne sont pas affectees.

Le vecteur CVSS v3.1 detaille de CVE-2026-44791 est : AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H. La portee est marquee comme Changed (S:C), signifiant que l impact depasse les limites du composant vulnerable lui-meme. Une RCE sur le serveur n8n permet en effet d acceder aux variables d environnement du processus (contenant typiquement des dizaines de cles d API et credentials pour les services integres), aux bases de donnees locales ou distantes accessibles depuis le serveur n8n, et a l ensemble des systemes connectes via les integrations n8n configurees. Dans des environnements d entreprise ou n8n orchestre des dizaines de systemes (CRM, ERP, outils IA, bases de donnees, APIs cloud), l impact potentiel est comparable a un compromis d infrastructure complet selon les analyses publiees par The Hacker News.

Impact et exposition

L exposition est significative a l echelle mondiale : n8n comptait, selon les statistiques npm et les metriques Docker Hub publiees par l editeur debut 2026, plus de 80 000 instances auto-hebergees actives. La popularite croissante de la plateforme dans les pipelines d automatisation IA, notamment pour orchestrer des agents LLM, des RAG pipelines, des integrations de donnees et des workflows RPA, a multiplie le nombre de deploiements exposes a Internet, parfois sans authentification renforcee ni segmentation reseau adequate.

Les organisations les plus exposees sont celles utilisant n8n en mode multi-utilisateur avec des workflows crees par des equipes techniques non-securite. Dans ce contexte, la compromission d un simple compte de developpeur workflow suffit a exploiter CVE-2026-44791 et a obtenir une RCE avec les droits du processus n8n, souvent execute avec des permissions elargies pour acceder aux ressources d entreprise internes et aux APIs cloud. Les PME et startups tech qui s appuient sur n8n comme colonne vertebrale de leurs integrations sans posture de securite renforcee sont particulierement vulnerables.

L exploitation potentielle permet d acceder a l ensemble des variables d environnement du processus n8n, contenant typiquement des cles d API pour des dizaines de services (Slack, GitHub, Salesforce, OpenAI, bases de donnees, services cloud), des tokens d authentification, des chaines de connexion et des credentials pour les services integres. Dans les environnements ou n8n execute des workflows automatises avec des comptes de service a hauts privileges, l impact peut s etendre a des systemes critiques de production.

Recommandations immediates

  • Mettre a jour n8n immediatement vers 1.123.43, 2.20.7 ou 2.22.1 selon votre branche - via npm : npm update -g n8n ou via Docker : docker pull n8nio/n8n:latest
  • Si la mise a jour immediate est impossible, desactiver le noeud XML en ajoutant la variable d environnement NODES_EXCLUDE=n8n-nodes-base.xml et redemarrer l instance n8n
  • Restreindre les droits de creation et modification de workflows aux seuls utilisateurs de confiance dans les parametres d administration n8n - advisory : GitHub Security Advisory GHSA-wrwr-h859-xh2r
  • Auditer les workflows existants contenant des noeuds XML ou des noeuds Webhook pour detecter des charges utiles suspectes (objets XML contenant les cles __proto__, constructor ou prototype)
  • Effectuer une rotation preventive de tous les secrets stockes dans les variables d environnement n8n si l instance a ete accessible a des utilisateurs non entierement de confiance
  • Verifier les journaux d execution de workflows pour detecter des noeuds XML ayant produit des erreurs inhabituelles ou des connexions sortantes inattendues

Urgence

CVE-2026-44791 (CVSS 9.4) bypasse le correctif precedent, revelant une faille architecturale profonde dans le traitement XML de n8n. Toute instance n8n auto-hebergee non mise a jour vers 1.123.43, 2.20.7 ou 2.22.1 est exposee a un risque de RCE complet. Un utilisateur authentifie avec droits de workflow suffit a compromettre l integralite du serveur hote et des systemes connectes.

Comment savoir si je suis vulnerable ?

Verifiez votre version de n8n avec la commande n8n --version (installation CLI) ou via l interface d administration dans Parametres puis A propos. Si la version est inferieure a 1.123.43 (branche 1.x), 2.20.7 (branche 2.x LTS) ou 2.22.1 (branche 2.x courante), votre instance est vulnerable. Verifiez egalement si le noeud XML est utilise dans vos workflows actifs. Les instances n8n.cloud sont automatiquement a jour et non affectees.

Votre plateforme d automatisation est-elle securisee ?

Ayi NEDJIMI realise des audits cibles pour identifier et corriger vos vulnerabilites dans les plateformes d automatisation et d integration.

Demander un audit