Cyber Resilience

CVE-2025-15558

Docker Command Line Interface ≤ 29.1.5

Published
04 March 2026
Modified
15 July 2026
Patch / advisory
CVSS Score v4 7.0
Click a component to see what it means
Raw vectorCVSS:4.0/AV:L/AC:L/AT:N/PR:L/UI:P/VC:H/VI:H/VA:H/SC:N/SI:N/SA:N/E:X/CR:X/IR:X/AR:X/MAV:X/MAC:X/MAT:X/MPR:X/MUI:X/MVC:X/MVI:X/MVA:X/MSC:X/MSI:X/MSA:X/S:X/AU:N/R:U/V:X/RE:X/U:X
EPSS Score 0.0047 39th percentile
Risk Priority 55 floored blend · peak EPSS

Summary

CVE-2025-15558 is a high-severity Uncontrolled Search Path Element (CWE-427) vulnerability in Docker Command Line Interface. Its CVSS base score is 7.0 (High).

Operationally, exploitation aligns with the MITRE ATT&CK technique Path Interception (T1034); ranked at the 39th percentile by exploit likelihood (below the median); it is not currently listed in the CISA KEV catalog.

The strongest mitigations our analysis identified map to CM-6 (Configuration Settings) and AC-3 (Access Enforcement) — see the control section below for these in your framework.

Deeper analysis AI-assisted summary

Synthesised by an AI model from the NVD description and linked references — a reading aid, not an authoritative source.

CVE-2025-15558 is a vulnerability in the Docker CLI for Windows, where it searches for plugin binaries in the non-existent directory C:\ProgramData\Docker\cli-plugins. A low-privileged attacker can create this directory and place malicious CLI plugin binaries, such as docker-compose.exe or docker-buildx.exe, which are then executed when a victim user opens Docker Desktop or invokes Docker CLI plugin features. This affects Docker CLI versions through 29.1.5 and Windows binaries using the github.com/docker/cli/cli-plugins/manager package, including Docker Compose. Non-Windows binaries and projects not using the plugin-manager code are unaffected. The issue is rated CVSS 8.0 (CVSS:3.1/AV:N/AC:L/PR:L/UI:R/S:U/C:H/I:H/A:H) and maps to CWE-427 (Untrusted Search Path).

A low-privileged attacker with access to the target Windows system can exploit this by creating the C:\ProgramData\Docker\cli-plugins directory and dropping malicious plugin executables. Exploitation occurs when a higher-privileged victim user launches Docker Desktop or uses Docker CLI plugin features, causing the malicious binaries to execute in the victim's context. If the Docker CLI is run as a privileged user, this enables privilege escalation, potentially granting the attacker high confidentiality, integrity, and availability impacts.

Mitigation details are provided in official advisories, including Docker Desktop release notes at https://docs.docker.com/desktop/release-notes/, a fix via GitHub pull request https://github.com/docker/cli/pull/6713, and the Zero Day Initiative advisory at https://www.zerodayinitiative.com/advisories/ZDI-CAN-28304/.

OWASP Top 10 for Web (2025)

EU & UK References

Vulnerability Data

Docker CLI for Windows searches for plugin binaries in C:\ProgramData\Docker\cli-plugins, a directory that does not exist by default. A low-privileged attacker can create this directory and place malicious CLI plugin binaries (docker-compose.exe, docker-buildx.exe, etc.) that are executed when a victim…

more

user opens Docker Desktop or invokes Docker CLI plugin features, and allow privilege-escalation if the docker CLI is executed as a privileged user. This issue affects Docker CLI: through 29.1.5 and Windows binaries acting as a CLI-plugin manager using the github.com/docker/cli/cli-plugins/manager https://pkg.go.dev/github.com/docker/cli@v29.1.5+incompatible/cli-plugins/manager package, such as Docker Compose. This issue does not impact non-Windows binaries, and projects not using the plugin-manager code.

