Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate as user in any workspace
-
DeliveryObtain a foreign workspace's credential UUID
-
ExploitCall openai-assistants / file-upload / TTS endpoint with that UUID
-
ExecutionServer decrypts and uses victim's API key
-
ImpactConsume key or read/delete cross-workspace assistant data
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Object-level authorization, IDOR prevention
|
| Exploitation Conditions | Requires a valid authenticated account on a multi-tenant/multi-workspace Flowise instance (PR:L) and knowledge of a credential UUID belonging to a different workspace - this UUID knowledge is the key limiting factor (reflected as AT:P), since UUIDs are unguessable and not enumerable from the vulnerable endpoints. Exploitation targets the credential-lookup logic behind GET /api/v1/openai-assistants and /:id, POST /api/v1/openai-assistants-file/upload/, DELETE /api/v1/assistants/:id (reached by first importing a poisoned assistant row via POST /api/v1/export-import/import), and GET /api/v1/text-to-speech/voices. It applies to default multi-workspace deployments configured with OpenAI or ElevenLabs credentials; single-workspace instances have no cross-tenant boundary to violate. No user interaction from a victim is required (UI:N). |
| Impact | This is a genuine but moderate-priority cross-tenant access-control flaw, not a headline emergency. The vendor CVSS 4.0 vector (AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N, 7.6) correctly reflects a network-reachable, authenticated (PR:L) issue that carries an attack requirement (AT:P) - the attacker must know or obtain a valid credential UUID belonging to another workspace, which is the single biggest limiting factor since UUIDs are not enumerable. There is no EPSS score, no CISA KEV listing, and no public exploit code in the provided data, so exploitation status is 'no public exploit identified at time of analysis' - this is not confirmed active exploitation. The VI:H (high integrity) impact appears generous: only the deleteAssistant path enables modification (deleting an assistant, reachable indirectly via a poisoned import), while most impact is confidentiality/abuse of another workspace's OpenAI or ElevenLabs API key. The CWE-639 classification (IDOR / authorization) is accurate, but the 'Authentication Bypass' tag is a mislabel - the attacker is already authenticated and the flaw is a missing workspace-scoping authorization check, not an authentication bypass. Net: real cross-workspace data/credential-abuse risk for multi-tenant Flowise deployments, tempered by the need for valid authentication and knowledge of a foreign credential UUID, and no patch was available at publication. |
| Exploit ScenarioDerived | An authenticated low-privilege user in one Flowise workspace calls an OpenAI-assistant, file-upload, or text-to-speech endpoint and supplies a credential UUID belonging to a different workspace; because the lookup does findOneBy({id}) with no workspaceId filter, the server decrypts and uses the victim workspace's OpenAI or ElevenLabs API key on the attacker's behalf (consuming quota, exfiltrating results, or deleting assistants via a poisoned import). No public exploit code is identified at time of analysis, and success depends on the attacker obtaining a valid foreign credential UUID. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 26, 2026
Cross-tenant credential theft in Flowise through 3.1.4 allows an authenticated user on a multi-workspace instance to make the server decrypt and use another workspace's OpenAI or ElevenLabs API key by supplying that workspace's credential UUID to affected endpoints. The flaw is CWE-639 (Authorization Bypass Through User-Controlled Key), requires a valid account plus knowledge of the target credential UUID, and independent assessment treats it as a genuine but moderate-priority cross-tenant access-control issue rather than a headline emergency. The supplied CVSS:4.0 score is 7.6; no vendor-released patch was identified at the time of publication, and no public exploit was identified at time of analysis.
RemediationAI
No vendor-released patch was identified at the time of analysis; monitor the FlowiseAI advisory GHSA-27w2-26m5-x82c and Flowise releases for an update. Because the missing workspaceId check is in application code, the most effective compensating control is to avoid running mutually untrusted tenants on the same Flowise instance until a fix is available. If multi-workspace use is required, restrict affected functionality at a reverse proxy or API gateway: block or disable GET /api/v1/openai-assistants, GET /api/v1/openai-assistants/:id, POST /api/v1/openai-assistants-file/upload/, DELETE /api/v1/assistants/:id, POST /api/v1/export-import/import, and GET /api/v1/text-to-speech/voices for users who do not need them; side effects include loss of OpenAI Assistant management, file upload, TTS voice listing, and import/export features. Enforce least privilege so only trusted accounts can access these routes, monitor OpenAI and ElevenLabs API usage for unexpected activity from other workspaces, and rotate or scope API keys if abuse is suspected. The PR:L and AT:P requirements mean exploitation depends on obtaining another workspace's credential UUID, so reducing credential-ID exposure and limiting cross-workspace visibility lowers risk but does not eliminate the flaw.
Affected VersionsENISA
Affected Packages
Source: OSV (Open Source Vulnerabilities)
Affects your stack
Affects 1 package in euvd
Checking this CVE against your own stacks and servers is part of the Basic plan and up.
Technical ContextAI · show details
Flowise is a Node.js low-code LLM orchestration platform, and the vulnerable npm packages flowise and flowise-components implement workspace-scoped credentials. CWE-639 captures the root cause: credential retrieval uses findOneBy({ id: credentialId }) without adding a workspaceId filter, so the credential ID becomes the only authorization key. Affected paths include GET /api/v1/openai-assistants and /api/v1/openai-assistants/:id via getAllOpenaiAssistants/getSingleOpenaiAssistant, POST /api/v1/openai-assistants-file/upload/ via uploadFilesToAssistant, DELETE /api/v1/assistants/:id via deleteAssistant after importing a poisoned assistant row with POST /api/v1/export-import/import, and the shared helper behind GET /api/v1/text-to-speech/voices (getVoices). CPE records cpe:2.3:a:flowiseai:flowise:*:*:*:*:*:*:*:* map to the FlowiseAI Flowise product, and the described affected range is through 3.1.4. Default multi-workspace deployments configured with OpenAI or ElevenLabs credentials are exposed because a cross-tenant boundary exists; single-workspace instances have no cross-tenant boundary to violate.
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
CVSS:4.0/AV:N/AC:L/AT:P/PR:L/UI:N/VC:H/VI:H/VA:N/SC:N/SI:N/SA:N
Network-reachable authenticated IDOR (PR:L); C:H from decrypting/using another workspace's API key, I:L limited to assistant deletion, A:N; scope unchanged within the app.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
Flowise (npm packages flowise and flowise-components) through 3.1.4 looks up credentials by ID without filtering on the requesting user's workspace (findOneBy({ id: credentialId }) with no workspaceId condition) in several code paths: getAllOpenaiAssistants/getSingleOpenaiAssistant (GET /api/v1/openai-assistants and /api/v1/openai-assistants/:id), uploadFilesToAssistant (POST /api/v1/openai-assistants-file/upload/), deleteAssistant (DELETE /api/v1/assistants/:id, reachable by first importing a poisoned assistant row via POST /api/v1/export-import/import), and the shared helper used by getVoices (GET /api/v1/text-to-speech/voices). An authenticated user of one workspace can supply a credential UUID belonging to another workspace, causing the server to decrypt and use that workspace's OpenAI or ElevenLabs API key on the attacker's behalf. No patched version was available at the time of publication.
Technical POC Analysis
CWE-639 (Authorization Bypass Through User-Controlled Key).
Full technical POC analysis - root cause, step-by-step exploitation and patch breakdown - is part of the Pro and Business plans.
Executive ViewAI
Flowise deployments up to version 3.1.4 that host multiple workspaces allow a user with access to one workspace to make the server decrypt and use another workspace's OpenAI or ElevenLabs API credentials. For any organization offering Flowise as a shared internal or customer-facing platform, this breaks the tenant isolation boundary and can result in unauthorized use of third-party accounts, unexpected provider charges, and exposure of credentials that may unlock other systems. Leadership should care because the flaw weakens a core trust assumption of multi-tenant deployments, although no public exploit code or confirmed active exploitation has been identified at this time.
No vendor-released patch identified at time of analysis. Interim mitigations: limit multi-workspace Flowise deployments to trusted users only; segregate tenants onto separate Flowise instances or isolated networks; rotate and scope OpenAI and ElevenLabs keys with least privilege and provider-side spending caps; monitor provider usage and billing for anomalies; and log and alert on requests supplying credential identifiers to Flowise endpoints.
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
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-87704
GHSA-2jfx-whrm-9j49
NVD
CVE.org
EPSS
Vulnrichment
Exploit-DB