Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to Flowise with Chatflow-edit rights
-
DeliveryModify Chatflow upload config to allow application/javascript
-
ExploitUpload shell.js Node.js web shell via createAttachment
-
ExecutionTrigger execution of stored web shell
-
ImpactRun OS commands as the Flowise process
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A06:2025 - Insecure Design
ASVS 5.0
V5 - File Handling File type validation, storage isolation
MITRE ATT&CK
2 techniques across 2 tactics: Command and Control, Persistence The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires an authenticated Flowise account with permission to modify a Chatflow's file-upload configuration (PR:L in the CVSS vector) - it is not anonymous. The concrete precondition is the ability to edit the Chatflow upload settings to add the application/javascript MIME type, which then allows .js files to be uploaded through the createAttachment path even though the frontend never offers JavaScript as an option. What limits exploitation: the attacker must already have valid credentials/session (the PoC uses a JWT token cookie for an 'admin' user) and Chatflow-edit rights; achieving actual code execution further depends on the uploaded .js file being executed by the Node.js runtime rather than merely stored. No specific user interaction from a victim and no non-default OS platform is required - only versions before 3.1.0. |
| Impact | The signals are mixed and point to a real-but-not-mass-exploitation issue. The CVSS 3.1 base score is 7.1 (AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:N): network reachable, low complexity, but crucially requiring PR:L - the attacker must already be authenticated with rights to modify a Chatflow configuration, which materially constrains the population of real attackers. SSVC frames it as Exploitation: poc, Automatable: no, Technical Impact: partial, consistent with a targeted rather than wormable threat. EPSS is only 0.06% (19th percentile), and there is no CISA KEV listing, so there is no evidence of active exploitation despite public PoC code. The most important caveat: the base CVSS rates only C:L/I:H/A:N, but a successful Node.js web shell yields OS command execution, which in practice implies high confidentiality and availability impact too - the scored vector appears to understate true impact if the upload reliably reaches an executable path. Priority should be driven by whether the Flowise instance is internet-exposed and how loosely Chatflow-edit privileges are granted. |
| Exploit ScenarioDerived | An attacker with a low-privileged Flowise account that can edit a Chatflow modifies the upload configuration to permit the application/javascript MIME type, then uploads shell.js - a Node.js web shell that exposes a ?cmd= HTTP interface. A working PoC (both the web shell and a Python upload script using a valid JWT cookie) is published in the GHSA advisory, and given AV:N/AC:L the upload step is straightforward once authenticated. If the stored file is reachable/executed by the server runtime, the attacker gains arbitrary command execution in the Flowise process context. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 24, 2026
Malicious file upload leading to potential remote code execution in FlowiseAI Flowise before 3.1.0 lets an authenticated attacker bypass MIME-type restrictions in the Chatflow file-upload configuration to add the application/javascript type and store .js Node.js web shells on the server. Publicly available exploit code exists (working web shell and Python upload script published in the GHSA advisory), though EPSS remains very low at 0.06% (19th percentile). This is a bypass of the earlier fix for CVE-2025-61687 (GHSA-35g6-rrw3-v6xc), indicating incomplete prior remediation.
RemediationAI
Vendor-released patch: upgrade Flowise to version 3.1.0 or later, which corrects the MIME-type validation in the Chatflow file-upload settings; this is the primary and complete fix per GHSA-rh7v-6w34-w2rr (https://github.com/FlowiseAI/Flowise/security/advisories/GHSA-rh7v-6w34-w2rr). If immediate upgrade is not possible, apply compensating controls: restrict who can create or modify Chatflow configurations to trusted administrators only (this removes the PR:L primitive but reduces multi-user collaboration), place the Flowise instance behind authentication and off the public internet, and add an upload/egress filter or reverse-proxy rule that rejects .js and application/javascript uploads to the attachment endpoints (trade-off: may break legitimate flows that rely on script assets). Because this is a bypass of the earlier CVE-2025-61687 fix, verify the running version is genuinely 3.1.0 rather than an intermediate build, and monitor the upload directory for unexpected .js files and unexpected outbound listeners (e.g., the PoC's port 8888).
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package 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 drag-and-drop application for building large language model flows. The flaw is a classic CWE-434 Unrestricted Upload of File with Dangerous Type: the createAttachment path and Chatflow configuration file-upload settings do not properly validate MIME types server-side. Although the web UI does not present JavaScript as a selectable upload type, an attacker can edit the Chatflow configuration to inject the application/javascript MIME type, after which the backend accepts .js files. Because Flowise runs on Node.js, an uploaded .js file can be a functional web shell (the PoC spawns child_process.exec via an HTTP listener), turning a file-write primitive into command execution within the server process context. The affected CPE is cpe:2.3:a:flowiseai:flowise:*:*:*:*:*:*:*:*.
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
AV:N/AC:L/PR:L/UI:N/S:U/C:L/I:H/A:N
Authenticated Chatflow-edit access gives PR:L over the network with low complexity; a successful Node.js web shell yields full command execution, so C/I/A all High.
Primary rating from GitHub Advisory.
CVSS VectorGitHub Advisory
Lifecycle Timeline
3DescriptionGitHub Advisory
Flowise is a drag & drop user interface to build a customized large language model flow. Prior to 3.1.0, the Chatflow configuration file upload settings can be modified to allow the application/javascript MIME type. This lets an attacker upload .js files even though the frontend doesn’t normally allow JavaScript uploads. This enables attackers to persistently store malicious Node.js web shells on the server, potentially leading to Remote Code Execution (RCE). This vulnerability is fixed in 3.1.0.
Executive ViewAI
FlowiseAI Flowise versions prior to 3.1.0 contain an authenticated file upload vulnerability allowing attackers to bypass MIME-type restrictions and deploy malicious Node.js web shells, potentially achieving remote code execution on affected servers. Organizations using Flowise as part of their generative AI or chatbot infrastructure face risk of unauthorized system access and data compromise if deployed without immediate patch application. The availability of working exploit code increases operational urgency despite currently low exploitation rates.
Apply vendor patch to version 3.1.0. During rollout, implement strict file-type allowlisting to block .js uploads, restrict file-upload functionality to trusted internal users, and monitor upload endpoints for suspicious JavaScript patterns.
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
Malicious file upload attacks exploit insufficient validation when web applications accept user-provided files.
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-25286
GHSA-rh7v-6w34-w2rr
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB