Description
Flowise is a drag-and-drop user interface for building customized large language model (LLM) flows. Prior to version 3.1.3, several custom-tool components — AgentAsTool, ChatflowTool, and ExecuteFlow — ran code in the in-process  vm2  sandbox. To build that code, they inserted a user-controlled  baseURL  value straight into the JavaScript source, for example  const url = "${baseURL}/..."; . The only check on  baseURL  was  isValidURL , but a valid-looking URL can still contain characters that break out of a code string. An authenticated user could craft a  baseURL  that passed this check, closed the surrounding string, and injected their own JavaScript into the sandboxed script (code injection, CWE-94). The  vm2  sandbox runs in the same Node.js process as Flowise and exposes risky dependencies. As a result, the injected code could escape the sandbox and run arbitrary code on the Flowise server as the Flowise process user. Exploitation only requires an authenticated session. The issue is fixed in version 3.1.3, which passes the URL to the sandbox as data instead of inserting it into code and adds stricter URL validation.
Published: 2026-08-04
Score: 9 Critical
EPSS: n/a
KEV: No
Impact: n/a
Action: n/a
AI Analysis

Impact

A vulnerability in Flowise allows an authenticated user to inject arbitrary JavaScript into code that is executed within the vm2 sandbox. User‑controlled baseURL values are inserted directly into a JavaScript string without sufficient escaping, enabling the injection of malicious code. The injected code can escape the sandbox and run as the Flowise process user, providing full control of the server. This results in Remote Code Execution with the privileges of the Flowise service. The weakness is a form of code injection, identified as CWE-95.

Affected Systems

The affected product is Flowise by FlowiseAI. Versions prior to 3.1.3 are vulnerable. The issue was addressed in release 3.1.3, which passes the baseURL as data into the sandbox and tightens URL validation. Users running any deployment of Flowise 3.1.2 or earlier are at risk.

Risk and Exploitability

The CVSS score of 9 indicates a high‑severity vulnerability. No EPSS score is available, and the flaw is not listed in CISA’s KEV catalog. Exploitation requires an authenticated session and the ability to configure custom‑tool components, but otherwise offers complete server compromise. Attackers can target organizations that host Flowise or provide hosted Flowise services, as the vulnerability exists in the code that runs on the server side.

Generated by OpenCVE AI on August 4, 2026 at 19:41 UTC.

Remediation

No vendor fix or workaround currently provided.

OpenCVE Recommended Actions

  • Upgrade Flowise to version 3.1.3 or later to eliminate the code injection path.
  • Restrict access to custom‑tool configuration pages to trusted administrators until the patch is applied.
  • Monitor system logs for anomalous JavaScript execution or attempts to bypass sandbox restrictions, and investigate any suspicious activity promptly.

Generated by OpenCVE AI on August 4, 2026 at 19:41 UTC.

Tracking

Sign in to view the affected projects.

Advisories
Source ID Title
Github GHSA Github GHSA GHSA-wg86-r78f-74mp Flowise Sandbox Escape to RCE
History

Tue, 04 Aug 2026 17:15:00 +0000

Type Values Removed Values Added
First Time appeared Flowiseai
Flowiseai flowise
Vendors & Products Flowiseai
Flowiseai flowise

Tue, 04 Aug 2026 15:45:00 +0000

Type Values Removed Values Added
Description Flowise is a drag-and-drop user interface for building customized large language model (LLM) flows. Prior to version 3.1.3, several custom-tool components — AgentAsTool, ChatflowTool, and ExecuteFlow — ran code in the in-process  vm2  sandbox. To build that code, they inserted a user-controlled  baseURL  value straight into the JavaScript source, for example  const url = "${baseURL}/..."; . The only check on  baseURL  was  isValidURL , but a valid-looking URL can still contain characters that break out of a code string. An authenticated user could craft a  baseURL  that passed this check, closed the surrounding string, and injected their own JavaScript into the sandboxed script (code injection, CWE-94). The  vm2  sandbox runs in the same Node.js process as Flowise and exposes risky dependencies. As a result, the injected code could escape the sandbox and run arbitrary code on the Flowise server as the Flowise process user. Exploitation only requires an authenticated session. The issue is fixed in version 3.1.3, which passes the URL to the sandbox as data instead of inserting it into code and adds stricter URL validation.
Title Flowise Sandbox Escape to RCE
Weaknesses CWE-95
References
Metrics cvssV4_0

{'score': 9, 'vector': 'CVSS:4.0/AV:N/AC:H/AT:N/PR:L/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H'}


Subscriptions

Flowiseai Flowise
cve-icon MITRE

Status: PUBLISHED

Assigner: GitHub_M

Published:

Updated: 2026-08-04T15:13:39.181Z

Reserved: 2026-08-03T19:54:19.853Z

Link: CVE-2026-69253

cve-icon Vulnrichment

No data.

cve-icon NVD

No data.

cve-icon Redhat

No data.

cve-icon OpenCVE Enrichment

Updated: 2026-08-04T19:45:03Z

Weaknesses
  • CWE-95

    Improper Neutralization of Directives in Dynamically Evaluated Code ('Eval Injection')