CyberRota Analysis
AI-GeneratedThe vulnerability in Flowise allows authenticated users to execute arbitrary Python code by leveraging the CSVAgent node's ability to deserialize malicious payloads via pandas.read_pickle(), despite existing denylist protections. This could lead to unauthorized code execution within the application, posing a significant risk to systems using versions prior to 3.1.3. Organizations utilizing Flowise should prioritize upgrading to the latest version to mitigate this security risk.
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 node allowed users to provide Python code that is executed through pyodide; although a denylist blocked dangerous Python constructs, pandas.read_pickle() could deserialize a pickled payload and achieve code execution without matching the denied words. The affected file is flowise-components/nodes/agents/CSVAgent/CSVAgent.ts, where user-supplied customReadCSVFunc is evaluated as pd.${customReadCSVFunc}. An authenticated user who can create or modify a chatflow can add a CSV Agent, place a malicious read_pickle payload in the Additional Parameters, save the chatflow, and trigger /api/v1/prediction/<UUID> to execute commands. This issue is fixed in version 3.1.3.