p PatchFirst

CVE-2026-69253

CVE-2026-69253 · Flowise Sandbox Escape to RCE

This page contains facts from public vulnerability sources. Check the original advisory before updating.

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.

CVSS 9.0 · Critical · EPSS 0.7% · Fix available

Published
Updated

Stack: node

Affected products and versions

  • flowise

    Versions
    • < 3.1.3: Affected

    No fix published

  • flowise npm

    Affected ranges
    • SEMVER: < 3.1.3

    Update to 3.1.3

  • flowise-components npm

    Affected ranges
    • SEMVER: < 3.1.3

    Update to 3.1.3

Original sources

Check your server →