Skip to content
Heist/ feed
Back to feed
High

Flowise through 3.1.4 Authorization Bypass via BullMQ Dashboard

Type: advisorySources: OSV

Flowise through 3.1.4 does not enforce authorization on the BullMQ admin dashboard. When the server runs in queue mode with the dashboard enabled and not in cloud mode (MODE=queue, ENABLE_BULLMQ_DASHBOARD=true, and !isCloud()), the /admin/queues mount is protected only by the verifyTokenForBullMQDashboard middleware, which validates the JWT but performs no role, permission, or workspace/organization scoping check; the mount also lies outside /api/v1/* so the global API gate does not apply. As a result, any authenticated user — including the lowest-privileged member of any tenant — can reach the full Bull-Board UI and view all queues and job payloads across the entire instance, including chat inputs and overrideConfig (which may carry credentials and prompts), chatflow.flowData graph definitions with custom function source code, credential IDs and system prompts, chatIds, files, and the originating orgId/workspaceId. The dashboard's write actions (retry, remove, promote, clean) are likewise usable across tenants. No patched version is available as of the advisory.

Products
Not specified
Affected versions
Not specified
Fixed versions
Not specified
CVEs
CVE-2026-100608
Confirmed fixed CVEs
Not specified
Updated in this feed
7 Nov 2026, 12:38 UTC · Revision 1

Source evidence

Flowise through 3.1.4 Authorization Bypass via BullMQ Dashboard

core-osv · Original source

Published 26 Sept 2026, 13:22 UTC

Flowise through 3.1.4 does not enforce authorization on the BullMQ admin dashboard. When the server runs in queue mode with the dashboard enabled and not in cloud mode (MODE=queue, ENABLE_BULLMQ_DASHBOARD=true, and !isCloud()), the /admin/queues mount is protected only by the verifyTokenForBullMQDashboard middleware, which validates the JWT but performs no role, permission, or workspace/organization scoping check; the mount also lies outside /api/v1/* so the global API gate does not apply. As a result, any authenticated user — including the lowest-privileged member of any tenant — can reach the full Bull-Board UI and view all queues and job payloads across the entire instance, including chat inputs and overrideConfig (which may carry credentials and prompts), chatflow.flowData graph definitions with custom function source code, credential IDs and system prompts, chatIds, files, and the originating orgId/workspaceId. The dashboard's write actions (retry, remove, promote, clean) are likewise usable across tenants. No patched version is available as of the advisory.

osv:CVE-2026-100608
Complete source record
{
  "id": "56bf14d4b56cb69b497f12b49eb3e9ae7e5390350d1d1b7e44aebdd5549516e2",
  "url": "https://osv.dev/vulnerability/CVE-2026-100608",
  "method": "structured",
  "payload": {
    "kind": "advisory",
    "title": "Flowise through 3.1.4 Authorization Bypass via BullMQ Dashboard",
    "summary": "Flowise through 3.1.4 does not enforce authorization on the BullMQ admin dashboard. When the server runs in queue mode with the dashboard enabled and not in cloud mode (MODE=queue, ENABLE_BULLMQ_DASHBOARD=true, and !isCloud()), the /admin/queues mount is protected only by the verifyTokenForBullMQDashboard middleware, which validates the JWT but performs no role, permission, or workspace/organization scoping check; the mount also lies outside /api/v1/* so the global API gate does not apply. As a result, any authenticated user — including the lowest-privileged member of any tenant — can reach the full Bull-Board UI and view all queues and job payloads across the entire instance, including chat inputs and overrideConfig (which may carry credentials and prompts), chatflow.flowData graph definitions with custom function source code, credential IDs and system prompts, chatIds, files, and the originating orgId/workspaceId. The dashboard's write actions (retry, remove, promote, clean) are likewise usable across tenants. No patched version is available as of the advisory.",
    "evidence": "osv:CVE-2026-100608",
    "products": [],
    "severity": "high",
    "structured": {
      "id": "CVE-2026-100608",
      "aliases": [
        "CVE-2026-100608",
        "GHSA-rpcc-gw54-mfgx"
      ],
      "metrics": [
        {
          "type": "CVSS_V4",
          "score": "CVSS:4.0/AV:N/AC:L/AT:N/PR:L/UI:N/VC:H/VI:H/VA:L/SC:N/SI:N/SA:N"
        }
      ],
      "affected": [
        {
          "ranges": [
            {
              "repo": "https://github.com/flowiseai/flowise",
              "type": "GIT",
              "events": [
                {
                  "introduced": "0"
                },
                {
                  "last_affected": "a65f81bb43ef66d3ce734bf0dff4223ae8041c95"
                }
              ],
              "database_specific": {
                "extracted_events": [
                  {
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "last_affected": "3.1.4"
                      }
                    ],
                    "source": "AFFECTED_FIELD",
                    "strategy": "StandardRange"
                  },
                  {
                    "range": [
                      {
                        "introduced": "0"
                      },
                      {
                        "last_affected": "3.1.4"
                      }
                    ],
                    "source": "DESCRIPTION"
                  }
                ]
              }
            }
          ],
          "versions": [
            "flowise@3.1.4",
            "flowise-ui@3.1.4",
            "flowise-components@3.1.4",
            "flowise@3.1.3",
            "flowise-ui@3.1.3",
            "flowise-components@3.1.3",
            "flowise@3.1.2",
            "flowise-ui@3.1.2",
            "flowise-components@3.1.2",
            "flowise@3.1.1",
            "flowise-ui@3.1.1",
            "flowise-components@3.1.1",
            "flowise@3.1.0",
            "flowise-ui@3.1.0",
            "flowise-components@3.1.0",
            "pre-langchain-v1",
            "flowise@3.0.13",
            "flowise-ui@3.0.13",
            "flowise-components@3.0.13",
            "flowise@3.0.12",
            "flowise-ui@3.0.12",
            "flowise-components@3.0.12",
            "flowise@3.0.11",
            "flowise-ui@3.0.11",
            "flowise-components@3.0.11",
            "flowise@3.0.10",
            "flowise-ui@3.0.10",
            "flowise-components@3.0.10",
            "flowise@3.0.9",
            "flowise-ui@3.0.9",
            "flowise-components@3.0.9",
            "flowise@3.0.8",
            "flowise-ui@3.0.8",
            "flowise-components@3.0.8",
            "flowise@3.0.7",
            "flowise-ui@3.0.7",
            "flowise-components@3.0.7",
            "flowise@3.0.6",
            "flowise-ui@3.0.6",
            "flowise-components@3.0.6",
            "flowise@3.0.5",
            "flowise-ui@3.0.5",
            "flowise-components@3.0.5",
            "flowise@3.0.4",
            "flowise-ui@3.0.4",
            "flowise-components@3.0.4",
            "flowise@3.0.3",
            "flowise-ui@3.0.3",
            "flowise-components@3.0.3",
            "flowise@3.0.2",
            "flowise-ui@3.0.2",
            "flowise-components@3.0.2",
            "flowise@3.0.1",
            "flowise-ui@3.0.1",
            "flowise-components@3.0.1",
            "flowise@3.0.0",
            "flowise-ui@3.0.0",
            "flowise-components@3.0.0",
            "flowise@2.2.8",
            "flowise-ui@2.2.8",
            "flowise-components@2.2.8",
            "flowise@2.2.7-patch.1",
            "flowise-ui@2.2.7-patch.1",
            "flowise-components@2.2.7-patch.1",
            "flowise@2.2.7",
            "flowise-ui@2.2.7",
            "flowise-components@2.2.7",
            "flowise@2.2.6-hotfix.1",
            "flowise@2.2.6",
            "flowise-ui@2.2.6",
            "flowise-components@2.2.6",
            "flowise@2.2.5",
            "flowise-ui@2.2.5",
            "flowise-components@2.2.5",
            "flowise@2.2.4",
            "flowise-ui@2.2.4",
            "flowise-components@2.2.4",
            "flowise@2.2.3",
            "flowise-ui@2.2.3",
            "flowise-components@2.2.3",
            "flowise@2.2.2",
            "flowise-ui@2.2.2",
            "flowise-components@2.2.2",
            "flowise@2.2.1",
            "flowise-ui@2.2.1",
            "flowise-components@2.2.1",
            "flowise@2.2.0",
            "flowise-ui@2.2.0",
            "flowise-components@2.2.0",
            "flowise@2.1.5",
            "flowise-ui@2.1.5",
            "flowise-components@2.1.5",
            "flowise@2.1.4",
            "flowise-ui@2.1.4",
            "flowise-components@2.1.4",
            "flowise@2.1.3",
            "flowise-ui@2.1.3",
            "flowise-components@2.1.3",
            "flowise@2.1.2",
            "flowise-ui@2.1.2",
            "flowise-components@2.1.2",
            "flowise@2.1.1",
            "flowise-ui@2.1.1",
            "flowise-components@2.1.1",
            "flowise@2.1.0",
            "flowise-ui@2.1.0",
            "flowise-components@2.1.0",
            "flowise@2.0.7",
            "flowise-ui@2.0.7",
            "flowise-components@2.0.7",
            "flowise@2.0.6",
            "flowise-ui@2.0.6",
            "flowise-components@2.0.6",
            "flowise@2.0.5",
            "flowise-ui@2.0.5",
            "flowise-components@2.0.5",
            "flowise@2.0.4",
            "flowise-ui@2.0.4",
            "flowise-components@2.0.4",
            "flowise@2.0.3",
            "flowise-ui@2.0.3",
            "flowise-components@2.0.3",
            "flowise@2.0.2",
            "flowise-ui@2.0.2",
            "flowise-components@2.0.2",
            "flowise@1.8.4",
            "flowise-ui@1.8.4",
            "flowise-components@1.8.6",
            "flowise@1.8.3",
            "flowise-ui@1.8.3",
            "flowise-components@1.8.4",
            "flowise@1.8.2",
            "flowise-ui@1.8.2",
            "flowise-components@1.8.3",
            "flowise@1.8.1",
            "flowise-ui@1.8.1",
            "flowise-components@1.8.1",
            "flowise@1.8.0",
            "flowise-ui@1.8.0",
            "flowise-components@1.8.0",
            "flowise@1.7.2",
            "flowise-ui@1.7.2",
            "flowise-components@1.7.2",
            "flowise@1.7.1",
            "flowise-ui@1.7.1",
            "flowise-components@1.7.1",
            "flowise@1.7.0",
            "flowise-ui@1.7.0",
            "flowise-components@1.7.0",
            "flowise@1.6.6",
            "flowise-ui@1.6.6",
            "flowise-components@1.6.8",
            "flowise@1.6.5",
            "flowise-ui@1.6.5",
            "flowise-components@1.6.7",
            "flowise@1.6.4",
            "flowise-ui@1.6.4",
            "flowise-components@1.6.6",
            "flowise@1.6.3",
            "flowise-ui@1.6.3",
            "flowise-components@1.6.5",
            "flowise@1.6.2",
            "flowise-ui@1.6.2",
            "flowise-components@1.6.4",
            "flowise@1.6.1",
            "flowise-ui@1.6.1",
            "flowise-components@1.6.3",
            "flowise@1.6.0",
            "flowise-ui@1.6.0",
            "flowise-components@1.6.2",
            "flowise@1.5.1",
            "flowise-ui@1.5.1",
            "flowise-components@1.6.1",
            "flowise@1.5.0",
            "flowise-ui@1.5.0",
            "flowise-components@1.6.0",
            "flowise@1.4.12",
            "flowise-ui@1.4.9",
            "flowise-components@1.5.3",
            "flowise@1.4.11",
            "flowise-ui@1.4.8",
            "flowise-components@1.5.2",
            "flowise@1.4.10",
            "flowise-ui@1.4.7",
            "flowise-components@1.5.1",
            "flowise@1.4.9",
            "flowise@1.4.8",
            "flowise-ui@1.4.6",
            "flowise-components@1.5.0",
            "flowise@1.4.7",
            "flowise-ui@1.4.5",
            "flowise-components@1.4.9",
            "flowise-components@1.4.8",
            "flowise@1.4.6",
            "flowise-ui@1.4.4",
            "flowise-components@1.4.7",
            "flowise@1.4.5",
            "flowise-ui@1.4.3",
            "flowise@1.4.4",
            "flowise-ui@1.4.2",
            "flowise-components@1.4.6",
            "flowise@1.4.2",
            "flowise-components@1.4.2",
            "flowise@1.4.1",
            "flowise-components@1.4.1",
            "flowise@1.4.0",
            "flowise-ui@1.4.0",
            "flowise-components@1.4.0",
            "flowise@1.3.9",
            "flowise-ui@1.3.7",
            "flowise-components@1.3.11",
            "flowise-components@1.3.10",
            "flowise@1.3.8",
            "flowise-ui@1.3.6",
            "flowise-components@1.3.9",
            "flowise@1.3.7",
            "flowise-ui@1.3.5",
            "flowise-components@1.3.8",
            "flowise@1.3.6",
            "flowise-ui@1.3.4",
            "flowise-components@1.3.7",
            "flowise@1.3.5",
            "flowise-ui@1.3.3",
            "flowise-components@1.3.5",
            "flowise@1.3.4",
            "flowise-ui@1.3.2",
            "flowise-components@1.3.4",
            "flowise@1.3.3",
            "flowise-ui@1.3.1",
            "flowise-components@1.3.3",
            "flowise@1.3.2",
            "flowise-components@1.3.2",
            "flowise@1.3.1",
            "flowise-components@1.3.1",
            "flowise@1.3.0",
            "flowise-ui@1.3.0",
            "flowise-components@1.3.0",
            "flowise@1.2.16",
            "flowise-ui@1.2.15",
            "flowise-components@1.2.17",
            "flowise@1.2.15",
            "flowise-ui@1.2.14",
            "flowise-components@1.2.16",
            "flowise@1.2.14",
            "flowise-ui@1.2.13",
            "flowise-components@1.2.15",
            "flowise@1.2.13",
            "flowise-ui@1.2.12",
            "flowise-components@1.2.14",
            "flowise@1.2.11",
            "flowise-ui@1.2.10",
            "flowise-components@1.2.12",
            "flowise@1.2.9",
            "flowise-components@1.2.10",
            "flowise@1.2.8",
            "flowise-ui@1.2.7",
            "flowise-components@1.2.9",
            "flowise@1.2.7",
            "flowise-ui@1.2.6",
            "flowise-components@1.2.8",
            "flowise@1.2.6",
            "flowise-ui@1.2.5",
            "flowise-components@1.2.7",
            "flowise@1.2.5",
            "flowise-ui@1.2.4",
            "flowise-components@1.2.6",
            "flowise@1.2.4",
            "flowise-ui@1.2.3",
            "flowise-components@1.2.5",
            "flowise@1.2.3",
            "flowise-ui@1.2.2",
            "flowise-components@1.2.4",
            "flowise-components@1.2.3",
            "flowise@1.2.2",
            "flowise-ui@1.2.1",
            "flowise-components@1.2.2",
            "flowise@1.2.1",
            "flowise-ui@1.2.0",
            "flowise-components@1.2.1",
            "flowise@1.1.1",
            "flowise-components@1.1.1",
            "flowise@1.1.0",
            "flowise-ui@1.1.0",
            "flowise-components@1.1.0",
            "flowise@1.0.1",
            "flowise@1.0.0",
            "flowise-ui@1.0.0",
            "flowise-components@1.0.0"
          ],
          "database_specific": {
            "source": "https://storage.googleapis.com/cve-osv-conversion/osv-output/CVE-2026-100608.json"
          }
        }
      ],
      "modified": "2026-10-28T02:30:50.611770923Z",
      "provider": "osv",
      "references": [
        "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/100xxx/CVE-2026-100608.json",
        "https://github.com/FlowiseAI/Flowise/security/advisories/GHSA-rpcc-gw54-mfgx",
        "https://nvd.nist.gov/vuln/detail/CVE-2026-100608",
        "https://www.vulncheck.com/advisories/flowise-through-3.1.4-authorization-bypass-via-bullmq-dashboard"
      ],
      "provider_metadata": {
        "cwe_ids": [
          "CWE-862"
        ],
        "cna_assigner": "VulnCheck",
        "osv_generated_from": "https://github.com/CVEProject/cvelistV5/tree/main/cves/2026/100xxx/CVE-2026-100608.json"
      }
    },
    "related_cves": [
      {
        "value": "CVE-2026-100608",
        "evidence": "/id"
      }
    ],
    "security_relevant": true,
    "severity_evidence": "/severity/0/score"
  },
  "source_id": "core-osv",
  "document_id": 519312,
  "published_at": "2026-09-26T13:22:51.224+00:00"
}