Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate to Openpanel with valid account
-
DeliveryEnumerate or obtain victim tenant's dashboardId
-
ExploitCall report.getLayouts with victim dashboardId
-
ExecutionExfiltrate report layout and widget configuration
-
PersistCall report.resetLayout with victim dashboardId
-
ImpactDestroy victim tenant's dashboard arrangement
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 a valid authenticated account on the same Openpanel instance as the victim (PR:L confirmed by CVSS vector). The attacker must also know or enumerate a target dashboardId belonging to a different tenant; whether dashboardIds are predictable, sequential, or UUIDs is not specified in available data. The flaw is present in multi-tenant deployments where tenant isolation is expected; single-tenant self-hosted instances where all users are in the same organization face a lower-severity intra-org privilege escalation scenario. There is no requirement for special configuration - the tRPC procedures are part of the standard application feature set. Exploitation is limited by the requirement for authentication and knowledge of a target dashboardId; brute-force enumeration of dashboardIds could expand the attack surface. |
| Impact | The CVSS 4.0 score of 5.3 (Medium) is calibrated appropriately. The vector AV:N/AC:L/AT:N/PR:L/UI:N captures a straightforward network-exploitable flaw requiring only a valid account; attack complexity is genuinely low since dashboardIds may be enumerable or discoverable through normal application use. The subsequent-system impact metrics SC:L/SI:L reflect the cross-tenant boundary violation, which is the real business risk - tenants operate under an expectation of data isolation. Impact is bounded: layouts and grid configurations are meta-data about dashboards, not underlying analytics event data or credentials, so C:L/I:L is accurate. No EPSS data was supplied. The vulnerability is not listed in CISA KEV, and no POC has been publicly released at time of analysis, keeping real-world exploitation risk moderate. The key real-world threat is an insider or competitor on the same shared instance enumerating and resetting competitor dashboards - meaningful reputational and data-integrity harm in a SaaS context even without full data exfiltration. |
| Exploit ScenarioDerived | An authenticated user on a shared Openpanel instance obtains or enumerates a competitor tenant's dashboardId - which may be exposed through browser network traffic or application URLs during normal product use. The attacker calls the report.getLayouts tRPC endpoint with their own valid session token but substitutes the victim's dashboardId, receiving the victim's dashboard layout and widget configuration in response. They then call report.resetLayout with the same dashboardId to wipe the victim's dashboard arrangement, causing operational disruption without leaving obvious attribution traces. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Sep 04, 2026
Cross-tenant insecure direct object reference in Openpanel before 2.3.0 allows authenticated users to read or reset other tenants' dashboard layouts by supplying arbitrary dashboardId values in tRPC API calls. The report.getLayouts and report.resetLayout tRPC procedures accept a caller-supplied dashboardId without verifying it belongs to the authenticated user's own projectId, enabling horizontal privilege escalation across tenant boundaries. No public exploit code has been identified, and no active exploitation is confirmed, but the flaw is trivially exploitable by any authenticated user on a shared Openpanel instance.
RemediationAI
Upgrade to Openpanel 2.3.0 or later, which resolves the issue by binding dashboardId validation to the authenticated caller's authorized projectId in both tRPC procedures. The vendor advisory at https://github.com/Openpanel-dev/openpanel/security/advisories/GHSA-5cpv-vqvr-7mrh and the VulnCheck advisory at https://www.vulncheck.com/advisories/openpanel-before-2.3.0-cross-tenant-idor-via-report-getlayouts confirm 2.3.0 as the fixed release. If immediate upgrade is not possible, restrict API access to the report.getLayouts and report.resetLayout tRPC endpoints at the network or middleware layer so only fully trusted internal clients can call them - accepting the trade-off that legitimate external dashboard consumers would also be blocked. There are no known safe configuration-level workarounds that preserve full functionality.
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
Openpanel (cpe:2.3:a:openpanel-dev:openpanel) is an open-source product analytics platform that uses tRPC for its typed API layer. The affected endpoints - report.getLayouts and report.resetLayout - are tRPC procedures that accept a dashboardId parameter but perform no server-side validation binding that dashboardId to the authenticated caller's projectId. This is a classic CWE-639 (Authorization Through User-Controlled Key) pattern: the application trusts a user-supplied object identifier to enforce access control rather than cross-checking the identifier against the session's authorization scope. The impact spans two operations: reading report layout configurations (confidentiality) and resetting/deleting dashboard grid arrangements (integrity), both crossing tenant isolation boundaries in multi-tenant deployments.
Know when Openpanel 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:N/PR:L/UI:N/VC:L/VI:L/VA:N/SC:L/SI:L/SA:N
Network-accessible, low-complexity IDOR; PR:L because authentication is required; S:C for cross-tenant boundary violation; no availability impact.
Primary rating from Vendor (VulnCheck).
CVSS VectorVendor: VulnCheck
Lifecycle Timeline
1DescriptionCVE.org
Openpanel before 2.3.0 contains an insecure direct object reference vulnerability in the report.getLayouts and report.resetLayout tRPC procedures that fail to bind dashboardId to the authorized projectId. Authenticated attackers can supply an arbitrary victim dashboardId with their own projectId to read report layouts and configurations or delete dashboard grid arrangements across tenants.
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
Code execution in OpenPanel's js-runtime component lets an authenticated user who holds project write access escape the
An issue in Open Panel v.0.3.4 allows a remote attacker to escalate privileges via the Fix Permissions function. Rated h
An issue in Open Panel v.0.3.4 allows a remote attacker to escalate privileges via the Fix Permissions function. Rated m
Cross Site Request Forgery vulnerability in Open Panel OpenAdmin v.0.3.4 allows a remote attacker to escalate privileges
Server-side request forgery in OpenPanel before 2.3.0 lets unauthenticated remote attackers coerce the panel server into
Unauthenticated ClickHouse SQL injection in OpenPanel before 3.0.0 lets remote attackers read other tenants' analytics d
Sandbox escape in OpenPanel's JavaScript webhook-template runtime (packages/js-runtime) allows an authenticated project
Authenticated remote code execution in OpenPanel before 2.3.0 allows any project member with read access to escape the m
Unauthenticated information disclosure in OpenPanel (openpanel-dev/openpanel) exposes argon2id password hashes and full
Unauthenticated SSRF in OpenPanel before 2.3.0 exposes two utility endpoints - /misc/favicon and /misc/og - that blindly
Cross-tenant data exposure in OpenPanel before 3.0.0 lets any authenticated user read other projects' profiles, events a
Read-level project members in OpenPanel before 3.0.0 can retrieve plaintext integration secrets - Slack bot tokens, inco
EUVD-2026-71034
GHSA-w9vr-cg67-9jp7
NVD
CVE.org
EPSS
Exploit-DB