CVE-2026-70476: 
Flowise vulnerability analysis and mitigation

Overview

CVE-2026-70476 is a broken access control vulnerability in Flowise, a drag-and-drop UI for building LLM workflows, that allows authenticated attackers to perform unauthorized Stripe subscription operations on other tenants' billing accounts. The flaw affects all Flowise versions up to and including 3.1.2 (npm package flowise), and was patched in version 3.1.3. The advisory was first published on July 29, 2026, and added to the GitHub Advisory Database on August 4, 2026. It carries a CVSS v4.0 base score of 8.3 (High) (Github Advisory).

Technical details

The root cause is improper access control (CWE-284) combined with authorization bypass through a user-controlled key (CWE-639). Two billing endpoints in packages/server/src/enterprise/routes/organization.route.ts — POST /api/v1/organization/update-additional-seats and POST /api/v1/organization/update-subscription-plan — accept a subscriptionId directly from the request body without verifying that the identifier belongs to the authenticated user's organization. The server-side controllers in organization.controller.ts blindly forward the attacker-supplied subscriptionId to the Stripe integration layer, never cross-referencing it against req.user.activeOrganizationSubscriptionId. A public proof-of-concept is included in the security advisory, demonstrating how to obtain a victim's subscriptionId and submit crafted POST requests to manipulate their subscription (Github Advisory, Flowise PR #6321).

Impact

An authenticated attacker can manipulate the Stripe subscription of any other organization on the same Flowise instance, enabling unauthorized subscription upgrades to higher-priced plans (incurring financial charges on the victim), manipulation of paid seat quantities, and service disruption through plan downgrades. The vulnerability is scoped to billing integrity — there is no confidentiality impact (no data exfiltration) — but the financial and availability consequences for victim organizations can be significant in multi-tenant enterprise deployments (Github Advisory).

Exploitability

A proof-of-concept is publicly documented in the GitHub security advisory, detailing the exact HTTP requests needed to exploit the vulnerability. As of the advisory publication date, there is no evidence of active in-the-wild exploitation or threat actor attribution. The vulnerability is not listed in the CISA KEV catalog. The EPSS score is approximately 0.286% (21st percentile), indicating a low but non-negligible probability of exploitation within 30 days. Exploitation requires an authenticated session but no elevated privileges, as free trial or self-provisioned accounts are sufficient (Github Advisory).

Exploitation steps

  1. Obtain an authenticated session: Register or log in to the target Flowise instance with any valid user account (including free-tier or self-provisioned accounts).
  2. Enumerate victim subscriptionId: Query the organization read endpoint or inspect other exposed API references to obtain a victim organization's Stripe subscriptionId (format: sub_YYYYYYYYYYYY).
  3. Downgrade or modify victim's subscription plan: Send a crafted POST request to the unprotected endpoint with the victim's subscriptionId:
POST /api/v1/organization/update-subscription-plan
Host: target.example.com
Cookie: token=<attacker_session_token>
Content-Type: application/json

{"subscriptionId": "sub_YYYYYYYYYYYY", "newPlanId": "free_plan_id", "prorationDate": 1735689600}
  1. Manipulate seat quantity: Optionally send a second request to reduce or inflate the victim's paid seat count:
POST /api/v1/organization/update-additional-seats
Host: target.example.com
Cookie: token=<attacker_session_token>
Content-Type: application/json

{"subscriptionId": "sub_YYYYYYYYYYYY", "quantity": 0, "prorationDate": 1735689600}
  1. Achieve impact: The Stripe integration layer processes the request as legitimate, resulting in unauthorized plan changes, unexpected charges, or service disruption for the victim organization (Github Advisory).

Indicators of compromise

  • Network: Unexpected POST requests to /api/v1/organization/update-subscription-plan or /api/v1/organization/update-additional-seats originating from user accounts that do not belong to the affected organization.
  • Logs: Server access logs showing authenticated requests to the above billing endpoints where the subscriptionId in the request body does not match the session user's activeOrganizationSubscriptionId; HTTP 200 responses to these endpoints from cross-tenant sessions.
  • Stripe Dashboard: Unexpected subscription plan changes, seat quantity modifications, or proration events on a Stripe subscription not initiated by the subscription owner; billing alerts for unrecognized plan upgrades or downgrades.
  • Application Logs: Absence of FORBIDDEN (403) responses to billing endpoint calls that should have been rejected (indicative of pre-patch behavior on unpatched instances) (Github Advisory).

Mitigation and workarounds

Upgrade the Flowise npm package to version 3.1.3 or later, which introduces the assertStripeIdMatchesSession guard that validates the request-supplied subscriptionId and customerId against the authenticated user's session data (req.user.activeOrganizationSubscriptionId) before processing any billing operation (Flowise Release 3.1.3, Flowise PR #6321). There is no documented configuration-based workaround for unpatched versions; upgrading is the only effective remediation. Organizations should also audit Stripe billing logs for any anomalous subscription changes that may have occurred prior to patching.

Additional resources


Source: This report was generated using AI

Related Flowise vulnerabilities:

CVE ID

Severity

Score

Technologies

Component name

CISA KEV exploit

Has fix

Published date

CVE-2026-70477CRITICAL9.5
  • JavaScript logoJavaScript
  • flowise
NoYesAug 04, 2026
CVE-2026-70478CRITICAL9.2
  • Flowise logoFlowise
  • flowise
NoYesAug 04, 2026
CVE-2026-70476HIGH8.3
  • Flowise logoFlowise
  • flowise
NoYesAug 04, 2026
CVE-2026-70475HIGH7.1
  • Flowise logoFlowise
  • flowise
NoYesAug 04, 2026
GHSA-8gj2-2cvc-6xx7MEDIUM6.3
  • Flowise logoFlowise
  • flowise
NoYesAug 04, 2026

Free Vulnerability Assessment

Benchmark your Cloud Security Posture

Evaluate your cloud security practices across 9 security domains to benchmark your risk level and identify gaps in your defenses.

Request assessment

Get a personalized demo

Ready to see Wiz in action?

"Best User Experience I have ever seen, provides full visibility to cloud workloads."
David EstlickCISO
"Wiz provides a single pane of glass to see what is going on in our cloud environments."
Adam FletcherChief Security Officer
"We know that if Wiz identifies something as critical, it actually is."
Greg PoniatowskiHead of Threat and Vulnerability Management