Skip to main content

Flowise EUVDEUVD-2026-38746

| CVE-2026-56269 MEDIUM
Use of Hard-coded Credentials (CWE-798)
2026-06-24 VulnCheck
4.3
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain

  1. Recon
    Authenticate to unconfigured Flowise instance
  2. Delivery
    Capture issued JWT token
  3. Exploit
    Decrypt 'meta' field using known default key
  4. Install
    Extract internal user and workspace UUIDs
  5. C2
    Re-encrypt manipulated workspace ID into new meta
  6. Execute
    Embed crafted meta into API requests
  7. Impact
    Probe tenant access controls for unauthorized data

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A07:2025 - Authentication Failures
ASVS 5.0
V6 - Authentication Credential externalization
MITRE ATT&CK

2 techniques across 2 tactics: Persistence, Credential Access

The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up.

Exploitation Conditions

The vulnerability is triggered only when the TOKEN_HASH_SECRET environment variable is NOT explicitly configured - the application then silently falls back to the hardcoded 'Secre$t' value. Because the .env.example ships with this variable commented out, this unset state is the effective default for unconfigured deployments. The information-disclosure path (decrypting one's own JWT meta field) requires that the attacker can authenticate to the Flowise instance and obtain a JWT token; no elevated privileges are required for this path. The metadata manipulation path (re-encrypting altered user/workspace IDs) additionally requires that a downstream API endpoint processes the meta field content without re-validating identity via the JWT HMAC/RSA signature - this condition is not confirmed from available data and may vary by endpoint. Active exploitation is limited to Flowise enterprise-tier deployments that partition by user and workspace IDs in the 'meta' field; development or single-user deployments have no meaningful tenant-isolation to compromise. Exploitation does not bypass JWT signature validation and cannot on its own produce a cryptographically valid forged token.

Impact

The provided CVSS 4.0 vector (AV:L/AC:H/PR:H/UI:A, score 4.3) models a highly constrained scenario - local access, high privileges, high complexity, and required user interaction - which appears to reflect the privilege-escalation follow-on path rather than the information-disclosure path accessible to ordinary authenticated users over the network. The real-world risk for network-accessible Flowise deployments where TOKEN_HASH_SECRET is unset is likely higher than the 4.3 score implies: the default key 'Secre$t' is now publicly documented in both the GHSA advisory and upstream source code, any authenticated user holds a JWT containing their own encrypted meta field, and decrypting it requires only standard AES-CBC tooling. Kolega.dev assessed practical exploitability as 'Medium.' The concrete integrity impact is bounded because the JWT signature (HMAC or RSA) is validated separately - re-encoding a tampered meta field does not produce a valid signed JWT, limiting the attack to injection of crafted meta values into API calls that accept them without re-signature. No CISA KEV listing and no public proof-of-concept have been identified. The primary risk is identifier disclosure enabling reconnaissance and potential privilege escalation in multi-tenant enterprise deployments; single-tenant or development instances have reduced exposure. The CVSS AV:L and PR:H discrepancy with the description should be verified with the vendor, as the description implies network-accessible authenticated exploitation for the disclosure path.

Exploit ScenarioDerived

An attacker who has created a legitimate account on a Flowise instance where TOKEN_HASH_SECRET was never configured authenticates, captures their issued JWT, and uses the publicly disclosed default key 'Secre$t' (AES-256-CBC via SHA-256 of the secret) to decrypt the 'meta' field, obtaining internal user and workspace UUIDs for their own session and inferring enumerable patterns for other tenants. The attacker then re-encrypts a modified 'meta' field substituting a target workspace ID and embeds it into API requests to probe whether any multi-tenant access control endpoint processes the meta value without independently re-validating tenant membership through the JWT signature. No public proof-of-concept code has been identified, but the attack requires only standard cryptographic tooling (e.g., Node.js crypto module or openssl) and the construction details now documented in the advisory and source code.

This Month Plan within 30 days. Why: MEDIUM severity (CVSS 4.0-6.9).
Patch available 0.1% exploitation probability (EPSS)

Get an e-mail when this CVE is exploited, patched or re-scored. Free account.

Alert me

AnalysisAIv1 – Jun 24, 2026

Flowise versions 3.0.13 and earlier silently fall back to a hardcoded AES-256-CBC encryption key derived from the publicly known literal 'Secre$t' when TOKEN_HASH_SECRET is not configured, exposing the user and workspace IDs encoded in the 'meta' field of every JWT token issued by an unconfigured deployment. An authenticated user or network-positioned attacker who obtains any valid JWT can decrypt this metadata using the default key - now disclosed in the GHSA advisory and source code - and re-encrypt manipulated identifiers to probe downstream access controls. JWT signature validation is handled independently, so this does not constitute standalone token forgery, but identifier disclosure and metadata manipulation create a realistic stepping stone toward privilege escalation or unauthorized workspace access in multi-tenant deployments. No active exploitation is confirmed (not in CISA KEV) and no public exploit code has been identified at time of analysis; vendor-released patch Flowise 3.1.0 is available.

RemediationAI

Upgrade the flowise npm package to version 3.1.0 or later, which is the vendor-confirmed fix per the GHSA advisory at https://github.com/FlowiseAI/Flowise/security/advisories/GHSA-m7mq-85xj-9x33. As an immediate compensating control that applies to all affected versions prior to upgrading, explicitly set TOKEN_HASH_SECRET to a cryptographically strong random string of at least 32 bytes of entropy in the deployment environment - this eliminates use of the hardcoded default regardless of installed version, but note that changing the secret will invalidate the 'meta' field of all previously issued JWTs, requiring affected users to re-authenticate. Operators should audit .env files and container environment configurations, as the .env.example ships with this variable commented out, making the misconfigured state the default for new installs. Organizations should additionally consider treating all internal user and workspace IDs previously transmitted via unconfigured Flowise instances as potentially disclosed and assess whether downstream access controls depend on those identifiers remaining opaque. The recommendation from Kolega.dev is to enforce startup failure when TOKEN_HASH_SECRET is absent, ensuring the weak default cannot be silently activated in future deployments.

Affected VersionsENISA

Flowise 0 <3.1.0

Affected Packages

npm flowise fix: 3.1.0

Source: OSV (Open Source Vulnerabilities)

Affects your stack

Affects 1 package 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 an open-source Node.js LLM orchestration platform distributed as the npm package 'flowise'. The vulnerable code at packages/server/src/enterprise/utils/tempTokenUtils.ts:31-34 computes the AES-256-CBC encryption key by SHA-256 hashing the TOKEN_HASH_SECRET environment variable, with a fallback to the string literal 'Secre$t' when the variable is absent: crypto.createHash('sha256').update(process.env.TOKEN_HASH_SECRET || 'Secre$t').digest(). This derived key is used by encryptToken() (called at passport/index.ts:394) to encrypt the 'meta' field of JWTs, which carries enterprise-tier context including user IDs and workspace IDs. The root cause is CWE-798 (Use of Hard-coded Credentials): the .env.example ships with the variable commented out ('

TOKEN_HASH_SECRET='popcorn''), making an unconfigured state the operational default for new deployments. AES-256-CBC encryption with a predictable key provides no meaningful confidentiality once the key value is publicly known. Affected CPE: cpe:2.3:a:flowise:flowise:*:*:*:*:*:*:*:*.

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

Vendor (VulnCheck) PRIMARY 4.3 MEDIUM
CVSS:4.0/AV:L/AC:H/AT:N/PR:H/UI:A/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N
vuln.today AI 7.1 HIGH

Authenticated network users can decrypt JWT metadata using the publicly known default key; JWT signature validation independently limits integrity impact to low.

3.1 AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:L/A:N
4.0 AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:L/VA:N/SC:N/SI:N/SA:N

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

Attack Vector
Local
Attack Complexity
High
Attack Requirements
None
Privileges Required
High
User Interaction
Active
Vulnerable system: Confidentiality
High
Vulnerable system: Integrity
Low
Vulnerable system: Availability
None
Subsequent system: Confidentiality
None
Subsequent system: Integrity
None
Subsequent system: Availability
None

Lifecycle Timeline

1
Patch available
Jun 24, 2026 - 13:01 EUVD

DescriptionCVE.org

Flowise before 3.1.0 (npm package flowise, versions 3.0.13 and earlier) uses a weak hardcoded default value 'Secre$t' for the TOKEN_HASH_SECRET environment variable in packages/server/src/enterprise/utils/tempTokenUtils.ts when the variable is not configured. This secret derives the AES-256-CBC key used to encrypt user IDs and workspace IDs in the 'meta' field of JWT tokens. An attacker who knows the default secret can decrypt this metadata to extract internal user and workspace identifiers, and re-encrypt manipulated values such as altered user or workspace IDs. Because the JWT signature is validated separately, decrypting or tampering with this metadata does not by itself grant access, but the disclosure of internal identifiers and possible metadata manipulation could aid privilege escalation or unauthorized data access.

Threat Intelligence Overview

EPSS Score
0.1%
Top 99% exploitable
Prevalence
Medium
popular open-source LLM application builder with substantial GitHub community adoption
Data Quality
6 sources
Confidence: High

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.

SignalValue
Severity MEDIUM
CISA KEV No
Public POC No
EPSS 0.1%
Patch available Yes
Active threat No
Deciding rule
MEDIUM severity (CVSS 4.0-6.9)
What every action level means
Emergency Immediate action required. Criteria: CRITICAL + in CISA KEV (actively exploited) without patch, OR CRITICAL + EPSS > 30% without patch, OR CRITICAL + active threat signals without patch.
Act Now Prioritize within 24-48h. Criteria: in KEV with patch available, OR CRITICAL + public POC, OR HIGH + EPSS > 10%, OR CRITICAL + active threat, OR any CRITICAL severity.
This Week Schedule remediation this week. Criteria: HIGH severity (CVSS 7.0-8.9). Patch within normal change window.
This Month Plan within 30 days. Criteria: MEDIUM severity (CVSS 4.0-6.9), lower exploitation probability. Include in regular patch cycle.
Monitor Track and reassess. Criteria: LOW severity (CVSS 0.1-3.9), minimal exploitation risk. No immediate action needed.

SSVC AssessmentENISA

SSVC Decision· derived
Defer
Exploitation
None
System Exposure· derived
Small
Automatable
No
Human Impact· derived
Medium
Technical Impact
Partial

Priority Score

22
Low Medium High Critical
KEV: 0
EPSS: 0
CVSS: +22
PoC: 0
Weaponized: 0
Threat intel: 0
Gov advisory: 0

Attack Technique

Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.

Privilege escalation occurs when an attacker leverages flaws in access control mechanisms to gain permissions beyond what they were originally granted.

CVE-2025-59528 CRITICAL POC
10.0 Sep 22

Flowise version 3.0.5 contains a remote code execution vulnerability in the CustomMCP node. The mcpServerConfig paramete

CVE-2025-8943 CRITICAL POC
9.8 Aug 14

Flowise versions before 3.0.1 allow unauthenticated access to the Custom MCPs feature, which is designed to execute OS c

CVE-2025-26319 CRITICAL POC
9.8 Mar 04

FlowiseAI Flowise version 2.2.6 contains an arbitrary file upload vulnerability in the /api/v1/attachments endpoint. Una

CVE-2025-61913 CRITICAL POC
9.9 Oct 08

Arbitrary file read and write in Flowise versions prior to 3.0.8 allows an authenticated attacker with access to the flo

CVE-2026-56274 HIGH POC
8.7 Jun 23

Remote code execution in Flowise before 3.1.2 allows any authenticated user (or API caller with chatflow view/update per

CVE-2025-58434 CRITICAL POC
9.8 Sep 12

Flowise is a drag & drop user interface to build a customized large language model flow. Rated critical severity (CVSS 9

CVE-2025-61687 HIGH POC
8.8 Oct 06

Authenticated users can upload arbitrary files to Flowise 3.0.7 due to missing validation, enabling persistent storage o

CVE-2026-30821 CRITICAL POC
9.8 Mar 07

Unrestricted file upload in Flowise LLM workflow builder before 3.0.13 via /api/v1/attachments endpoint allows unauthent

CVE-2026-30824 CRITICAL POC
9.8 Mar 07

Missing authentication on NVD data endpoint in Flowise before 3.0.13 allows unauthenticated access to internal vulnerabi

CVE-2025-34267 HIGH POC
8.4 Oct 14

Authenticated remote code execution in FlowiseAI Flowise (v3.0.1 up to but not including 3.0.8, and later versions when

CVE-2026-70470 CRITICAL POC
9.5 Aug 04

Remote code execution in Flowise before 3.1.3 arises because its Pyodide Python-code validator (validatePythonCodeForDat

CVE-2026-69264 CRITICAL POC
9.4 Aug 04

Remote code execution in FlowiseAI Flowise before 3.1.3 lets an attacker execute arbitrary OS commands as the Flowise pr

This site uses cookies essential for authentication and security. No tracking or analytics cookies are used. Privacy Policy