CVE-2025-0495: Secrets leakage to telemetry endpoint via cache backend configuration via buildx
Impact Some cache backends allow configuring their credentials by setting secrets directly as attribute values in cache-to/cache-from configuration. If this was done by the user, these secure values could be captured together with OpenTelemetry trace as part of the arguments and flags for the traced CLI command. Passing tokens to Github cache backend via environment variables or using registry authentication is not affected.
If you passed a token value like this and use a custom OpenTelemetry collector for computing traces you should make sure that your traces are kept secure. OpenTelemetry traces are also saved in BuildKit daemon's history records.
Patches Issue has been fixed in Buildx v0.21.3 or newer.
Workarounds Avoid passing cache backend credentials with CLI arguments. Make sure access to traces and BuildKit history records is kept secure.
Other sources
Buildx is a Docker CLI plugin that extends build capabilities using BuildKit.
Cache backends support credentials by setting secrets directly as attribute values in cache-to/cache-from configuration. When supplied as user input, these secure values may be inadvertently captured in OpenTelemetry traces as part of the arguments and flags for the traced CLI command. OpenTelemetry traces are also saved in BuildKit daemon's history records.
This vulnerability does not impact secrets passed to the Github cache backend via environment variables or registry authentication.
— NVD
Secrets leakage to telemetry endpoint via cache backend configuration via buildx
— Microsoft
Affected Software
Remediation
Recommended actions to resolve this vulnerability, in priority order.
- Upgrade
Upgrade
go/github.com/docker/buildxto a version that resolves this vulnerability.Fixed in 0.21.3 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 0.7.1-25 - Upgrade
Upgrade to a fixed release to a version that resolves this vulnerability.
Fixed in 0.14.0-5 - Upgrade
Upgrade
docker/buildxto a version that resolves this vulnerability.Fixed in 0.21.3 - Configuration
Avoid passing cache backend credentials with CLI arguments; configure cache backend secrets via cache-to/cache-from configuration as attribute values (as described) to reduce the chance of token/secret values being captured in traced CLI arguments.
Buildx cache-to/cache-from credentials handling = do not pass cache backend credentials with CLI arguments - Compensating control
Ensure access to OpenTelemetry traces and BuildKit daemon history records is kept secure.
Event History
Frequently Asked Questions
What is the severity of CVE-2025-0495?
CVE-2025-0495 is classified as a medium severity vulnerability affecting Docker Buildx.
How do I fix CVE-2025-0495?
To fix CVE-2025-0495, update Docker Buildx to the latest version that addresses this vulnerability.
What software is affected by CVE-2025-0495?
CVE-2025-0495 specifically affects Docker Buildx, which is a CLI plugin for Docker.
What are the potential risks of CVE-2025-0495?
The potential risks of CVE-2025-0495 include exposure of sensitive credentials through user input in cache configurations.
Is there a workaround for CVE-2025-0495?
As a workaround for CVE-2025-0495, avoid using user input for sensitive attributes in cache-to/cache-from configurations.