CVE-2026-33309 is a critical RCE in Langflow (CVSS 9.9) that bypasses the previously-issued patch for CVE-2025-68478. Any authenticated user — including trial accounts — can write arbitrary files to the host via a crafted multipart upload, leading to full system compromise. Upgrade to Langflow 1.9.0 immediately; if patching is not possible today, restrict access to the file upload endpoint and audit all authenticated accounts.
Affected Systems
| Package | Ecosystem | Vulnerable Range | Patched |
|---|---|---|---|
| langflow | pip | >= 1.2.0, <= 1.8.1 | 1.9.0 |
Do you use langflow? You're affected.
Severity & Risk
Recommended Action
- 1. PATCH: Upgrade Langflow to version 1.9.0 immediately — this is the only complete fix. 2. WORKAROUND (if patching is delayed): Block or rate-limit POST /api/v2/files/ at the WAF/reverse proxy layer; require additional authentication for file upload operations. 3. AUDIT: Review all user accounts with access to the Langflow instance; revoke unnecessary low-privilege accounts. 4. DETECT: Monitor for unexpected file creation events outside Langflow's designated storage directory (e.g., writes to /etc/, /home/, Python site-packages, or cron directories); alert on new processes spawned by the Langflow service user. 5. ISOLATE: Run Langflow in a minimal container with read-only filesystem mounts where possible; restrict the service account to least-privilege OS permissions. 6. VERIFY: Scan your Langflow deployment logs for POST /api/v2/files/ requests with filenames containing '../', '%2e', encoded slashes, or absolute paths.
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. Versions 1.2.0 through 1.8.1 have a bypass of the patch for CVE-2025-68478 (External Control of File Name), leading to the root architectural issue within `LocalStorageService` remaining unresolved. Because the underlying storage layer lacks boundary containment checks, the system relies entirely on the HTTP-layer `ValidatedFileName` dependency. This defense-in-depth failure leaves the `POST /api/v2/files/` endpoint vulnerable to Arbitrary File Write. The multipart upload filename bypasses the path-parameter guard, allowing authenticated attackers to write files anywhere on the host system, leading to Remote Code Execution (RCE). Version 1.9.0 contains an updated fix.
Exploitation Scenario
An attacker with a low-privilege Langflow account (e.g., a compromised trial user or an insider threat) crafts a multipart HTTP POST to /api/v2/files/ with a filename such as '../../usr/lib/python3/dist-packages/langflow/malicious.py' or a path targeting a cron directory. The HTTP-layer ValidatedFileName check is bypassed because the underlying LocalStorageService performs no boundary containment — the filename passes through the storage layer unchanged. The server writes attacker-controlled Python code to the target path. On next Langflow process restart or scheduled execution, the injected module is imported and the attacker's payload executes with Langflow's process privileges. From there, the attacker establishes a reverse shell, exfiltrates API keys and LLM credentials stored in Langflow's configuration, poisons agent tool definitions to affect downstream AI pipeline consumers, and potentially pivots to connected databases or cloud infrastructure.
Weaknesses (CWE)
CWE-22
Primary
CWE-22 Improper Limitation of a Pathname to a Restricted Directory ('Path Traversal')
Primary
CWE-284
Primary
CWE-284 Improper Access Control
Primary
CWE-73 External Control of File Name or Path
Primary
CWE-73
Primary
CWE-94
Primary
CWE-94 Improper Control of Generation of Code ('Code Injection')
Primary
CVSS Vector
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:C/C:H/I:H/A:H References
- github.com/advisories/GHSA-g2j9-7rj2-gm6c
- github.com/advisories/GHSA-g2j9-7rj2-gm6c
- github.com/advisories/GHSA-g2j9-7rj2-gm6c
- github.com/advisories/GHSA-g2j9-7rj2-gm6c
- github.com/langflow-ai/langflow/security/advisories/GHSA-g2j9-7rj2-gm6c
- github.com/langflow-ai/langflow/security/advisories/GHSA-g2j9-7rj2-gm6c
- github.com/langflow-ai/langflow/security/advisories/GHSA-g2j9-7rj2-gm6c
- github.com/langflow-ai/langflow/security/advisories/GHSA-g2j9-7rj2-gm6c
- github.com/langflow-ai/langflow/security/advisories/GHSA-g2j9-7rj2-gm6c Exploit Mitigation Vendor
- github.com/langflow-ai/langflow/security/advisories/GHSA-g2j9-7rj2-gm6c
- github.com/langflow-ai/langflow/security/advisories/GHSA-g2j9-7rj2-gm6c Exploit Mitigation Vendor
- github.com/langflow-ai/langflow/security/advisories/GHSA-g2j9-7rj2-gm6c