Polaris leaks broad cloud credentials (CVE-2026-42809)
CVE-2026-42809
CVE-2026-42809: Apache Polaris 0.3.x issues broad temporary storage credentials before validating table location (CVSS 9.9). Attackers gain unauthorized access to any S3/GCS bucket. Update to 0.3.1.
Patch now - CVE-2026-42809 is a critical credential-theft flaw in Apache Polaris 0.3.x that grants unauthenticated attackers broad access to cloud storage buckets by exploiting the staged table creation flow.
Overview
CVE-2026-42809 is a logic flaw in Apache Polaris’s credential vending mechanism. When a user creates a staged table and provides a custom location parameter, the system issues vended storage credentials (temporary tokens for S3/GCS) before validating that the location is within allowed boundaries. An attacker can supply an arbitrary storage path, such as a different customer’s bucket or a sensitive internal prefix, and receive credentials scoped to that attacker-chosen location.
The vulnerability also accepts write.data.path and write.metadata.path properties as alternate input vectors, further widening the pool of unchecked location inputs.
Impact
A low-privileged attacker can exfiltrate or overwrite any data stored in cloud object stores that the Polaris service account can reach. In multi-tenant deployments, this crosses tenant isolation boundaries, allowing unauthorized access to another tenant’s tables and metadata.
CVSS 9.9 (CRITICAL) reflects the network-based, low-complexity exploitation requiring only LOW privileges and no user interaction. The only meaningful mitigations are network-level egress controls on the Polaris server.
Remediation
Upgrade to Apache Polaris 0.3.1 immediately. This release adds location validation and overlap checks before credentials are issued for staged table creation.
If upgrading is not immediately possible, restrict location, write.data.path, and write.metadata.path parameters at your API gateway or enforce strict egress firewall rules on the Polaris server to permitted storage endpoints only. Monitor audit logs for unexpected stage_create API calls with custom location parameters.
Security Insight
CVE-2026-42809 follows the same pattern as Apache ActiveMQ CVE-2026-34197 - a configuration-time validation gap that vendors and attackers alike are learning to exploit. When a service can delegate its own credentials to an unvalidated user-supplied path, the result is effectively a confused-deputy attack on the cloud control plane. Polaris’s fix addresses the immediate symptom, but the architecture of credential vending before location binding merits a deeper review across all Apache storage-oriented projects.
Further Reading
Never miss a critical vulnerability
Get real-time security alerts delivered to your preferred platform.
Related Advisories
PraisonAI is a multi-agent teams system. Prior to version 4.6.34, PraisonAI's MCP (Model Context Protocol) server (praisonai mcp serve) registers four file-handling tools by default — praisonai.rules....
Lack of user input sanitisation in Open Notebook v1.8.3 allows the application user to execute Python code (and subsequently OS commands) on the docker container via Server-Side Template Injection (SS...
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 unes...
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 t...