Skip to main content

Flowise CVE-2026-69263

| EUVDEUVD-2026-52795 HIGH
Incomplete List of Disallowed Inputs (CWE-184)
2026-08-04 GitHub_M GHSA-xc48-889x-5qmw
8.7
CVSS 4.0 · Vendor: GitHub_M
View

Attack ChainAIDerived

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

  1. Access
    Access Flowise HTTP API (no credentials on default installs)
  2. Delivery
    Submit Custom MCP stdio config with malicious npx package name
  3. Exploit
    Set npm_config_yes=true in MCP env vars (passes denylist unchecked)
  4. Execution
    Trigger flow execution to launch MCP server
  5. Persist
    npx auto-installs attacker-controlled npm package
  6. Impact
    Execute arbitrary code as Flowise server process

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V2 - Validation and Business Logic Input validation completeness
Exploitation Conditions

The Custom MCP node must be accessible, and the attacker must be able to submit a Custom MCP stdio server configuration with attacker-controlled environment variables. On default Flowise deployments (authentication is disabled out of the box), this requires only network access to the Flowise HTTP API - no credentials or prior session are needed. The stdio transport path was reachable by default in affected versions whenever a command field was provided in the MCP config; no special deployment flag was required. The CUSTOM_MCP_SECURITY_CHECK=true setting does not block this bypass - the attack works specifically because the security check's environment variable validation uses an incomplete denylist. Exploitation is prevented if: Flowise authentication is enabled and the attacker lacks valid credentials; the deployment explicitly sets CUSTOM_MCP_PROTOCOL=sse (disabling stdio transport); or network access to the Flowise API is restricted to trusted users. The vulnerability does not require any specific OS platform or database backend.

Impact

The CVSS 4.0 base score of 8.7 (AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H) reflects a network-accessible, low-complexity vulnerability with high impact across confidentiality, integrity, and availability. The PR:L metric warrants scrutiny: the GHSA advisory explicitly labels this 'Unauthenticated RCE' because Flowise ships with authentication disabled by default, meaning 'low privileges' in practice equates to any network-accessible API call on a default deployment. EPSS data was not provided in the input, so exploitation probability cannot be quantified. KEV status is not confirmed - no CISA KEV listing was present in the source data. No public exploit code has been identified at time of analysis, but the bypass technique is straightforward and completely described in the public GHSA advisory, making CISA KEV listing and rapid exploitation plausible. The structural severity is compounded by the patch bypass nature: organizations that applied the CVE-2025-8943 fix and considered themselves protected remain fully vulnerable on 3.1.1 and 3.1.2. The fix is architecturally sound - switching from denylist to allowlist eliminates the entire class of bypass - but urgency to upgrade is high for any internet-exposed Flowise instance.

Exploit ScenarioDerived

An attacker targets an internet-exposed Flowise 3.1.2 instance running with default settings (no authentication). Using the Flowise API, the attacker creates a Custom MCP flow node configured with npx as the command, a malicious npm package name as the argument, and npm_config_yes=true set in the environment variables map. When the flow is triggered, Flowise's validateEnvironmentVariables passes npm_config_yes through unchecked (it is not in the four-item denylist), npx silently installs the attacker-specified package without prompting, and the package executes arbitrary code as the Flowise server process - granting full control over the host. The bypass technique is entirely derivable from the published GHSA advisory without additional research.

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

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

Alert me

AnalysisAIv1 – Aug 04, 2026

Flowise's patch for CVE-2025-8943 is fully bypassed in versions up to and including 3.1.2, allowing unauthenticated remote code execution on default deployments via the npm_config_yes environment variable. The prior mitigation blocked the -y and --yes flags on npx and denied four specific environment variable names by exact string match, but npm natively reads its configuration from any npm_config_* prefixed variable, making npm_config_yes=true semantically equivalent to --yes. Any attacker who can submit a Custom MCP stdio server configuration - which requires no authentication on default Flowise deployments - can force npx to auto-install and execute an arbitrary package as the Flowise server process. No public exploit code has been identified at time of analysis, though the bypass technique is fully documented in the public GHSA advisory GHSA-xc48-889x-5qmw, making independent weaponization trivial.

