CVE-2026-42811
CriticalSummary
Apache Polaris is supposed to issue short-lived GCS credentials that only work for one table's files, but a crafted namespace or table name can cause those credentials to work across the configured bucket.
Risk Assessment
The organization may be exposed to unauthorized access to data in Google Cloud Storage, potentially leading to data leaks or privacy breaches.
Recommendation
It is recommended to update Apache Polaris to the latest version and review the code to ensure proper validation of input data.
Other vulnerabilities in Apache Polaris
See all- CVE-2026-42810Critical
Apache Polaris accepts literal `*` characters in namespace and table names. When it later builds temporary S3 access policies for delegated table access, those same characters appear to be reused unescaped in S3 IAM resource patterns.
- CVE-2026-42809Critical
Apache Polaris can issue broad temporary ('vended') storage credentials during staged table creation before the effective table location has been validated or durably reserved. An attacker can choose a reachable target location, leading to unauthorized access to table data and metadata.
- CVE-2026-97395High
Apache Polaris allows an authenticated principal with permission to create or update Iceberg table properties to set FileIO client settings such as s3.endpoint in table metadata. In versions < 1.8.0, Polaris may use these settings to construct its server-side FileIO client, potentially redirecting storage traffic to a host chosen by the table writer and exposing authentication material.
- CVE-2026-64640Medium
Apache Polaris did not consistently validate storage locations supplied during table and view registration. An authenticated principal with registration permissions could cause Polaris to use the catalog's storage credentials to read a caller-selected Iceberg metadata file before verifying it was within allowed locations, potentially disclosing limited information. Polaris could also accept registration metadata with references to external locations, but this did not cause reads.
Original NVD description (English source)
In plain terms, Apache Polaris is supposed to issue short-lived GCS credentials that only work for one table's files, but a crafted namespace or table name can cause those credentials to work across the configured bucket instead. Apache Polaris builds Google Cloud Storage downscoped credentials by creating a Credential Access Boundary (CAB) with CEL conditions that are intended to restrict access to the requested table's storage path. The relevant CEL string is built from the bucket name and the table path. That table path is derived from namespace and table identifiers. In current code, that path appears to be inserted into the CEL expression without escaping. As a result, a namespace or table identifier containing a single quote and other URI-safe CEL fragments can break out of the intended quoted string and change the meaning of the CEL condition. In private testing against Polaris 1.4.0 on real Google Cloud Storage, it was confirmed that Polaris accepted a crafted identi
Vulnerability data from NVD (NIST) · CISA KEV · EPSS

