Skip to main content

Langflow CVE-2025-68478

HIGH
External Control of File Name or Path (CWE-73)
2025-12-19 security-advisories@github.com
7.1
CVSS 3.1 · Vendor: github
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Access
    Obtain valid API key or JWT
  2. Delivery
    POST /api/v1/flows with malicious fs_path
  3. Exploit
    _verify_fs_path touches unvalidated absolute path
  4. Execution
    Flow serialized and written/overwritten on disk
  5. Impact
    Corrupt config or plant payload for RCE/DoS

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V5 - File Handling File name/path control
Exploitation Conditions

Requires an authenticated session - a valid API Key or JWT accepted by the CurrentActiveUser dependency on POST /api/v1/flows - so this is not reachable by fully unauthenticated attackers. Given valid credentials, exploitation works against default configurations prior to the fixed version: the attacker simply supplies an attacker-chosen absolute fs_path in the request body (e.g., /etc/poc.txt), with no path restriction, normalization, or allowed-directory enforcement and no user interaction. The primary limiting factors are the authentication requirement, the OS-level file permissions of the Langflow service account (which bound which paths can actually be written/overwritten), and running a version at or above the patched release.

Impact

This is a genuine but conditional integrity-focused issue rather than a drop-everything emergency. The CVSS 3.1 vector (AV:N/AC:L/PR:L/UI:N) describes a network-reachable, low-complexity flaw, but PR:L is decisive: the vulnerable create_flow endpoint is gated behind CurrentActiveUser (API Key or JWT), so an attacker must already hold valid authenticated access. Impact is I:H with A:L and C:N, consistent with arbitrary file creation/overwrite (CWE-73) rather than data theft. Publicly available exploit code exists (GitHub Security Advisory GHSA-f43r-cc68-gpx4), which raises practical risk, but there is no CISA KEV listing and no EPSS score was provided, so there is no evidence of widespread or automated exploitation at this time - treat POC availability and active exploitation as distinct signals. The most important signal mismatch: the input Tag labels this 'Information Disclosure,' which contradicts the CVSS vector (C:N, I:H) and the described behavior (writing/overwriting files) - this is an integrity/arbitrary-file-write bug, not disclosure. Net: a real priority for any internet-exposed or multi-tenant Langflow instance because authenticated file overwrite of paths like /etc can plausibly escalate to code execution or denial of service, but single-user/trusted-network deployments face lower urgency given the authentication requirement.

Exploit ScenarioDerived

An attacker who already holds a valid Langflow API key or JWT (e.g., a low-privileged tenant, a leaked token, or a malicious internal user) sends a POST /api/v1/flows request with fs_path set to an absolute path such as /etc/poc.txt or a cron/config path. The server calls _verify_fs_path, touches the file if absent, then serializes the Flow object to JSON and writes/overwrites it at that location with no normalization or allowed-directory check. Public exploit code for this flow exists in the referenced GitHub advisory.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 5.8% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Oct 13, 2026

Authenticated file-write vulnerability in Langflow allows any user holding a valid API key or JWT to create or overwrite files at attacker-chosen absolute paths on the server via the fs_path field of a flow-creation request. The endpoint POST /api/v1/flows applies no path normalization, restriction, or allowed-directory enforcement, so the server serializes the flow object to JSON and writes it wherever the caller specifies (e.g., /etc/poc.txt), producing high integrity impact and limited availability impact on files the Langflow service account can write. Exploitation requires an authenticated session (CVSS PR:L), publicly available exploit code exists, and there is no confirmed active exploitation (not in CISA KEV); the practical limit is the OS-level write permissions of the account running Langflow. Fixes are available in Langflow 1.7.0 (per the advisory) with package metadata listing the patched release as 1.7.1.

RemediationAI

