Summary
CVE-2026-41567: Moby (Docker) allows arbitrary code execution on the host when a malicious container image contains a trojanized decompression binary. The daemon resolves the decompression binary from the container's filesystem instead of the host, enabling a compromised container to achieve full daemon privileges and host root access.
Severity
High — CVSS 7.2 (CVE-2026-41567).
Affected Asset
Docker Engine and Moby (Docker) — the PUT /containers/{id}/archive endpoint and docker cp command.
Affected Endpoint
Docker API endpoint PUT /containers/{id}/archive and docker cp (via docker cp -).
Prerequisites
Docker Engine running < 29.5.1 or Moby < v2.0.0-beta.14; attacker can upload a container image or archive via docker cp or the archive endpoint; malicious container image contains a trojanized decompression binary.
Evidence
NVD CVE-2026-41567 (Moby) and Docker security announcements confirm the vulnerability. The advisory states that the daemon resolves decompression binaries from the container filesystem rather than the host, allowing a malicious container image to achieve arbitrary code execution with full daemon privileges, including host root UID and unrestricted capabilities.
Impact
Full host root compromise. An attacker achieves arbitrary code execution with daemon privileges, leading to full system takeover, backdoor installation, and lateral movement across the homelab or production environment.
Root Cause
The daemon in Moby/Docker resolves decompression binaries (xz, unpigz) from the container's filesystem instead of the host filesystem due to incorrect ordering of operations. This TOCTOU (Time-of-Check-Time-of-Use) race condition allows a malicious binary inside the container to be executed on the host.
Remediation
Upgrade Docker Engine to version 29.5.1 or later; upgrade Moby to v2.0.0-beta.14 or later. Restrict the PUT /containers/{id}/archive endpoint and use authorization plugins to limit access to trusted images. Only run trusted container images and avoid processing compressed archives from untrusted sources.
Verification Steps
1. Confirm Docker version (docker --version) is < 29.5.1 or Moby < v2.0.0-beta.14 (vulnerable). 2. After patching, verify the daemon resolves decompression binaries from the host (which xz, which unpigz) rather than the container image. 3. Confirm archive uploads (docker cp, archive endpoint) no longer trigger malicious binary execution.