Retour aux bulletins
Critique2026-03-11CVSS 9.9CVE-2025-68613 (2026-03-11)n8nrceexpression-injectionworkflow

n8n Remote Code Execution via Expression Injection

Une vulnérabilité critique dans le moteur d'évaluation d'expressions de n8n permet à un utilisateur authentifié de s'échapper de la sandbox et d'obtenir une exécution de code à distance sur le serveur hôte. Activement exploitée in the wild.

Contexte

n8n est une plateforme d'automatisation de workflows open-source. CVE-2025-68613 (GHSA-v98v-ff95-f3cp) affecte le moteur d'évaluation d'expressions dans les versions 0.211.0 à 1.122.0. CISA l'a ajoutée au catalogue Known Exploited Vulnerabilities (KEV) sur la base d'une exploitation active confirmée.

Vulnérabilité

La faille réside dans la sandbox d'évaluation d'expressions de n8n, qui n'isole pas suffisamment les expressions fournies par l'utilisateur du runtime Node.js sous-jacent. Une expression de workflow spécialement conçue peut s'échapper de la sandbox et accéder à l'objet global this de Node.js.

De là, l'attaquant peut atteindre process.mainModule et exécuter des commandes OS arbitraires :

// Expression malveillante qui s'échappe de la sandbox
{{ Function('return this')().process.mainModule.require('child_process').execSync('id').toString() }}

Cela donne une exécution de code complète avec les privilèges du processus n8n.

Prérequis d'attaque

  • Authentification requise — mais aucun privilège élevé au-delà de la création/édition de workflows
  • Faible complexité d'attaque
  • Accessible via le réseau

Impact

  • Prise de contrôle complète de l'instance
  • Exfiltration de données (credentials, secrets de workflow, tokens des services connectés)
  • Lateral movement vers les systèmes connectés via les intégrations de workflows existantes
  • ~24 700 instances restent publiquement exposées selon CISA
  • Deadline de remédiation CISA : 25 mars 2026

Versions affectées

Vulnérables : 0.211.0 à 1.120.3, et 1.121.0

Corrigées : 1.120.4, 1.121.1, 1.122.0+

Indicateurs de compromission (IOCs)

Patterns de requêtes web — inspecter le corps des requêtes HTTP envoyées à l'application n8n pour détecter des expressions contenant :

  • Function('return this')()
  • process.mainModule.require
  • child_process
  • execSync, exec, spawn

Comportements post-exploitation :

  • Connexions reverse shell provenant du processus n8n
  • Processus enfants inattendus lancés par le processus Node.js de n8n (ex. : /bin/sh, curl, wget)
  • Écritures de fichiers en dehors des répertoires de données normaux de n8n
  • Commandes de reconnaissance (whoami, id, uname, env, cat /etc/passwd)

Détection : corréler les logs d'accès web avec les événements de création de processus sur l'hôte n8n. Un pic d'exploitation a été observé fin décembre 2025.

Remédiation

  1. Mettre à jour immédiatement vers n8n 1.120.4, 1.121.1, ou 1.122.0+ qui renforcent l'évaluation d'expressions et empêchent les sandbox escapes.
  2. Auditer l'historique des workflows pour détecter des expressions suspectes accédant à process, require, ou child_process.
  3. Restreindre les permissions de création/édition de workflows aux utilisateurs de confiance.
  4. Ne pas exposer les instances n8n directement sur internet — utiliser un reverse proxy avec authentification.