Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to Flowise with low-privileged account
-
DeliveryConfigure Custom MCP node with stdio protocol
-
ExploitInject payload via PYTHONWARNINGS/BROWSER env or node root working dir
-
ExecutionBypass argument validation
-
PersistSpawn python3/node executing directive
-
ImpactExecute arbitrary commands on host
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Eval input sanitization
MITRE ATT&CK
1 technique across 1 tactic: Execution The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Requires an authenticated Flowise account (CVSS PR:L) with the ability to configure or run a Custom MCP node, AND the deployment must have CUSTOM_MCP_PROTOCOL set to stdio - this is the specific configuration prerequisite reflected by AT:P in the vector. Concretely, the attacker abuses the PYTHONWARNINGS and BROWSER environment variables passed to python3, or exploits node executing from the unrestricted root working directory, to bypass argument/env validation. Limiting factors: exploitation is not possible against default deployments that do not use the stdio protocol, requires valid low-level credentials (not fully unauthenticated), and depends on python3/node being available on the host; no user interaction by a victim is needed (UI:N). |
| Impact | The signals broadly agree this is a real, high-priority issue for exposed instances, but with an important gating condition. The CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:L/UI:N, full VC/VI/VA and SC/SI/SA High) scores 9.0: network-reachable, low complexity, but requiring an attack precondition (AT:P) and low-level authentication (PR:L). The AT:P and the description together confirm exploitation depends on the non-default stdio protocol configuration, which tempers the raw network-RCE picture. No EPSS score, KEV listing, or POC flag was supplied in the input, so exploitation probability cannot be quantified and there is no evidence of active or automated exploitation. Net assessment: genuine high risk for organizations that expose Flowise to untrusted authenticated users AND run Custom MCP nodes in stdio mode; lower practical risk for default deployments not using stdio. The absence of KEV/EPSS/POC data is a gap - treat the priority as configuration-dependent rather than universally critical. |
| Exploit ScenarioDerived | An attacker with a low-privileged authenticated Flowise account opens a flow using a Custom MCP node configured with the stdio protocol and supplies a python3 command whose PYTHONWARNINGS (or BROWSER) environment variable embeds a coded directive that Python evaluates on startup, or points node at a script via the unrestricted root working directory. When the node executes, the crafted directive bypasses validation and runs arbitrary OS commands on the Flowise host under the service account. No public exploit is identified at time of analysis, but the abuse technique is described concretely in the advisories. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Aug 13, 2026
Remote code execution in Flowise before 3.1.3 lets authenticated users abuse the Custom MCP node - when CUSTOM_MCP_PROTOCOL is set to stdio - to run arbitrary OS commands on the host. By manipulating environment variables (PYTHONWARNINGS, BROWSER) passed to python3 or leveraging node with the root working directory, an attacker bypasses input validation and achieves command execution as the Flowise service account. Reported by VulnCheck with a CVSS 4.0 score of 9.0; no public exploit is identified at time of analysis, though the technique is documented in detail in the vendor advisory.
RemediationAI
Vendor-released patch: upgrade to Flowise 3.1.3 or later, which corrects the Custom MCP node validation. Until upgrading, the most effective compensating control is to avoid the vulnerable code path by not setting CUSTOM_MCP_PROTOCOL to stdio (use a non-stdio transport where feasible), which prevents local interpreter spawning but disables stdio-based Custom MCP servers. Additionally, restrict who can create or edit Custom MCP nodes by tightening authentication and role/workspace permissions so only trusted operators can define MCP commands, and run the Flowise process as a low-privilege, sandboxed account (containerized, non-root, with a restricted working directory and a minimal environment) so that any command execution is contained - noting this does not remove the flaw, only limits blast radius. Network-restrict the Flowise UI/API to trusted operators. Reference the vendor advisory at https://github.com/FlowiseAI/Flowise/security/advisories/GHSA-g98q-rm45-q9h8 and https://www.vulncheck.com/advisories/flowise-before-remote-code-execution-via-custom-mcp for authoritative fix details.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Flowise is an open-source low-code/drag-and-drop platform for building LLM orchestration flows and AI agents. The affected component is the Custom MCP (Model Context Protocol) node, which can launch local MCP servers as child processes over a stdio transport. When CUSTOM_MCP_PROTOCOL=stdio, the node spawns interpreters (python3, node) with user-influenced command arguments and environment variables. The root cause is CWE-95 (Improper Neutralization of Directives in Dynamically Evaluated Code / eval injection): interpreter-level directives passed via environment variables such as PYTHONWARNINGS (which can load and execute arbitrary Python via a coded warning filter) and BROWSER, or node executing scripts relative to an unrestricted root working directory, are not neutralized, so attacker-supplied strings are evaluated as executable code. The CPE cpe:2.3:a:flowiseai:flowise identifies the affected product across all versions prior to the fix.
Know when Flowise 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
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H
Network-reachable but AC:H reflects the required non-default stdio config and validation-bypass crafting; PR:L for authenticated low-privilege user; S:C as execution escapes the app to the host OS with full C/I/A impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
2DescriptionCVE.org
Flowise versions before 3.1.3 contain a remote code execution vulnerability in the Custom MCP node when CUSTOM_MCP_PROTOCOL is set to stdio, allowing authenticated users to execute arbitrary commands by manipulating environment variables and command arguments. Attackers can abuse PYTHONWARNINGS and BROWSER environment variables with python3, or leverage the root working directory with node to bypass validation and execute system commands.
Executive ViewAI
Flowise versions before 3.1.3 contain a critical remote code execution vulnerability allowing authenticated users to execute arbitrary OS commands via the Custom MCP node. Organizations running Flowise for AI workflow automation face immediate risk of system compromise and data breach, with no vendor patch currently available.
No vendor-released patch identified at time of analysis. Interim mitigations: (1) Set CUSTOM_MCP_PROTOCOL to a non-stdio protocol if available; (2) disable Custom MCP node entirely if not business-critical; (3) enforce network-level access controls restricting Flowise connectivity to authorized users and systems; (4) implement multi-factor authentication for all Flowise accounts; (5) deploy host-level monitoring detecting OS command execution from Flowise service account; (6) consider containerization or air-gapping of affected Flowise instances with minimal OS-level permissions.
Threat Intelligence Overview
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.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Code injection occurs when an application accepts user input and passes it directly into a language interpreter or evaluator without proper sanitization.
Remote Code Execution represents the critical moment when an attacker successfully runs arbitrary code on a target system without physical access.
Flowise version 3.0.5 contains a remote code execution vulnerability in the CustomMCP node. The mcpServerConfig paramete
Flowise versions before 3.0.1 allow unauthenticated access to the Custom MCPs feature, which is designed to execute OS c
FlowiseAI Flowise version 2.2.6 contains an arbitrary file upload vulnerability in the /api/v1/attachments endpoint. Una
Arbitrary file read and write in Flowise versions prior to 3.0.8 allows an authenticated attacker with access to the flo
Remote code execution in Flowise before 3.1.2 allows any authenticated user (or API caller with chatflow view/update per
Flowise is a drag & drop user interface to build a customized large language model flow. Rated critical severity (CVSS 9
Authenticated users can upload arbitrary files to Flowise 3.0.7 due to missing validation, enabling persistent storage o
Unrestricted file upload in Flowise LLM workflow builder before 3.0.13 via /api/v1/attachments endpoint allows unauthent
Missing authentication on NVD data endpoint in Flowise before 3.0.13 allows unauthenticated access to internal vulnerabi
Authenticated remote code execution in FlowiseAI Flowise (v3.0.1 up to but not including 3.0.8, and later versions when
Remote code execution in Flowise before 3.1.3 arises because its Pyodide Python-code validator (validatePythonCodeForDat
Remote code execution in FlowiseAI Flowise before 3.1.3 lets an attacker execute arbitrary OS commands as the Flowise pr
EUVD-2026-57805
GHSA-m2vg-4724-xj8g
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB