CVE-2026-55887 MCP Gateway: Argument injection via OCI image label YAML in Docker MCP Gateway
A malicious OCI image label can inject Docker run arguments, allowing arbitrary code execution on the host when the image is pulled or selected.
- Exploited in the wild
- Not known
- Login needed
- Not needed
- Attackable
- Local or same network only
- Victim action needed
- A user has to click or open something
- Fix
- Available
What is CVE-2026-55887?
CVE-2026-55887 is a high-severity command injection vulnerability in docker mcp-gateway, published on 15 Sep 2026. It can only be exploited from the same machine or local network, and only if a user opens a file or follows a link.
Official description
MCP Gateway allows easy and secure running and deployment of MCP servers. From 0.21.0 until 0.42.2, Docker MCP Gateway YAML-unmarshalled the attacker-controlled io.docker.server.metadata OCI image label into the broad catalog.Server structure for direct docker:// references and catalog snapshot imports in pkg/oci/self_contained.go and pkg/workingset/workingset.go. Runtime-shaping fields including Volumes, User, and ExtraHosts were then appended to the docker run argument vector without an origin allowlist, allowing a malicious image author to request host filesystem or Docker socket mounts and UID 0 execution when a victim selected or pulled the image. This container-creation-time boundary bypass can execute arbitrary code on the host and is not prevented by no-new-privileges because no in-container privilege escalation is required. This issue is fixed in version 0.42.2.
Weakness: CWE-88
Which versions are affected by CVE-2026-55887?
3 open source packages ship an affected version, including github.com/docker/mcp-gateway.
| Package | Affected | Fixed in |
|---|---|---|
github.com/docker/mcp-gateway Go | From 0.21.0 | 0.42.2 |
github.com/docker/mcp-gateway Go | From 0.21.0 | 0.42.2 |
github.com/docker/mcp-gateway Go | From 0.21.0 | 0.42.2 |
How do I fix CVE-2026-55887?
Upgrade github.com/docker/mcp-gateway to 0.42.2 or later.
Upgrade, and pass arguments to programs as a list instead of through a shell. More about Command injection.
Is CVE-2026-55887 being exploited?
There is no known exploitation of CVE-2026-55887 in the wild and no public exploit code.
Sources
Also known as GHSA-r2xf-7jw5-pjg6, GO-2026-5604.