{"id":"CVE-2026-69255","title":"Flowise is a drag & drop user interface to build a customized large language model flow","summary":"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(',').po…","severity":"high","cvss":8.8,"cvssVector":"CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:H","cwe":["CWE-94"],"vendor":"flowiseai","product":"flowise","affected":["flowise < 3.1.3"],"patched":["flowise 3.1.3"],"published":"2026-08-04","updated":"2026-09-14","sourceUpdated":"2026-09-14T19:58:41.640","source":"NVD","sourceUrl":"https://nvd.nist.gov/vuln/detail/CVE-2026-69255","references":[{"url":"https://github.com/FlowiseAI/Flowise/commit/f4e2794f6a576b94578f2fdafbf49c2fb304626c","label":"security-advisories@github.com"},{"url":"https://github.com/FlowiseAI/Flowise/pull/6499","label":"security-advisories@github.com"},{"url":"https://github.com/FlowiseAI/Flowise/releases/tag/flowise%403.1.3","label":"security-advisories@github.com"},{"url":"https://github.com/FlowiseAI/Flowise/security/advisories/GHSA-vmv7-4m6c-3cg5","label":"security-advisories@github.com"},{"url":"https://github.com/FlowiseAI/Flowise/security/advisories/GHSA-vmv7-4m6c-3cg5","label":"134c704f-9b21-4f2e-91b3-4a467353bcc0"},{"url":"https://github.com/advisories/GHSA-vmv7-4m6c-3cg5"}],"tags":["nvd","ghsa","npm"],"epss":0.00602,"epssPercentile":0.47202,"aliases":["GHSA-vmv7-4m6c-3cg5"],"ecosystem":"npm","ingestedAt":"2026-08-04T16:40:31.908Z","slug":"CVE-2026-69255","body":"## Overview\n\nFlowise 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.\n\n## Affected\n\n- `flowise < 3.1.3`\n\n## Remediation\n\nUpgrade past the affected range:\n\n- `flowise 3.1.3`\n\n## Package advisory (CVE-2026-69255)\n\nAffected packages:\n\n- `flowise <= 3.1.2`\n- `flowise-components <= 3.1.2`\n\nPatched in:\n\n- `flowise 3.1.3`\n- `flowise-components 3.1.3`\n\nSource: https://github.com/advisories/GHSA-vmv7-4m6c-3cg5","depth":"twilight","depthScore":49,"depthScoreParts":{"impact":48.4,"likelihood":0.1,"exploitation":0,"ransomware":0},"changes":[{"seq":203207,"id":"CVE-2026-69255","ts":1789416895669,"field":"cvss","old":null,"new":"8.8"},{"seq":203206,"id":"CVE-2026-69255","ts":1789416895669,"field":"severity","old":"critical","new":"high"}]}