Skip to main content

OpenPanel CVE-2026-116813

| EUVDEUVD-2026-110521 HIGH
SQL Injection (CWE-89)
2026-10-26 VulnCheck GHSA-4m7v-v664-jv5c
7.1
CVSS 4.0 · Vendor: VulnCheck
View

Attack ChainAIDerived

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

  1. Access
    Authenticate as project-read member or share-link holder
  2. Delivery
    Submit crafted conversion chart series name or date
  3. Exploit
    Break out of ClickHouse single-quote string literal
  4. Execution
    Inject OR 1=1 to neutralize project_id scope
  5. Impact
    Read other tenants' analytics and event data

Vulnerability Assessment

Weakness
CWE
OWASP Top 10:2025
A05:2025 - Injection
ASVS 5.0
V1 - Encoding and Sanitization Parameterized queries, prepared statements
MITRE ATT&CK

2 techniques across 2 tactics: Initial Access, Persistence

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

Exploitation Conditions

Exploitation requires an authenticated low-privilege actor: either a project-read member (who controls the series[].name field) or a share-link holder (who controls startDate/endDate), reaching the vulnerable path via the tRPC chart.conversion endpoint (chart.ts:547, chartProcedure). No non-default configuration is needed - the flaw is in the default conversion-query code path, where event names and dates are interpolated raw into ClickHouse SQL while projectId is sqlstring.escape()d. The cross-tenant read specifically depends on the shared ClickHouse reader credential being able to read all rows, so that neutralizing project_id scope exposes other tenants. LIMITING FACTORS: the attacker must already possess at least read-level project access or a valid share link (PR:L, not unauthenticated), the deployment must be multi-tenant for cross-tenant impact to be meaningful, and only confidentiality is affected (no write/integrity or availability impact).

Impact

Signals are consistent in pointing to a real but moderate-priority issue rather than an emergency. The CVSS 4.0 vector (AV:N/AC:L/AT:N/PR:L/UI:N/VC:H) and score of 7.1 describe a network-reachable, low-complexity flaw requiring low privileges, with high confidentiality impact and no integrity or availability impact - matching the described cross-tenant analytics read. EPSS is low (0.23%, 14th percentile) and the CISA SSVC signals are benign (Exploitation: none, Automatable: no, Technical Impact: partial), and the CVE is NOT in CISA KEV, so there is no evidence of active exploitation. A detailed public PoC reference exists in the GHSA advisory (including a concrete injection payload), but it is not verified as a working, weaponized exploit tool, and PoC availability is distinct from active exploitation. The vuln.today 'this_week' decision label reflects a genuine authenticated cross-tenant data-breach vector that warrants prompt remediation, but the authentication requirement (PR:L - a project-read member or share-link holder) and SSVC 'Automatable: no' make opportunistic mass exploitation unlikely. CONFLICT TO VERIFY: input metadata states 'Patch: Available from vendor' and the NVD/EUVD data imply a fix in 3.0.0, yet the GHSA source-code advisory explicitly states the fix is 'unreleased'/'not yet patched' and the code is vulnerable on HEAD - confirm fixed-version availability directly with the vendor before relying on an upgrade.

Exploit ScenarioDerived

An attacker who holds low-privilege project-read access (or a valid share link) to an OpenPanel instance submits a conversion chart whose event series name - e.g. x' OR 1=1 OR events.name = 'y - breaks out of the single-quoted ClickHouse string literal, or alternatively sets a non-YYYY-MM-DD startDate/endDate that is interpolated verbatim. Because the ClickHouse reader credential reads all rows, the OR 1=1 neutralizes the project_id tenant scope and returns other organizations' analytics and event data. A concrete PoC payload is published in the GHSA advisory, though it is not verified as a packaged working exploit.

This Week Schedule remediation this week. Why: HIGH severity (CVSS 7.0-8.9).
Patch available 0.2% exploitation probability (EPSS)

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

Alert me

AnalysisAIv1 – Oct 28, 2026

SQL injection in OpenPanel's conversion analytics query allows project-read members and share-link holders to read other tenants' ClickHouse analytics data. Before version 3.0.0, ConversionService.getConversion interpolates series event names and startDate/endDate values raw inside single quotes, so a payload such as x' OR 1=1 neutralizes the project_id tenant scoping; the projectId value itself is passed through sqlstring.escape, so the omission is confined to the event-name and date fields. Exploitation requires an authenticated low-privilege actor (CVSS 4.0 PR:L) or a valid share link, and cross-tenant impact depends on a multi-tenant deployment in which the ClickHouse reader credential can read all rows. The advisory includes a PoC payload description that is not verified as working exploit code; SSVC records exploitation as none and EPSS is 0.23% (14th percentile), so this is a real but moderate-priority exposure focused purely on confidentiality.

RemediationAI

Vendor-released patch: upgrade OpenPanel to 3.0.0 or later, which is the first version outside the affected range 0 <3.0.0; verify against the vendor advisory at https://github.com/Openpanel-dev/openpanel/security/advisories/GHSA-7fm7-rprq-g8rm. If you build from source rather than a release, the advisory's suggested fix is to wrap every interpolated event name and date in sqlstring.escape() exactly as funnel.service.ts:60 already does for event names, or to move the conversion query to parameterized ClickHouse query parameters - the vulnerable lines are conversion.service.ts:138-142, :179 and :180 (the date sink reached via normalizeBoundary in date.service.ts:239). Because exploitation requires an already-authenticated project-read member or a valid share link, reducing exposure in the interim means tightening who holds read-level project access and which share links are active, which is only a partial reduction of attack surface and does not remove the injection itself, especially in multi-tenant deployments where the ClickHouse reader credential can read all rows.

Affected VersionsENISA

