CVE-2026-33017 is an unauthenticated RCE in Langflow affecting all versions prior to 1.9.0 — patch immediately or take the instance offline. Any internet-facing Langflow deployment running < 1.9.0 should be treated as compromised: initiate IR and audit logs for exploitation attempts. The Sysdig report confirms active exploitation within 20 hours of disclosure, making this a zero-dwell incident.
Affected Systems
| Package | Ecosystem | Vulnerable Range | Patched |
|---|---|---|---|
| langflow | pip | <= 1.8.1 | No patch |
Do you use langflow? You're affected.
Severity & Risk
Recommended Action
- 1. IMMEDIATE: Upgrade to Langflow 1.9.0 or later — this is the only complete fix. 2. If patching is not immediately possible, block HTTP POST requests to /api/v1/build_public_tmp/ at the WAF or network perimeter. 3. Rotate all credentials accessible by the Langflow process: LLM API keys, database credentials, cloud IAM tokens, and any secrets in environment variables. 4. Hunt for exploitation: search access logs for POST requests to /api/v1/build_public_tmp/ with a non-empty request body — any hit on an unpatched instance should trigger a full IR process. 5. Review Sysdig's published IOC report for known attacker infrastructure and C2 indicators. 6. Disable public flow features entirely if not required by business operations.
Classification
Compliance Impact
This CVE is relevant to:
Technical Details
NVD Description
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.
Exploitation Scenario
An attacker identifies a public-facing Langflow instance via Shodan or Censys (Langflow exposes recognizable UI fingerprints). They craft a POST request to /api/v1/build_public_tmp/{any_valid_flow_id}/flow with a data payload containing a custom Python node whose code executes a reverse shell via subprocess.Popen — no credentials required. Within seconds they receive a shell on the Langflow server, extract all LLM API keys from environment variables, enumerate connected databases and cloud service configurations, pivot to internal AI infrastructure, and deploy a persistent backdoor. The Sysdig report documents this exact chain occurring in under 20 hours post-CVE disclosure, confirming weaponized exploit availability.
Weaknesses (CWE)
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H References
- medium.com/@aviral23/cve-2026-33017-how-i-found-an-unauthenticated-rce-in-langflow-by-reading-the-code-they-already-dc96cdce5896 Exploit 3rd Party
- sysdig.com/blog/cve-2026-33017-how-attackers-compromised-langflow-ai-pipelines-in-20-hours
- sysdig.com/blog/cve-2026-33017-how-attackers-compromised-langflow-ai-pipelines-in-20-hours Press/Media Coverage
- sysdig.com/blog/cve-2026-33017-how-attackers-compromised-langflow-ai-pipelines-in-20-hours
- github.com/advisories/GHSA-vwmf-pq79-vjvx
- github.com/advisories/GHSA-vwmf-pq79-vjvx
- github.com/advisories/GHSA-vwmf-pq79-vjvx
- github.com/langflow-ai/langflow/security/advisories/GHSA-vwmf-pq79-vjvx
- github.com/langflow-ai/langflow/security/advisories/GHSA-vwmf-pq79-vjvx
- github.com/langflow-ai/langflow/security/advisories/GHSA-vwmf-pq79-vjvx
- github.com/advisories/GHSA-rvqx-wpfh-mfx7
- github.com/advisories/GHSA-rvqx-wpfh-mfx7
- github.com/advisories/GHSA-rvqx-wpfh-mfx7 3rd Party
- github.com/langflow-ai/langflow/commit/73b6612e3ef25fdae0a752d75b0fabd47328d4f0 Patch
- github.com/langflow-ai/langflow/commit/73b6612e3ef25fdae0a752d75b0fabd47328d4f0
- github.com/langflow-ai/langflow/commit/73b6612e3ef25fdae0a752d75b0fabd47328d4f0
- github.com/langflow-ai/langflow/security/advisories/GHSA-vwmf-pq79-vjvx
- github.com/langflow-ai/langflow/security/advisories/GHSA-vwmf-pq79-vjvx Exploit Vendor
- github.com/langflow-ai/langflow/security/advisories/GHSA-vwmf-pq79-vjvx