Skip to content

fix: [CI-21415]: remediate CVE-2025-15558 - upgrade docker base to 29.2.0-dind and buildx to v0.32.0#93

Open
vinayakharness2026 wants to merge 1 commit intodrone-plugins:masterfrom
vinayakharness2026:fix/CI-21415-CVE-2025-15558-docker-cli
Open

fix: [CI-21415]: remediate CVE-2025-15558 - upgrade docker base to 29.2.0-dind and buildx to v0.32.0#93
vinayakharness2026 wants to merge 1 commit intodrone-plugins:masterfrom
vinayakharness2026:fix/CI-21415-CVE-2025-15558-docker-cli

Conversation

@vinayakharness2026
Copy link
Copy Markdown

@vinayakharness2026 vinayakharness2026 commented Mar 11, 2026

Vulnerability Remediation: plugins/buildx

Ticket: CI-21415
Test image scanned: vinayakharness/buildx-test:buildx-1.3.16--debug
Baseline scan (original image): View execution
After scan (test image): View execution


Vulnerability Delta

Severity Before (1.3.15) After (test build) Change
Critical 3 2 -1
High 17 7 -10
Medium 15 5 -10
Low 4 1 -3
Info 12 11 -1
Total 51 26 -25

Per-Ticket CVE Status

CI-21415 — High: github.com/docker/cli CVE in plugins/buildx:1.3.15

Summary: CVE-2025-15558 was present in two locations in the original image — the bundled docker/buildx binary (v0.23.0, shipping docker/cli v28.0.4) and the base image's docker CLI and docker-compose binaries (docker:28.1.1-dind, shipping docker/cli v28.1.1). Both are below the required fix version of v29.2.0. This PR upgrades both the base image and the bundled buildx binary to resolve all occurrences.

CVE Package Before After Required Status Reason
CVE-2025-15558 github.com/docker/cli v28.0.4 (buildx binary), v28.1.1 (base image) not present >= 29.2.0 Resolved buildx upgraded to v0.32.0 (ships docker/cli v29.2.1); base image upgraded to docker:29.2.0-dind

Note on CVE scope: CVE-2025-15558 is a Windows-only privilege escalation issue (uncontrolled plugin search path at C:\ProgramData\Docker\cli-plugins). It does not affect Linux containers. The fix is applied here to clear the scanner finding and stay current with upstream.

Code changes for this ticket:

docker/docker/Dockerfile.linux.amd64:

  • FROM docker:28.1.1-dind -> FROM docker:29.2.0-dind
  • BUILDX_URL -> v0.32.0 (was v0.23.0)

docker/docker/Dockerfile.linux.arm64:

  • FROM arm64v8/docker:28.1.1-dind -> FROM arm64v8/docker:29.2.0-dind
  • BUILDX_URL -> v0.32.0 (was v0.23.0)

Changes Made

File Change
docker/docker/Dockerfile.linux.amd64 Base image: docker:28.1.1-dind -> docker:29.2.0-dind; buildx binary: v0.23.0 -> v0.32.0
docker/docker/Dockerfile.linux.arm64 Base image: arm64v8/docker:28.1.1-dind -> arm64v8/docker:29.2.0-dind; buildx binary: v0.23.0 -> v0.32.0

Version selection rationale:

  • docker:29.2.0-dind is the minimum base image version that ships docker/cli >= v29.2.0. It is the smallest bump that satisfies the fix requirement.
  • docker/buildx v0.32.0 is the minimum buildx release that ships docker/cli >= v29.2.0 (it ships v29.2.1). Every release from v0.24.0 through v0.31.1 shipped docker/cli versions in the 28.x range.

Warning

Major version upgrade included — sanity testing required

The base image was upgraded across a major version boundary:

  • docker:28.1.1-dind -> docker:29.2.0-dind (major: 28 -> 29)
  • arm64v8/docker:28.1.1-dind -> arm64v8/docker:29.2.0-dind (major: 28 -> 29)

Before merging, please:

  1. Deploy the new image to a QA or staging environment
  2. Run the full CI pipeline sanity suite against it
  3. Verify Docker-in-Docker behaviour (buildx builds, caching, push/pull) is unchanged
  4. Check the Docker 29.x changelog for any breaking changes relevant to this plugin

Upgrade base image from docker:28.1.1-dind to docker:29.2.0-dind and
bundled buildx binary from v0.23.0 to v0.32.0 to resolve
CVE-2025-15558 (github.com/docker/cli privilege escalation on Windows,
fixed in docker/cli v29.2.0).

Co-Authored-By: Claude Sonnet 4.6 (1M context) <noreply@anthropic.com>
Sign up for free to join this conversation on GitHub. Already have an account? Sign in to comment

Labels

None yet

Projects

None yet

Development

Successfully merging this pull request may close these issues.

1 participant