GHSA-vrfj-fvm6-cprg
Attack ChainAIDerived
Hypothetical attack flow derived from CVE metadata – not a confirmed exploit chain
-
AccessAuthenticate with access to one table
-
DeliveryCraft single-stage query using lookup()
-
ExploitReference restricted dimension table via string literal
-
ExecutionSupply primary key values for target rows
-
ImpactRead unauthorized dimension columns and rows
Vulnerability Assessment
| Weakness |
CWE
OWASP Top 10:2025
A01:2025 - Broken Access Control
ASVS 5.0
V8 - Authorization Authorization logic validation
MITRE ATT&CK
1 technique across 1 tactic: Privilege Escalation The technique list with ATT&CK links and the kill-chain view is part of the Basic plan and up. |
| Exploitation Conditions | Exploitation requires that broker access control is enabled on the Apache Pinot cluster (without it, no authorization check exists to bypass), that the attacker is an authenticated user already authorized for at least one table, and that queries run through the single-stage query engine using the lookup() transform function whose dimension table is specified as a string-literal argument. The multi-stage query engine is explicitly not affected, which limits exposure. Impact is limited to reading dimension-table columns and rows (including defeating per-principal row-level security on that dimension table); it does not grant write access or affect non-dimension tables. Affected versions are Apache Pinot 0.7.0 through 1.5.1. |
| Impact | No CVSS, EPSS, KEV, or SSVC data is provided; the only priority signal is the vendor 'moderate' rating and a vuln.today decision label of 'awaiting_data', so quantitative exploitation-probability signals are entirely absent and cannot be compared. The vulnerability is an authorization bypass rather than memory corruption: the Apache advisory states that when broker access control is enabled, the single-stage query engine authorizes only the table in the FROM clause, while the lookup() transform names its dimension table via a string-literal argument that escapes the authorization check. The description explicitly describes the attacker as an authenticated user already authorized for at least one table, so this is a privilege/authorization-scope escalation (read access to dimension tables the user should not see, including bypass of per-principal row-level security), not remote-unauthenticated compromise. Real-world risk is moderate and conditional: it only matters in clusters that have broker access control enabled and that use dimension tables with lookup(), and impact is confined to confidentiality of dimension-table data. There is no public exploit identified at time of analysis and no evidence of active exploitation, so this should be treated as a patch-in-normal-cycle authorization fix rather than an emergency, with priority raised for multi-tenant Pinot deployments relying on broker access control for table isolation. |
| Exploit ScenarioDerived | In a multi-tenant Apache Pinot cluster with broker access control enabled, an authenticated analyst who is authorized for only one table issues a single-stage query using the lookup() transform function and supplies the name of a restricted dimension table as its string-literal argument. Because that table is never checked by the authorizer, the analyst reads columns from it and retrieves arbitrary rows by supplying primary key values directly, bypassing per-principal row-level security filters. No public exploit code is identified at time of analysis; the trigger is the documented lookup() argument behavior. |
Get an e-mail when this CVE is exploited, patched or re-scored. Free account.
Alert meAnalysisAIv1 – Oct 30, 2026
Apache Pinot 0.7.0 through 1.5.1 authorize only the table named in a query's FROM clause in the single-stage query engine, so an authenticated user who is authorized for at least one table can supply a different dimension table as the string-literal argument of the lookup() transform and read its columns - and, by passing primary key values directly, arbitrary rows of it - even where per-principal row-level security filters are configured on that table. The behavior only matters when broker access control is enabled, since without it there is no authorization check to escape, and the multi-stage query engine is explicitly not affected, which limits exposure to read-only dimension-table data rather than write access or non-dimension tables. The vendor rates the issue moderate; no CISA KEV entry, EPSS score, SSVC decision or public exploit code appears in the supplied data, and no public exploit was identified at time of analysis.
RemediationAI
The vendor's guidance is to upgrade: move off the affected '0.7.0 before 1.6.0' range, which makes Apache Pinot 1.6.0 the first release outside the vulnerable window, but note that the advisory text itself carries an unfilled [FIXED_VERSION] placeholder, so confirm the exact target release on https://pinot.apache.org before scheduling the upgrade. No workaround is documented in the available sources, and the precondition for exploitation is that broker access control is enabled, so disabling it would remove every authorization check rather than mitigate this one and is not an acceptable compensating control. Until the upgrade is applied, treat the cluster as permitting any authenticated user with a grant on one table to read any dimension table reachable via lookup(), including rows protected by per-principal row-level security filters; restrict query-engine exposure and review which principals hold even minimal table grants, since that is the only prerequisite the assessment identifies.
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
Apache Pinot is an open-source distributed OLAP datastore, originally built at LinkedIn, that serves high-concurrency, low-latency analytical queries over columnar segments. It exposes two execution paths: a multi-stage query engine and a single-stage engine that runs the query largely on the broker. The lookup() transform function enriches query results with columns from a dimension table, and it names that dimension table through a string-literal argument instead of the FROM clause. The broker's authorization layer was written to check the table referenced in FROM only, so the lookup() dimension table was never passed through the same access-control decision. The root cause is therefore an incorrect authorization / missing authorization-check class of flaw (CWE-863 family) rather than a memory-safety or injection bug: an authenticated principal holding a grant on at least one table can reach the lookup() dimension table unnamed in FROM, including retrieving rows by primary key and bypassing per-principal row-level security filters attached to that dimension table. Per the assessed vector CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N (6.5, Medium), the attack is network-reachable and requires a low-privileged authenticated account, with high confidentiality impact and no integrity or availability impact. No CPE strings were supplied; the affected product is Apache Pinot itself in the 0.7.0 through 1.5.1 range, and the multi-stage query engine is out of scope for this bug.
Know when the next one hits your stack
- 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
Authenticated user with access to one table (PR:L) sends a network query with no special timing (AV:N/AC:L/UI:N); impact is unauthorized reads only, so C:H, I:N, A:N.
Estimated by vuln.today — no official severity rating has been published for this CVE yet.
Lifecycle Timeline
1Description PRE-NVD
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
Attack Technique
Authentication bypass attacks exploit flaws in the verification mechanisms that control access to systems and applications.
EUVD-2026-114272
CVE.org
EPSS
Exploit-DB