
Proof of Concept: CVE-2026-21858 ist eine Schwachstelle in n8n, bei der nicht authentifizierte Remote-Angreifer auf sensible Dateien zugreifen können.
Ein Sicherheitsforschungstool zur Erkennung von CVE-2026-21858, einer kritischen Remote-Codeausführung-Schwachstelle in der n8n-Workflow-Automatisierungsplattform.
| Feld | Wert |
|---|---|
| CVE-Kennung | CVE-2026-21858 |
| CVSS v3.1-Wert | 10.0 (Kritisch) |
| CVSS-Vektor | CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:C/C:H/I:H/A:H |
| CWE-Klassifizierung | CWE-94: Improper Control of Generation of Code |
| Hersteller | n8n GmbH |
| Produkt | n8n Workflow Automation |
| Offenlegungsdatum | Januar 2026 |
| Patch verfügbar | Ja (v1.121.0+) |
In n8n-Versionen 1.65.0 bis 1.120.x besteht eine kritische Schwachstelle, die nicht authentifizierten Remote-Angreifern die Ausführung beliebigen Codes auf dem zugrunde liegenden Server ermöglicht. Die Schwachstelle wird über speziell präparierte formularbasierte Workflows ausgenutzt und ermöglicht unbefugten Dateisystemzugriff sowie die Ausführung von Befehlen.
| Versionsbereich | Status |
|---|---|
| < 1.65.0 | Nicht betroffen |
| 1.65.0 - 1.120.x | Verwundbar |
| >= 1.121.0 | Gepatcht |
Die Schwachstelle entsteht durch unzureichende Eingabevalidierung in der formularbasierten Workflow-Ausführungsengine. Bei der Verarbeitung von Benutzerdaten über Formular-Trigger bereinigt n8n die Eingabeparameter nicht ordnungsgemäß, bevor sie an interne Ausführungskontexte übergeben werden.
| Paket | Mindestversion | Zweck |
|---|---|---|
| requests | 2.31.0 | HTTP-Anfrageverarbeitung |
| urllib3 | 2.0.0 | URL- und Verbindungsverwaltung |
| packaging | 23.0 | Versionsvergleichslogik |
uv ist ein schneller Installer und Resolver für Python-Pakete.
# Clone the repository
git clone https://github.com/sh4den/CVE-2026-21858.git
cd CVE-2026-21858
# Install dependencies and create virtual environment
uv sync
# Run the tool
uv run python main.py -u https://target.example.com
# Clone the repository
git clone https://github.com/sh4den/CVE-2026-21858.git
cd CVE-2026-21858
# Create virtual environment (recommended)
python3 -m venv venv
source venv/bin/activate # Linux/macOS
# or
.\venv\Scripts\activate # Windows
# Install dependencies
pip install requests>=2.31.0 urllib3>=2.0.0 packaging>=23.0
# Run the tool
python main.py -u https://target.example.com
# Ensure Python 3.12+ is installed
python3 --version
# Install required packages
pip install requests urllib3 packaging
# Download and run
curl -O https://raw.githubusercontent.com/sh4den/CVE-2026-21858/main/main.py
python3 main.py -u https://target.example.com
Usage:
python main.py -u <target_url> Scan single target
python main.py -l <targets_file> Scan multiple targets from file
Arguments:
-u Single target URL
-l Path to file containing target URLs (one per line)
Testen Sie eine einzelne n8n-Instanz auf die Schwachstelle:
python main.py -u https://n8n.example.com
python main.py -u http://192.168.1.100:5678
Mehrere Ziele aus einer Datei scannen:
python main.py -l targets.txt
Format der Zieldatei (targets.txt):
https://n8n.company-a.com
https://n8n.company-b.com:5678
http://10.0.0.50:5678
n8n.company-c.com
192.168.1.100:5678
Hinweise:
https://Das Tool nutzt passive Versionserkennung über die folgenden Schritte:
/signin-Endpunktn8n:config:sentry im HTML[email protected]GET /signin HTTP/1.1
Host: target.example.com
User-Agent: Mozilla/5.0 (Windows NT 10.0; Win64; x64) AppleWebKit/537.36
Accept: text/html,application/xhtml+xml,application/xml;q=0.9
Accept-Language: en-US,en;q=0.5
Connection: close
n8n aktualisieren: Sofort auf Version 1.121.0 oder höher aktualisieren
# Using npm
npm update -g n8n
# Using Docker
docker pull n8nio/n8n:latest
Netzwerk-Isolation: Zugriff auf n8n-Instanzen einschränken
Workflow-Audit: Alle vorhandenen Workflows überprüfen
# Verify n8n version after update
n8n --version
# Or check via this tool
python main.py -u https://your-n8n-instance.com
# Expected: [SAFE] ... Version: 1.121.0+ (not vulnerable)
Prüfen Sie die n8n- und Webserver-Protokolle auf folgende Muster:
WICHTIG: VOR DER VERWENDUNG LESEN
Dieses Tool wird ausschließlich bereitgestellt für:
Verbotene Verwendungen:
Haftung: Die Autoren und Mitwirkenden übernehmen keinerlei Verantwortung für die missbräuchliche Verwendung dieser Software. Die Benutzer sind allein dafür verantwortlich, die Einhaltung aller geltenden Gesetze sicherzustellen und vor der Durchführung von Sicherheitstests eine ordnungsgemäße Genehmigung einzuholen.
Rechtshinweis: Unbefugter Zugriff auf Computersysteme ist in den meisten Rechtsordnungen eine Straftat, einschließlich, aber nicht beschränkt auf Verstöße gegen den Computer Fraud and Abuse Act (CFAA) in den Vereinigten Staaten, den Computer Misuse Act im Vereinigten Königreich und ähnliche Gesetzgebung weltweit.
| Version | Datum | Änderungen |
|---|---|---|
| 1.0.0 | 2026-01-20 | Erstveröffentlichung |
Dieses Projekt wird ausschließlich für autorisierte Sicherheitsforschungszwecke bereitgestellt. Es wird keinerlei Gewährleistung übernommen, weder ausdrücklich noch stillschweigend. Nutzung auf eigene Gefahr und in Übereinstimmung mit den geltenden Gesetzen.
| Indikator | Farbe | Beschreibung |
|---|
[VULNERABLE] | Grün | Ziel läuft eine verwundbare n8n-Version (1.65.0 - 1.120.x) |
[SAFE] | Blau | Ziel läuft eine gepatchte Version (>= 1.121.0 oder < 1.65.0) |
[WARNING] | Gelb | n8n-Instanz erkannt, aber Versionsextraktion fehlgeschlagen |
[ERROR] | Rot | Verbindungsfehler, Zeitüberschreitung oder kein n8n-Ziel |
| Aktion | Priorität | Beschreibung |
|---|
| Patch-Verwaltung | Kritisch | Automatisierte Update-Verfahren für n8n einrichten |
| Zugriffskontrolle | Hoch | Authentifizierung für alle n8n-Endpunkte implementieren |
| Netzwerksegmentierung | Hoch | n8n von öffentlichen Netzwerken isolieren |
| Überwachung | Mittel | Protokollierung und Alarmierung für n8n-Aktivitäten bereitstellen |
| Minimale Rechtevergabe | Mittel | n8n mit minimal erforderlichen Berechtigungen ausführen |
| Backups | Mittel | Regelmäßige Backups der Workflow-Konfigurationen aufrechterhalten |