CVEvulnerability
CVE-2026-70470
9.5 CRITICAL
Official page ↗
- Status
- Analyzed
- Published
- 2026-08-04
- Last modified
- 2026-10-24
- Assigner
- [email protected]
- CVSS 4.0 ([email protected])
- 9.5 CRITICAL — CVSS:4.0/AV:N/AC:H/AT:N/PR:N/UI:N/VC:H/VI:H/VA:H/SC:H/SI:H/SA:H/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:X/R:X/V:X/RE:X/U:X
- CVSS 3.1 ([email protected])
- 9.8 CRITICAL — CVSS:3.1/AV:N/AC:L/PR:N/UI:N/S:U/C:H/I:H/A:H
- Weaknesses
- CWE-184
Description
Flowise is a drag & drop user interface to build a customized large language model flow. Prior to 3.1.3, Flowise validatePythonCodeForDataFrame in packages/components/src/pythonCodeValidator.ts can be bypassed with Unicode homoglyph identifiers, allowing arbitrary Python execution inside Pyodide and full OS command execution on the Flowise host via Pyodide js module interop. The validator gates pyodide.runPythonAsync in packages/components/nodes/agents/CSVAgent/CSVAgent.ts and packages/components/nodes/agents/AirtableAgent/AirtableAgent.ts with an ASCII word-boundary blacklist. JavaScript regex word boundaries are ASCII-only, while Python 3 NFKC-normalizes identifiers at parse time, so homoglyph forms such as __cl𝐚ss__, __subcl𝐚sses__, __b𝐚se__, and __b𝐮iltins__ bypass the blacklist and are parsed as their ASCII equivalents. This issue is fixed in version 3.1.3.
Affected configurations
• flowiseai flowise (< 3.1.3)
Related
Weakness · CWE (1)
- CWE-184 Incomplete List of Disallowed Inputs weakness
References
- https://github.com/FlowiseAI/Flowise/commit/f4e2794f6a576b94578f2fdafbf49c2fb304626c Patch
- https://github.com/FlowiseAI/Flowise/pull/6499 Issue Tracking, Patch
- https://github.com/FlowiseAI/Flowise/releases/tag/[email protected] Patch, Release Notes
- https://github.com/FlowiseAI/Flowise/security/advisories/GHSA-52fh-8v99-63c2 Exploit, Vendor Advisory
- https://github.com/FlowiseAI/Flowise/security/advisories/GHSA-52fh-8v99-63c2 Exploit, Vendor Advisory