CVE-2026-73322

Apache Pinot: Incorrect authorization in the single-stage query engine allows reading unauthorized dimension tables via lookup()

Published Oct 30, 2026 CVSS 3.1 · 6.5 Medium EPSS < 1% KEV · Not listed
Description
Incorrect Authorization vulnerability in the single-stage query engine of Apache Pinot.

When broker access control is enabled, the single-stage query engine authorizes only the table named in the query's FROM clause. The lookup() transform function identifies its dimension table with a string literal argument rather than through the FROM clause, so that table was never included in the authorization check. An authenticated user who is authorized for at least one table can therefore read columns from any dimension table in the cluster, including tables they have no access to, and can retrieve arbitrary rows of it by supplying primary key values directly. Per-principal row-level security filters configured on the dimension table are likewise not applied.

The multi-stage query engine is not affected.

This issue affects Apache Pinot: through 1.5.1

Users are recommended to upgrade to version 1.6.0, which fixes this issue.

Remediation

No solution or workaround provided in the CVE record

Tracking

Sign in to view the affected projects.

Advisories

No advisories available
History
Type Values Removed Values Added
Metrics ssvc

{'options': {'Automatable': 'no', 'Exploitation': 'none', 'Technical Impact': 'partial'}, 'version': '2.0.3'}

Type Values Removed Values Added
Weaknesses CWE-639
References
Metrics threat_severity

None

cvssV3_1

{'score': 6.5, 'vector': 'CVSS:3.1/AV:N/AC:L/PR:L/UI:N/S:U/C:H/I:N/A:N'}

threat_severity

Moderate

Type Values Removed Values Added
First Time appeared Apache
Apache pinot
Vendors & Products Apache
Apache pinot
Type Values Removed Values Added
Description Incorrect Authorization vulnerability in the single-stage query engine of Apache Pinot. When broker access control is enabled, the single-stage query engine authorizes only the table named in the query's FROM clause. The lookup() transform function identifies its dimension table with a string literal argument rather than through the FROM clause, so that table was never included in the authorization check. An authenticated user who is authorized for at least one table can therefore read columns from any dimension table in the cluster, including tables they have no access to, and can retrieve arbitrary rows of it by supplying primary key values directly. Per-principal row-level security filters configured on the dimension table are likewise not applied. The multi-stage query engine is not affected. This issue affects Apache Pinot: through 1.5.1 Users are recommended to upgrade to version 1.6.0, which fixes this issue.
Title Apache Pinot: Incorrect authorization in the single-stage query engine allows reading unauthorized dimension tables via lookup()
Weaknesses CWE-863
References
Weaknesses

Sources

Status
PUBLISHED
Assigner
apache
Published
Updated
Nov 6, 2026, 4:22 PM
Reserved
Aug 11, 2026, 9:05 PM
Status
Awaiting Analysis
Published
Oct 30, 2026, 7:19 PM
Modified
Nov 6, 2026, 5:19 PM
Severity
Moderate
Public date
Oct 30, 2026, 6:10 PM