Upgrade to Langflow 1.7.1 or later (the advisory for GHSA-f43r-cc68-gpx4 references 1.7.0 as the fix release, and the package metadata records the patched version as 1.7.1 - adopt 1.7.1+ to avoid ambiguity), following the advisory at https://github.com/langflow-ai/langflow/security/advisories/GHSA-f43r-cc68-gpx4. Because exploitation requires only a valid API key or JWT, treat credential hygiene as a first-line control: rotate Langflow API keys and JWTs if you cannot patch immediately, and audit which accounts hold credentials for the flow API. Compensating controls while unpatched, with their trade-offs: run the Langflow service under a dedicated low-privilege OS account whose write access is confined to the Langflow data directory, so an arbitrary fs_path cannot reach /etc, /root, or other sensitive trees (side effect: legitimate custom flow-storage paths outside that directory will fail); deploy in a container with a read-only root filesystem plus a single writable volume mount (side effect: requires reworking any in-container persistence or plugin writes); and network-restrict the Langflow API to trusted clients only, blocking direct internet exposure of the management port (side effect: breaks external integrations that call the API remotely). Enabling file-integrity monitoring on critical directories can surface attempted writes via fs_path but does not prevent them.

Affected Packages

pypi langflow fix: 1.7.0, 1.7.1

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package in pypi

Checking this CVE against your own stacks and servers is part of the Basic plan and up.

Technical ContextAI · show details

The root cause is CWE-73 (External Control of File Name or Path) in Langflow's Python/FastAPI backend. The flow-creation handler in src/backend/base/langflow/api/v1/flows.py accepts a client-supplied fs_path on the FlowCreate model and passes it through _verify_fs_path(), which does nothing more than instantiate pathlib.Path(path) and call .touch() if the path does not already exist. There is no os.path.realpath/resolve() containment check against a permitted base directory, no traversal normalization, and no allowlist, so absolute paths and .. sequences are interpreted literally by the OS. The subsequent _save_flow_to_fs() step performs the actual write, serializing the Flow object to JSON at that location. Access to the endpoint is gated by the CurrentActiveUser dependency (get_current_active_user), meaning a valid API key or JWT is required - the CVSS vector confirms PR:L, consistent with an authenticated rather than anonymous attack path. Because the written content is derived from the serialized flow object rather than arbitrary raw bytes, the realistic impact is clobbering existing files the service account can write (configuration, data, or startup artifacts) plus creating empty/stub files anywhere that account has directory write access; the blast radius is therefore bounded by filesystem permissions and by how the affected deployment exposes the Langflow API.

Know when Langflow gets its next vulnerability

  • Watch products and get an email when something new is published
  • Check this CVE against your own stack and servers
  • Exploit and PoC references, threat intelligence from 22 sources

No credit card · 7-day full trial

Severity by source

Vendor (github) PRIMARY 7.1 HIGH
AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L
vuln.today AI 7.1 HIGH

Network endpoint with low-complexity request; PR:L because a valid API key/JWT is required; I:H for arbitrary file overwrite, A:L for possible service disruption, C:N as no data is read.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:N/I:H/A:L
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:N/VI:H/VA:L/SC:N/SI:N/SA:N

Primary rating from Vendor (github).

CVSS VectorVendor: github

Attack Vector
Network
Attack Complexity
Low
Privileges Required
Low
User Interaction
None
Scope
Unchanged
Confidentiality
None
Integrity
High
Availability
Low

DescriptionCVE.org

Langflow is a tool for building and deploying AI-powered agents and workflows. Prior to version 1.7.0, if an arbitrary path is specified in the request body's fs_path, the server serializes the Flow object into JSON and creates/overwrites a file at that path. There is no path restriction, normalization, or allowed directory enforcement, so absolute paths (e.g., /etc/poc.txt) are interpreted as is. Version 1.7.0 fixes the issue.

Executive ViewAI

Why It Matters

Langflow, an AI/LLM application development platform, contains a high-severity flaw that lets anyone already holding a valid API key or JWT write files to arbitrary absolute paths on the server running the platform. Because Langflow instances typically hold model credentials, integration secrets, and often run in shared or production environments, a single authenticated user with ordinary credentials could corrupt configuration files or plant content that enables deeper compromise. Leadership should care because the exposure is broad (any authenticated tenant of the platform), the exploit code is already public, and the service account's file-write permissions - which frequently extend well beyond the application directory - set the ceiling on damage.