RemediationAI

Upgrade to Flowise 3.1.3 or later, available at https://github.com/FlowiseAI/Flowise/releases/tag/flowise@3.1.3 via npm or Docker. The fix replaces the environment variable denylist with a strict allowlist: only variable names explicitly enumerated in the CUSTOM_MCP_ALLOWED_ENV_VARS environment variable (comma-separated, e.g., BRAVE_API_KEY,GITHUB_TOKEN) are permitted through to Custom MCP stdio servers - all others are rejected. The stdio protocol path is now opt-in only via CUSTOM_MCP_PROTOCOL=stdio; deployments that do not set this variable default to SSE, eliminating the stdio attack surface. For deployments that cannot immediately patch: set CUSTOM_MCP_PROTOCOL=sse to disable stdio transport entirely, which blocks this exploit at the cost of losing stdio-based MCP server support. Additionally, enable Flowise authentication (disabled by default) to require credentials before any MCP configuration can be submitted, reducing exposure to authenticated users only. Do not rely on CUSTOM_MCP_SECURITY_CHECK=true as a compensating control - this vulnerability demonstrates that the underlying security check is bypassable by design.

Affected VersionsENISA

Flowise < 3.1.3

Affected Packages

npm flowise fix: 3.1.3
npm flowise-components fix: 3.1.3

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 2 packages in npm

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

Technical ContextAI · show details

Flowise is a Node.js application (cpe:2.3:a:flowiseai:flowise:*:*:*:*:*:*:*:*) that provides a drag-and-drop interface for composing LLM workflows, including integration with Model Context Protocol (MCP) servers over both SSE and stdio transports. The vulnerable code resides in packages/components/nodes/tools/MCP/core.ts, where the validateEnvironmentVariables function implements a hardcoded four-item denylist - ['PATH', 'LD_LIBRARY_PATH', 'DYLD_LIBRARY_PATH', 'NODE_OPTIONS'] - checked by exact string match. The root cause class is CWE-184 (Incomplete List of Disallowed Inputs): npm's documented behavior allows any environment variable of the form npm_config_<option> to override the corresponding CLI flag, so npm_config_yes=true is treated identically to --yes by the npm runtime. This means npx will auto-install the named package without confirmation, bypassing the flag-level check in validateCommandFlags entirely. The stdio transport path in CustomMCP.ts previously defaulted to stdio whenever a command was provided, giving attackers a reachable execution primitive. The fix in 3.1.3 replaces the denylist with an allowlist controlled by CUSTOM_MCP_ALLOWED_ENV_VARS and changes the default transport to SSE, requiring explicit opt-in to stdio via CUSTOM_MCP_PROTOCOL=stdio.

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

Vendor (GitHub_M) PRIMARY 8.7 HIGH
CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N
vuln.today AI 9.9 CRITICAL

Network-accessible and low complexity; PR:L reflects API access needed even on no-auth defaults; S:C because arbitrary package execution escapes Flowise's application scope to the host OS.

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

Primary rating from Vendor (GitHub_M).

CVSS VectorVendor: GitHub_M

Attack Vector
Network
Attack Complexity
Low
Attack Requirements
None
Privileges Required
Low
User Interaction
None
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
High
Vulnerable system: Availability
High
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

2
Patch available
Aug 04, 2026 - 18:02 EUVD
CVE Published
Aug 04, 2026 - 16:54 cve.org
HIGH 8.7

DescriptionCVE.org

Flowise is a drag & drop user interface to build a customized large language model flow. Prior to 3.1.3, the mitigation for CVE-2025-8943 blocked -y and --yes flags on npx, but packages/components/nodes/tools/MCP/core.ts denied only PATH, LD_LIBRARY_PATH, DYLD_LIBRARY_PATH, and NODE_OPTIONS by exact environment-variable name. Because npm reads configuration from npm_config_* variables, setting npm_config_yes=true reproduced --yes behavior without using a blocked flag, causing npx to auto-install and execute the named package when a Custom MCP server launched. This issue is fixed in version 3.1.3.

