Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with valid API key or session
-
DeliveryCreate malicious Custom Function node
-
ExploitImport native http/https/net module
-
ExecutionRequest internal metadata endpoint (169.254.169.254)
-
PersistBypass HTTP_DENY_LIST SSRF control
-
ImpactExfiltrate IAM credentials or internal data
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Access control enforcement
MITRE ATT&CK
1 technique across 1 tactic: Defense Evasion The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires an authenticated session or valid API key and the ability to create or run a Custom Function node (PR:L). The bypass specifically abuses the native Node.js http, https, and net modules, which are in the NodeVM sandbox's defaultAllowBuiltInDep allowlist while only axios and node-fetch are wrapped with HTTP_DENY_LIST enforcement. Meaningful impact further requires that the Flowise host can actually reach a valuable internal target - the AC:H rating and the advisory's own PoC prerequisites tie full impact to deployment on a cloud instance (e.g., AWS EC2 with an attached IAM role exposing 169.254.169.254). Limiting factors: not automatable at scale (each target needs credentials and a reachable internal endpoint), no unauthenticated path, and instances with no reachable internal/metadata services yield little of value. |
| Impact | The signals are consistent but point to targeted rather than mass exploitation. The provided CVSS 3.1 vector (AV:N/AC:H/PR:L/UI:N, C:H/I:H/A:L, 7.1 High) reflects network reach but requires an authenticated user (PR:L) and high complexity (AC:H) - realistically because meaningful impact depends on the Flowise host having reachable internal targets like a cloud metadata service. SSVC corroborates this: Exploitation=poc (code exists, not observed in the wild), Automatable=no (each target needs a valid session and a reachable internal endpoint), Technical Impact=total. EPSS is very low (0.04%, 11th percentile) and there is no CISA KEV listing, so this is not a spray-and-pray internet threat. It is nonetheless a genuine priority for any Flowise deployment on a cloud instance with an attached IAM role or accessible internal services, where the total technical impact (credential/secret theft) is severe. Note a mild tension worth verifying: the description frames the flaw as an SSRF bypass (confidentiality/exfiltration focused), yet the CVSS assigns I:H - the integrity impact likely reflects the ability to POST to internal write endpoints or to leverage stolen credentials, rather than direct code integrity loss. |
| Exploit ScenarioDerived | An authenticated Flowise user (or an attacker holding a valid API key) creates a Custom Function node whose JavaScript imports the built-in http module and requests http://169.254.169.254/latest/meta-data/iam/security-credentials/, which the axios/node-fetch deny list never inspects. On a Flowise instance running on AWS EC2 with an attached IAM role, this returns temporary cloud credentials that the attacker exfiltrates for lateral movement. A proof-of-concept demonstrating exactly this flow is published in the GitHub advisory. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Jul 24, 2026
Server-Side Request Forgery in FlowiseAI Flowise before 3.1.0 lets authenticated users abuse the Custom Function feature to reach internal network resources such as cloud metadata endpoints. The application's HTTP_DENY_LIST only wraps the axios and node-fetch libraries, so attacker-supplied JavaScript that imports the native Node.js http, https, or net modules sidesteps SSRF controls entirely. Publicly available exploit code exists (SSVC: PoC) with a demonstrated AWS EC2 IAM-credential theft path, though EPSS remains very low at 0.04%.
RemediationAI
Vendor-released patch: 3.1.0 - upgrade both the flowise and flowise-components npm packages to 3.1.0 or later, which extends SSRF protection to the native modules (see GHSA-xhmj-rg95-44hv). Until upgrading, restrict who can create or edit Custom Function nodes: treat Custom Function code execution as an administrative privilege and remove it from lower-trust accounts, since HTTP_DENY_LIST alone does not stop the http/https/net bypass. As network-level compensating controls, run the Flowise instance where it cannot reach sensitive internal endpoints - on AWS enforce IMDSv2 and set the metadata hop limit to 1 (blocks the 169.254.169.254 credential-theft path; side effect: applications relying on IMDSv1 break), and apply egress firewall rules or a NAT/security-group policy denying outbound traffic to link-local and internal RFC1918 ranges (side effect: legitimate internal integrations from flows will also be blocked). Rotate any IAM role or instance credentials if exposure is suspected. Advisory URLs: https://github.com/FlowiseAI/Flowise/security/advisories/GHSA-xhmj-rg95-44hv and https://vuldb.com/vuln/359211.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 2 packages in npm
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Flowise is a low-code, drag-and-drop builder for LLM orchestration flows written in Node.js. Its Custom Function node executes user-supplied JavaScript inside a NodeVM sandbox (vm2-style) configured in packages/components/src/utils.ts. SSRF hardening is implemented in packages/components/src/httpSecurity.ts via a checkDenyList() function, but that check is only bound to mocked wrappers for axios and node-fetch injected through the sandbox's require.mock option. The sandbox's require.builtin allowlist (defaultAllowBuiltInDep) simultaneously grants direct access to the native http, https, net, dns, and dgram modules with no equivalent filtering. This maps to CWE-284 (Improper Access Control): a security control exists but is applied to an incomplete set of code paths, leaving a functionally equivalent primitive unguarded.
Know when Flowise gets its next vulnerability
- Watch products and get an email when something new is published
- Check this CVE against your own stack and servers
- Exploit and PoC references, threat intelligence from 22 sources
No credit card · 7-day full trial
Severity by source
AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:H/A:L
Authenticated user needs Custom Function access (PR:L) and a reachable internal target (AC:H); primary impact is confidentiality (C:H) with limited integrity via internal writes, no availability loss.
Primary rating from NVD.
CVSS VectorNVD
Lifecycle Timeline
4DescriptionNVD
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) protection bypass vulnerability exists in the Custom Function feature. While the application implements SSRF protection via HTTP_DENY_LIST for axios and node-fetch libraries, the built-in Node.js http, https, and net modules are allowed in the NodeVM sandbox without equivalent protection. This allows authenticated users to bypass SSRF controls and access internal network resources (e.g., cloud provider metadata services) This vulnerability is fixed in 3.1.0.
Executive ViewAI
FlowiseAI Flowise before version 3.1.0 contains a Server-Side Request Forgery vulnerability in its Custom Function feature that allows authenticated users to bypass network protections and access internal cloud resources, including AWS IAM credential endpoints. Organizations using Flowise face credential compromise and unauthorized internal network access that could enable lateral movement and data exfiltration.
Apply vendor patch.
Threat Intelligence Overview
How this decision was reached
The engine reads each signal below and applies a fixed list of rules from top to bottom. The first rule that matches sets the recommended action – like a statement, every line is shown.
What every action level means
SSVC AssessmentENISA
Priority Score
Attack Technique
Server-Side Request Forgery exploits applications that fetch remote resources based on user-supplied URLs.
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
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
Arbitrary file read and write in Flowise versions prior to 3.0.8 allows an authenticated attacker with access to the flo
Remote code execution in Flowise before 3.1.2 allows any authenticated user (or API caller with chatflow view/update per
Flowise is a drag & drop user interface to build a customized large language model flow. Rated critical severity (CVSS 9
Authenticated users can upload arbitrary files to Flowise 3.0.7 due to missing validation, enabling persistent storage o
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
Authenticated remote code execution in FlowiseAI Flowise (v3.0.1 up to but not including 3.0.8, and later versions when
Remote code execution in Flowise before 3.1.3 arises because its Pyodide Python-code validator (validatePythonCodeForDat
Remote code execution in FlowiseAI Flowise before 3.1.3 lets an attacker execute arbitrary OS commands as the Flowise pr
EUVD-2026-25287
GHSA-xhmj-rg95-44hv
NVD
CVE.org
EPSS
Vulnrichment
VulDB
Exploit-DB