Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L
Network-reachable API Chain with low privileges and no UI; SSRF chiefly enables internal reads (C:H) with limited request-forgery integrity impact (I:L) and no meaningful availability impact.
Primary rating from GitHub Advisory.
CVSS VectorGitHub Advisory
CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L
Lifecycle Timeline
7DescriptionGitHub Advisory
Flowise is a drag & drop user interface to build a customized large language model flow. Prior to 3.1.0, a Server-Side Request Forgery (SSRF) vulnerability exists in FlowiseAI's POST/GET API Chain components that allows unauthenticated attackers to force the server to make arbitrary HTTP requests to internal and external systems. By injecting malicious prompt templates, attackers can bypass the intended API documentation constraints and redirect requests to sensitive internal services, potentially leading to internal network reconnaissance and data exfiltration. This vulnerability is fixed in 3.1.0.
AnalysisAI
Server-Side Request Forgery in Flowise's GET/POST API Chain components (versions prior to 3.1.0) lets unauthenticated remote attackers coerce the server into issuing arbitrary HTTP requests to internal and external hosts. Because the chain trusts LLM-generated URLs derived from user-supplied API documentation, an attacker injects a fake documentation prompt that overrides the intended BASE URL, enabling internal reconnaissance, cloud-metadata access, and data exfiltration. Publicly available exploit code exists (SSVC exploitation: poc), but EPSS is very low (0.05%) and the flaw is not in CISA KEV, so no active exploitation is confirmed.
Technical ContextAI
Flowise is a low-code, drag-and-drop builder for LLM application flows (chatbots, agents, RAG pipelines) built on LangChain-style chains. The defect lives in the API Chain node (packages/components/nodes/chains/ApiChain/postCore.ts and its GET counterpart), which prompts an LLM with a user query plus API documentation and expects back a JSON {url, data} object that it passes directly to fetch(). This is a classic CWE-918 (Server-Side Request Forgery): the constructed request target is derived from untrusted, prompt-injectable input and is never validated against an allowlist or the legitimate base URL. Because the LLM-supplied documentation can itself be attacker-controlled, the model can be steered to emit URLs such as http://host.docker.internal:8080/flag or cloud metadata endpoints (e.g., 169.254.169.254), and the server dutifully connects. The affected CPEs are cpe:2.3:a:flowiseai:flowise and cpe:2.3:a:flowiseai:flowise-components.
RemediationAI
Vendor-released patch: upgrade to Flowise 3.1.0 (and flowise-components 3.1.0), which fixes the issue per GHSA-6r77-hqx7-7vw8. Until you can upgrade, avoid using the GET/POST API Chain nodes in production flows, or restrict their use to trusted, authenticated operators only, since the URL is derived from prompt-injectable input. As compensating controls, place the Flowise server behind egress network controls: block outbound access from the Flowise container to internal RFC1918 ranges, link-local metadata (169.254.169.254), and host.docker.internal, allowing only the specific external API hosts your flows legitimately call - the trade-off is that legitimate API Chain destinations must be explicitly allowlisted. Additionally, run Flowise with IMDSv2 enforced on cloud instances to blunt metadata theft, and put authentication/network ACLs in front of the Flowise application so the chain endpoints are not exposed to untrusted callers. See the advisory at https://github.com/FlowiseAI/Flowise/security/advisories/GHSA-6r77-hqx7-7vw8 for details.
Flowise version 3.0.5 contains a remote code execution vulnerability in the CustomMCP node. The mcpServerConfig paramete
Flowise versions before 3.0.1 allow unauthenticated access to the Custom MCPs feature, which is designed to execute OS c
FlowiseAI Flowise version 2.2.6 contains an arbitrary file upload vulnerability in the /api/v1/attachments endpoint. Una
Flowise is a drag & drop user interface to build a customized large language model flow. Rated critical severity (CVSS 9
Unrestricted file upload in Flowise LLM workflow builder before 3.0.13 via /api/v1/attachments endpoint allows unauthent
Missing authentication on NVD data endpoint in Flowise before 3.0.13 allows unauthenticated access to internal vulnerabi
Remote code execution in Flowise before 3.1.3 arises because its Pyodide Python-code validator (validatePythonCodeForDat
Arbitrary file read and write in FlowiseAI Flowise (versions 2.2.8 through 3.0.5) lets remote unauthenticated attackers
Authenticated remote code execution in FlowiseAI Flowise prior to 3.1.2 allows any user with a valid session or API key
Remote code execution in Flowise before 3.1.2 allows any authenticated user (or API caller with chatflow view/update per
Privilege escalation in Flowise versions prior to 3.0.13 allows authenticated users to bypass API authorization by spoof
Flowise versions up to 3.0.13 is affected by authorization bypass through user-controlled key (CVSS 8.8).
Same weakness CWE-918 – Server-Side Request Forgery (SSRF)
View allShare
External POC / Exploit Code
Leaving vuln.today
EUVD-2026-25288
GHSA-6r77-hqx7-7vw8