Latest POC

1 public PoC link from github

Sign in to open the public PoC links collected for this CVE.

Executive ViewAI

Why It Matters

Flowise versions through 3.1.2 contain an unauthenticated remote code execution vulnerability (CVE-2026-69263, CVSS 8.7) that circumvents the vendor's prior security patch, enabling attackers to execute arbitrary code with full server privileges on default deployments. This critically exposes organizations to complete infrastructure compromise through a configuration mechanism that requires no authentication. Immediate interim mitigations are essential because no patch is currently available.

Business Impact: High
Compensating Controls

No vendor-released patch identified at time of analysis. Interim mitigations: restrict network access to MCP configuration endpoints; disable Custom MCP stdio server if unused; enforce strict authentication and allowlisting for MCP configurations; implement process-level environment variable filtering to block npm_config_* prefixes; isolate Flowise in restricted containers with minimal elevated privileges; monitor system and process execution logs for unexpected npx or npm invocations.

Threat Intelligence Overview

EPSS Score
0.3%
Top 81% exploitable
Prevalence
Medium
popular open-source LLM flow builder with growing enterprise adoption
Threat Intel
1
1 source
Data Quality
7 sources
Confidence: High
EUVD 🇯🇵JVN NVD CVE.org EPSS Vulnrichment GHSA GitHub VulDB

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 0.3%
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
Scheduled
Exploitation
Poc
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Total

Priority Score

64
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +44
PoC: +20
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Information disclosure occurs when an application unintentionally exposes sensitive data that aids attackers in reconnaissance or directly compromises security.

CVE-2025-59528 CRITICAL POC
10.0 Sep 22

Flowise version 3.0.5 contains a remote code execution vulnerability in the CustomMCP node. The mcpServerConfig paramete

CVE-2025-8943 CRITICAL POC
9.8 Aug 14

Flowise versions before 3.0.1 allow unauthenticated access to the Custom MCPs feature, which is designed to execute OS c

CVE-2025-26319 CRITICAL POC
9.8 Mar 04

FlowiseAI Flowise version 2.2.6 contains an arbitrary file upload vulnerability in the /api/v1/attachments endpoint. Una

CVE-2025-61913 CRITICAL POC
9.9 Oct 08

Arbitrary file read and write in Flowise versions prior to 3.0.8 allows an authenticated attacker with access to the flo

CVE-2026-56274 HIGH POC
8.7 Jun 23

Remote code execution in Flowise before 3.1.2 allows any authenticated user (or API caller with chatflow view/update per

CVE-2025-58434 CRITICAL POC
9.8 Sep 12

Flowise is a drag & drop user interface to build a customized large language model flow. Rated critical severity (CVSS 9

CVE-2025-61687 HIGH POC
8.8 Oct 06

Authenticated users can upload arbitrary files to Flowise 3.0.7 due to missing validation, enabling persistent storage o

CVE-2026-30821 CRITICAL POC
9.8 Mar 07

Unrestricted file upload in Flowise LLM workflow builder before 3.0.13 via /api/v1/attachments endpoint allows unauthent

CVE-2026-30824 CRITICAL POC
9.8 Mar 07

Missing authentication on NVD data endpoint in Flowise before 3.0.13 allows unauthenticated access to internal vulnerabi

CVE-2025-34267 HIGH POC
8.4 Oct 14

Authenticated remote code execution in FlowiseAI Flowise (v3.0.1 up to but not including 3.0.8, and later versions when

CVE-2026-70470 CRITICAL POC
9.5 Aug 04

Remote code execution in Flowise before 3.1.3 arises because its Pyodide Python-code validator (validatePythonCodeForDat

CVE-2026-69264 CRITICAL POC
9.4 Aug 04

Remote code execution in FlowiseAI Flowise before 3.1.3 lets an attacker execute arbitrary OS commands as the Flowise pr

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