CVE-2026-33017
Langflow has Unauthenticated Remote Code Execution via Public Flow Build Endpoint
- Published
- Mar 20, 2026
- Updated
- May 21, 2026
- Assigning CNA
- GitHub_M
- Evidence observed
- Mar 25, 2026
Primary CVSS
nvd · CVSS 4.0
CVSS:4.0/AV:N/AC:L/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:L/SI:L/SA:L/E:X/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:XModerate · next 30 days
- Percentile
- 97.9%
- Model date
- Oct 15, 2026
EPSS is a statistical estimate, not a certainty or a measure of impact. Combine it with CVSS, KEV status, exposure and your environment.
CISA Known Exploited
This CVE appears in the CISA Known Exploited Vulnerabilities catalog.
Summary
Langflow is a tool for building and deploying AI-powered agents and workflows. In versions prior to 1.9.0, the POST /api/v1/build_public_tmp/{flow_id}/flow endpoint allows building public flows without requiring authentication. When the optional data parameter is supplied, the endpoint uses attacker-controlled flow data (containing arbitrary Python code in node definitions) instead of the stored flow data from the database. This code is passed to exec() with zero sandboxing, resulting in unauthenticated remote code execution. This is distinct from CVE-2025-3248, which fixed /api/v1/validate/code by adding authentication. The build_public_tmp endpoint is designed to be unauthenticated (for public flows) but incorrectly accepts attacker-supplied flow data containing arbitrary executable code. This issue has been fixed in version 1.9.0.
Sources
langflow/CVE-2026-33017
Langflow Public Flow Build API Unauthenticated Remote Code Execution (CVE-2026-33017)
Vulhub vulnerability labsDeclared conditions
- lab image version: vulhub/langflow:1.8.1(langflow/CVE-2026-33017/docker-compose.yml:services.web.image)
- Langflow Unauth RCEModule
modules/exploits/multi/http/langflow_unauth_rce_cve_2026_33017.rb
Metasploit Framework modulesDeclared conditions
- platform: Python($.exploit_multi/http/langflow_unauth_rce_cve_2026_33017.platform)
- verification: check_declared($.exploit_multi/http/langflow_unauth_rce_cve_2026_33017.check)
http/cves/2026/CVE-2026-33017.yaml
Nuclei TemplatesDeclared conditions
- network: http($.protocol_keys)
- verification: dsl,word($.matchers[*].type)
Responsible use
Use vulnerability information only on systems you own or are authorized to test. Kitploit links to public research metadata and does not store exploit code or malicious payloads.