Business Impact: High
Compensating Controls

No vendor-released patch is confirmed in the supplied context (the referenced advisory cites fixes in Langflow 1.7.0, with package metadata listing 1.7.1 - validate and apply if available). Until then: restrict network access to the Langflow API/UI to trusted networks, run the service under a dedicated least-privilege account with a read-only filesystem except for a single application data directory, rotate and minimize API keys and JWTs, block flow-creation requests containing absolute or traversal paths at the API gateway/WAF, and monitor file-integrity and process file-write activity on Langflow hosts. Note that exploitation requires authentication (CVSS PR:L), so key hygiene and credential revocation materially reduce exposure. Exploit status: publicly available exploit code exists; no confirmed active exploitation (not in CISA KEV).

Threat Intelligence Overview

EPSS Score
5.8%
Top 7% exploitable
Prevalence
Medium
popular open-source LLM/agent-building tool, not enterprise-ubiquitous
Exploit
POC
Public exploit code exists
Data Quality
3 sources
Confidence: Low

How this decision was reached

The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.

SignalValue
Severity HIGH
CISA KEV No
Public POC Yes
EPSS 5.8%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Scheduled
Exploitation· derived
Poc
System Exposure· derived
Open
Automatable· derived
No
Human Impact
High

Priority Score

62
Low Medium High Critical
KEV: 0
EPSS: +6
CVSS: +36
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Affected Products (CPE)CVE.org

cpe:2.3:a:langflow:langflow:*:*:*:*:*:*:*:*
CVE-2025-3248 CRITICAL POC
9.8 Apr 07

Langflow before 1.3.0 allows unauthenticated remote code injection through the /api/v1/validate/code endpoint, enabling

CVE-2026-0770 CRITICAL POC
9.8 Jan 23

Langflow has a third RCE vulnerability via exec_globals (EPSS 10.0%) allowing inclusion of untrusted code that executes

CVE-2025-34291 CRITICAL POC
9.4 Dec 05

Account takeover and remote code execution in Langflow AI workflow platform versions ≤1.6.9 due to a CORS misconfigurati

CVE-2026-0768 CRITICAL POC
9.8 Jan 23

Langflow has a code injection vulnerability in the code component (EPSS 2.6%) enabling remote code execution through the

CVE-2026-0769 CRITICAL POC
9.8 Jan 23

Langflow has an eval injection in eval_custom_component_code (EPSS 2.0%) enabling remote code execution through crafted

CVE-2026-10134 CRITICAL POC
10.0 Jun 30

Remote code execution in IBM Langflow OSS 1.0.0 through 1.9.3 lets an unauthenticated attacker inject and run arbitrary

CVE-2026-27966 CRITICAL POC
9.8 Feb 26

Code injection in Langflow CSV Agent node before 1.8.0. The node hardcodes allow_dangerous_code=True, enabling arbitrary

CVE-2024-37014 CRITICAL POC
9.8 Jun 10

Langflow through 0.6.19 allows remote code execution if untrusted users are able to reach the "POST /api/v1/custom_compo

CVE-2026-105697 CRITICAL POC
9.9 Oct 05

OS command injection in Langflow's MCP stdio transport allows an attacker who can reach the MCP server configuration end

CVE-2024-48061 CRITICAL POC
9.8 Nov 04

langflow <=1.0.18 is vulnerable to Remote Code Execution (RCE) as any component provided the code functionality and the

CVE-2024-42835 CRITICAL POC
9.8 Oct 31

langflow v1.0.12 was discovered to contain a remote code execution (RCE) vulnerability via the PythonCodeTool component.

CVE-2026-21445 CRITICAL POC
9.1 Jan 02

Langflow before 1.7.0.dev45 exposes multiple API endpoints without authentication, allowing unauthenticated access to us

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy