CVE-2026-73334: Apache Parquet Hadoop: File-controlled KMS URL is forwarded to pluggable KmsClient that skips host validation
Potential problem for users of the org.apache.parquet.crypto.keytools package in Apache Parquet, versions 1.12 to 1.18. This package enables users to encrypt Parquet files via an envelope encryption mechanism that wraps (encrypts) data keys via a Key Management Service (KMS). On the reader side, the KMS URL can be application-controlled or file-controlled. If the user does not leverage application control for this parameter, a file-controlled KMS URL is forwarded to a pluggable KmsClient implementation. If the pluggable implementation does not perform host validation, a KMS token can be sent to a malicious host set by an attacker in the file.
Before the problem is fixed, users are recommended to leverage application control for KMS URL parameter in readers (versions 1.12-1.18). After the problem is fixed (presumably in version 1.19), the upgrade will disable file-controlled KMS URL by default. Users of the KMS URL parameter will have two options then: leverage application control for KMS URL parameter in readers, or enable file-controlled KMS URL (via a new app parameter). The latter option will explicitly require (in the new parameter documentation) to validate the KMS URL and use authentication in the custom implementation of the KMS client plug in.
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Configuration
Upgrade to the fixed release (problem fixed in version 1.19). After upgrading, ensure file-controlled KMS URL is disabled/relies on the default behavior so the KMS URL is not taken from the file.
Apache Parquet Hadoop (reader KMS URL parameter) file-controlled KMS URL (via new app parameter) = disabled by default (after fix in version 1.19) - Configuration
For Apache Parquet Hadoop versions 1.12 to 1.18 (before the fix), ensure the reader uses application control for the KMS URL parameter rather than allowing it to be file-controlled.
Apache Parquet Hadoop (reader KMS URL parameter) KMS URL source control = application-controlled
Event History
Frequently Asked Questions
Who is exposed to this issue?
Users of org.apache.parquet.crypto.keytools in Apache Parquet versions 1.12 through 1.18 are exposed when readers allow the KMS URL to be controlled by the Parquet file and use a pluggable KmsClient implementation that does not validate the URL host.
What does an attacker need to exploit this?
An attacker needs to provide a Parquet file containing a KMS URL pointing to a malicious host. The reader must process that file without application-controlled KMS URL enforcement, and its KmsClient must forward the request without host validation.
What should be done before upgrading?
Configure readers to use application control for the KMS URL parameter rather than accepting a file-controlled URL. This is the recommended mitigation for affected versions 1.12 through 1.18.
How does the behavior change after the fix?
The upgrade expected in version 1.19 disables file-controlled KMS URLs by default. Users can keep application-controlled URLs or explicitly enable file-controlled URLs through a new application parameter, which requires KMS URL validation and secure KMS authentication.