CWE(s)

Related Threats

MITRE ATT&CK Enterprise Techniques

T1034 Path Interception Persistence
**This technique has been deprecated.
T1574.007 Path Interception by PATH Environment Variable Stealth
Adversaries may execute their own malicious payloads by hijacking environment variables used to load libraries.
T1574.008 Path Interception by Search Order Hijacking Stealth
Adversaries may execute their own malicious payloads by hijacking the search order used to load other programs.
T1574 Hijack Execution Flow Stealth
Adversaries may execute their own malicious payloads by hijacking the way operating systems run programs.
T1574.001 DLL Stealth
Adversaries may abuse dynamic-link library files (DLLs) in order to achieve persistence, escalate privileges, and evade defenses.
T1574.004 Dylib Hijacking Stealth
Adversaries may execute their own payloads by placing a malicious dynamic library (dylib) with an expected name in a path a victim application searches at runtime.
Derived from this CVE’s CWE(s) via the direct CWE→ATT&CK cross-walk.

CVEs Like This One

CVE-2025-33231Same product: Microsoft Windows
CVE-2023-48861Same product: Microsoft Windows
CVE-2023-31027Same product: Microsoft Windows
CVE-2023-47113Same product: Microsoft Windows
CVE-2023-48677Same product: Microsoft Windows
CVE-2023-31016Same product: Microsoft Windows
CVE-2026-28711Same product: Microsoft Windows
CVE-2024-24916Same product: Microsoft Windows
CVE-2026-48272Same product: Microsoft Windows
CVE-2024-36253Same product: Microsoft Windows

Affected Assets

docker
command line interface
≤ 29.1.5

Mitigating Controls

Control response

Prevent
Stop it (NIST 800-53)

Detect
Catch it (NIST detect / respond)

Harden
Shrink the surface (DISA STIG)
  • 2 hardening rules · 1 OS baseline
Validate
Prove the fix (OWASP ASVS)

Mitigating Controls (NIST 800-53 r5) AI

Establishes restrictive configuration settings that can define and lock down approved search paths.

Enforces approved authorizations so that only intended actors can place or modify elements in the search path.

Limits privileges so unintended actors cannot write to or control directories in the product's search path.

Restricts logical and physical access to change system configuration, including search-path settings and directories.

Mitigating Controls (NIST CSF 2.0) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→CSF cross-walk (authority under review) — links open the control.

PR.PS-06 mostly match
prevents

Secure-development practices directly address design of search paths and resource loading.

PR.PS-01 partial match
prevents

Hardened configuration baselines can enforce safe search-path settings and reduce exposure.

PR.PS-05 partial match
prevents

Execution allow-listing can block malicious binaries placed in hijackable search locations.

Mitigating Controls (ISO/IEC 27001:2022 Annex A) AI

Derived directly from the weakness types (CWEs) cited in the NVD entry via our AI-authored CWE→ISO cross-walk (authority under review) — links open the control.

finds

Security testing can detect uncontrolled search-path issues but does not prevent them by itself.

mitigates

Restricting software installation reduces the chance that an attacker-controlled path element is introduced into the search path.

mitigates

Secure system architecture and engineering principles require explicit control over search paths and resource locations.

prevents

Secure coding practices directly address the use of fixed or controlled search paths that can be influenced by unintended actors.

prevents

Configuration management can enforce approved search-path settings but does not inherently prevent the weakness.

Hardening callouts derived

Configuration rules from DISA STIG baselines that bear on weaknesses of the type cited by this CVE. Each rule is shown with the relationship its mapping actually records, against the CWE it was authored against. Derived via CVE→CWE over `controls_xwalks` (authoritative rows only; rows rated `none` are excluded).

Oracle Linux 8 (1 rule)
  • V-248577 OL 8 must enable kernel parameters to enforce Discretionary Access Control (DAC) on symlinks. prevents CWE-427

References