Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with update permission on one project
-
DeliveryObtain target dashboard UUID in a foreign project
-
ExploitSend crafted POST to rename/dashboard endpoint
-
ExecutionRewrite foreign dashboard filters
-
ImpactBreak charts for all users of that dashboard
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 | Exploitation requires an authenticated account holding the 'update' Project permission on at least one project (PR:L) plus a valid credential such as a Personal Access Token, and critically requires the attacker to already know the UUID of a specific target dashboard in a project they have no access to, since the endpoints key off the URL projectUuid but operate on the dashboard loaded solely by its UUID. No special non-default configuration or feature flag is needed - the flaw is present in the default RenameService behavior across the affected versions. Exploitation is limited by the need to possess update rights on some project, the need to discover non-enumerable foreign dashboard UUIDs, and the bounded impact (schema-metadata read and dashboard-filter corruption only); these limits are what keep real-world risk low despite the network attack vector. |
| Impact | This is a genuinely low-priority issue despite being network-reachable. The vendor CVSS 4.0 base score is 2.3 (Low), with vector AV:N/AC:H/AT:N/PR:L/UI:N and only Low confidentiality and integrity impact (VC:L/VI:L) and no availability or subsequent-system impact. The vuln.today Decision label is 'monitor', the lowest urgency tier, consistent with the low score. There is no EPSS score and no KEV listing in the input, so there is no signal of active or widespread exploitation. A detailed proof-of-concept is published in the GHSA advisory, but it consists of manual reproduction steps rather than packaged exploit tooling. The practical risk is constrained by two facts that the CVSS captures as PR:L and AC:H: the attacker must already be an authenticated user holding 'update' permission on at least one project, and must know the UUID of a dashboard in a project they cannot access (UUIDs are not enumerable through normal access), which is what justifies the high attack complexity. The impact is bounded - reading table/field schema metadata and corrupting dashboard filters - with no code execution, no data exfiltration beyond schema names, and no availability loss to the server itself. No signals conflict here: low CVSS, low EPSS-equivalent (absent), no KEV, and a 'monitor' decision all point the same direction. Patch and apply at a normal cadence rather than as an emergency. |
| Exploit ScenarioDerived | An authenticated Lightdash user who legitimately holds 'update' permission on Project A uses their Personal Access Token to send a crafted POST to /api/v1/projects/<ProjectA>/rename/dashboard/<DashboardB-UUID>, where the dashboard UUID belongs to Project B which they cannot access; because the service never verifies the dashboard belongs to the URL project, the filter rewrite is applied to the foreign dashboard, breaking its charts for all its users. A GET to the sibling /fields endpoint lets the same user read dimension and metric names from tables in another project. A public PoC reference with step-by-step requests exists in the GHSA advisory, though it is not verified as working exploit code. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Nov 03, 2026
Lightdash 0.2609.0 through 3.136.x contains a cross-project insecure direct object reference in RenameService that lets an authenticated user holding update permission on any single project tamper with dashboards in projects they cannot access. By pairing a projectUuid they control in the URL with a foreign dashboardUuid, an attacker can persist rewritten filters on another team's dashboard (breaking its charts for every viewer) or read that project's field metadata through the /rename/dashboard/fields endpoint. Exploitation requires a valid credential such as a Personal Access Token and prior knowledge of a non-enumerable foreign dashboard UUID, which is why the vendor's advisory and this analysis both treat it as a low-priority, monitor-level issue rather than an emergency; no confirmed public exploit code or KEV entry exists, though the vendor advisory publishes a proof-of-concept walkthrough.
RemediationAI
Upgrade Lightdash to 3.137.0 or later, which is the vendor-released patch for this issue; the 3.137.0 release notes list the fix as commit a66d6ab, 'improve input handling in rename service' (PR #32014), which adds the missing dashboard.projectUuid to URL projectUuid binding on both rename endpoints. Full details are in the GitHub advisory at https://github.com/lightdash/lightdash/security/advisories/GHSA-h6fw-x63x-9gr6 and the release is at https://github.com/lightdash/lightdash/releases/tag/3.137.0, with the VulnCheck write-up at https://www.vulncheck.com/advisories/lightdash-before-cross-project-idor-via-renameservice-dashboard-endpoints. The available sources do not document a configuration workaround or feature toggle, so applying the 3.137.0 update is the complete remediation; while scheduling it, remember the exposure is limited to accounts that already hold update permission on some project and to attackers who know a target dashboard UUID in advance, so auditing project roles and personal access tokens for unnecessary update grants reduces the population able to reach the vulnerable code path.
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
The flaw is a classic CWE-639 authorization bypass through user-controlled key: in packages/backend/src/services/RenameService/RenameService.ts the router takes a projectUuid and a dashboardUuid from the URL path, but the two dashboard handlers never assert that the loaded dashboard actually belongs to the URL project. renameDashboardFilter() performs its permission check against the URL projectUuid (around lines 482-496) and then loads the dashboard by UUID alone (line 499) before writing a new dashboard version (line 577); getFieldsForDashboard() inverts the mismatch, loading the dashboard by UUID (line 374) and checking permission on dashboard.projectUuid (lines 376-392) while then reading explore fields from the URL projectUuid (line 423). The sibling chart rename path in the same file already enforces the binding (chart.projectUuid !== projectUuid, line 178), which shows the missing guard is an oversight rather than an intentional trust boundary. The exposed routes are POST /api/v1/projects/{projectUuid}/rename/dashboard/{dashboardUuid} and GET /api/v1/projects/{projectUuid}/rename/dashboard/{dashboardUuid}/fields in packages/backend/src/controllers/renameController.ts. Lightdash is a self-hosted BI layer over warehouse data, so the leaked metadata is dimensional/model schema (table, dimension and metric names) and the integrity impact is corrupted filter definitions in stored dashboard versions. CPE coverage for the affected range is expressed as the wildcarded cpe:2.3:a:lightdash:lightdash:*:*:*:*:*:*:*:*, so version pinning must come from the advisory range rather than from the CPE string.
Know when Lightdash 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:H/AT:N/PR:L/UI:N/VC:L/VI:L/VA:N/SC:N/SI:N/SA:N
Authenticated attacker with update on one project gives PR:L; needing a non-enumerable foreign dashboard UUID gives AC:H; impact is limited schema read (C:L) and filter corruption (I:L) with no availability loss.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
DescriptionCVE.org
Lightdash 0.2609.0 before 3.137.0 contains an authorization bypass vulnerability in the RenameService that allows authenticated users with update Project permission on one project to access and modify dashboards belonging to a different project, caused by the failure to verify that the projectUuid from the URL matches the projectUuid of the target dashboard. Attackers can send crafted POST requests to the rename/dashboard endpoint to modify foreign dashboard filters and break charts, or send GET requests to the rename/dashboard/fields endpoint to read field metadata from projects they do not have access to.
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
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
packages/backend/src/routers in Lightdash before 0.510.3 has insecure file endpoints, e.g., they allow .. Rated high sev
Lightdash versions through 0.3213.0 expose the dbt Cloud webhook endpoint (POST /api/v1/projects/{projectUuid}/dbt-cloud
Authorization bypass in Lightdash through 2.556.0 allows any authenticated organization member to delete another user's
EUVD-2026-116098
NVD
CVE.org
GitHub
Exploit-DB