openpanel 0 <3.0.0

Affected Packages

euvd openpanel fix: 3.0.0

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 CWE-89 SQL injection in the ClickHouse-backed analytics layer of OpenPanel, a multi-tenant web analytics product (CPE cpe:2.3:a:openpanel-dev:openpanel). In @openpanel/db conversion.service.ts, lines 138-142 build events.name = '${eventA.name}' and line 179 builds AND events.name IN ('${eventA.name}', '${eventB.name}') by direct string interpolation, while projectId at lines 96, 145 and 178 is correctly wrapped in sqlstring.escape() - showing the escaper was available and used for the tenant scope but not for event names. The sibling funnel.service.ts:60 does use sqlstring.escape(event.name), confirming the safe pattern already exists in the codebase. Dates reach a further sink at line 180 via toDateTime('${startDate}')/:180, where normalizeBoundary (date.service.ts:239) returns non-YYYY-MM-DD input verbatim. The injected query is executed through clix(...).from(subquery).execute() into chQuery, and because the shared ClickHouse reader credential can read all rows, an OR 1=1 condition added next to the project_id predicate returns other organizations' analytics and event data. The entry point is the tRPC chart.conversion procedure (chart.ts:547, chartProcedure), guarded by getProjectAccess at read level with an unconstrained zChartEvent.name string and no allowlist. The advisory explicitly distinguishes this sink from the already-fixed GHSA-cc5p-97vc-8fwv (chart.service getSelectPropertyKey) and GHSA-hwf2-2v2h-7892 (profile-column allowlist), neither of whose guards exist in this function.

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

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

Network-reachable tRPC endpoint (AV:N) with no special conditions (AC:L), but requires a project-read member or share-link holder (PR:L), yielding cross-tenant read-only confidentiality impact (C:H, I/A:N).

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

Primary rating from Vendor (VulnCheck).

CVSS VectorVendor: VulnCheck

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

Lifecycle Timeline

2
Patch available
Oct 27, 2026 - 01:15 EUVD
CVE Published
Oct 26, 2026 - 23:05 cve.org
HIGH 7.1

DescriptionCVE.org

OpenPanel before 3.0.0 contains an sql injection vulnerability in ConversionService.getConversion that allows project-read members and share-link holders to inject ClickHouse SQL through unescaped event names and dates. Attackers can break out of string literals in series names or startDate/endDate values with OR 1=1 to neutralize project_id scoping and read other tenants' analytics data.

Executive ViewAI

Why It Matters

OpenPanel versions prior to 3.0.0 contain a SQL injection vulnerability that could allow authenticated low-privilege users or share-link holders to access other tenants' ClickHouse analytics data in multi-tenant deployments. This threatens customer data confidentiality and could undermine trust in the platform's tenant isolation, affecting both the organization's reputation and potential regulatory obligations.

Business Impact: High
Compensating Controls

Apply vendor patch.

Threat Intelligence Overview

EPSS Score
0.2%
Top 86% exploitable
Prevalence
Low
open-source self-hosted analytics platform, niche deployment footprint
Social Media
1
Sightings
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 HIGH
CISA KEV No
Public POC No
EPSS 0.2%
Patch available Yes
Active threat No
Deciding rule
HIGH severity (CVSS 7.0-8.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
Scheduled
Exploitation
None
System Exposure· derived
Open
Automatable
No
Human Impact
High
Technical Impact
Partial

Priority Score

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

Attack Technique

SQL injection exploits the way applications construct database queries by mixing user input directly into SQL statements.

CVE-2026-93985 CRITICAL POC
9.4 Sep 19

Code execution in OpenPanel's js-runtime component lets an authenticated user who holds project write access escape the

CVE-2025-25871 HIGH POC
8.0 Mar 14

An issue in Open Panel v.0.3.4 allows a remote attacker to escalate privileges via the Fix Permissions function. Rated h

CVE-2025-25872 MEDIUM POC
5.5 Mar 14

An issue in Open Panel v.0.3.4 allows a remote attacker to escalate privileges via the Fix Permissions function. Rated m

CVE-2025-25873 MEDIUM POC
5.5 Mar 14

Cross Site Request Forgery vulnerability in Open Panel OpenAdmin v.0.3.4 allows a remote attacker to escalate privileges

CVE-2026-85614 CRITICAL
9.2 Sep 04

Server-side request forgery in OpenPanel before 2.3.0 lets unauthenticated remote attackers coerce the panel server into

CVE-2026-116818 HIGH
8.8 Oct 26

Unauthenticated ClickHouse SQL injection in OpenPanel before 3.0.0 lets remote attackers read other tenants' analytics d

CVE-2026-116811 HIGH
8.7 Oct 26

Sandbox escape in OpenPanel's JavaScript webhook-template runtime (packages/js-runtime) allows an authenticated project

CVE-2026-85610 HIGH
8.7 Sep 04

Authenticated remote code execution in OpenPanel before 2.3.0 allows any project member with read access to escape the m

CVE-2026-88893 HIGH
8.7 Sep 10

Unauthenticated information disclosure in OpenPanel (openpanel-dev/openpanel) exposes argon2id password hashes and full

CVE-2026-85612 HIGH
8.7 Sep 04

Unauthenticated SSRF in OpenPanel before 2.3.0 exposes two utility endpoints - /misc/favicon and /misc/og - that blindly

CVE-2026-116808 HIGH
8.6 Oct 26

Cross-tenant data exposure in OpenPanel before 3.0.0 lets any authenticated user read other projects' profiles, events a

CVE-2026-116819 HIGH
8.4 Oct 26

Read-level project members in OpenPanel before 3.0.0 can retrieve plaintext integration secrets - Slack bot tokens, inco

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