CyberRota Analysis
AI-GeneratedFlowise versions prior to 3.1.3 contain a vulnerability in the CSVAgent component that allows authenticated attackers to inject malicious Python code through improperly validated CSV data. This could lead to arbitrary command execution with root privileges within the Flowise container, posing a significant risk to system integrity. Organizations using affected versions should prioritize upgrading to 3.1.3 to mitigate this critical security threat.
Public Exploit Signal
A public exploit, PoC, GitHub repository or Metasploit reference was detected for this CVE.
Note: these links are listed for security research and verification purposes only.
Original NVD Description
Flowise is a drag & drop user interface to build a customized large language model flow. Prior to 3.1.3, the CSVAgent in packages/components/nodes/agents/CSVAgent/CSVAgent.ts extracted attacker-controlled CSV data with file.split(',').pop() and interpolated it directly into executable Python as base64_string = "${base64String}" before calling Pyodide. The validatePythonCodeForDataFrame() denylist only checked later LLM-generated code and did not validate this initial code block. An authenticated attacker could inject a closing quote followed by Python code, use Pyodide's js bridge to load Node.js child_process, and execute arbitrary operating system commands as root in the Flowise container. This issue is fixed in version 3.1.3.