All vulnerabilities
CRITICALInfraexploited in the wild

CONTAINER-EXPOSED-DOCKER-API

Container · Docker Engine remote API / daemon (ports 2375/2376)

Summary

Exposed Docker API is a recurring misconfiguration class in which the Docker remote API (default TCP 2375 plaintext, 2376 TLS) is published to untrusted networks without TLS or authentication, granting anyone who reaches it full control of the daemon. Because dockerd runs as root and the unauthenticated API permits arbitrary container creation, an attacker can launch a privileged container that bind-mounts the host root filesystem and then chroots into it to escape to the host. The Commando Cat campaign, reported in 2024 by Cado Security and analyzed by Trend Micro (advisory dated 13 June 2024), abused exactly this exposure: it deployed a benign image (cmd.cat/chattr) generated by the open-source Commando project, then used chroot and volume binding of the host's root directory into the container to break out and run host-level payloads. The delivered payloads installed cryptocurrency miners, registered persistence and a stealthy backdoor (including DropBear SSH on TCP 3022), and exfiltrated host and cloud-service-provider credentials. Shell-script and command-and-control infrastructure overlapped with the TeamTNT cryptojacking group.

How to avoid it in your code

  • Never expose the Docker remote API (2375/2376) to the internet or untrusted networks.
  • Bind the daemon to a local Unix socket; require mutual TLS if remote access is essential.
  • Restrict daemon network access with firewalls, security groups, and NetworkPolicies.
  • Avoid privileged containers and host root bind mounts; run unprivileged with least capabilities.
  • Monitor for unexpected container creation and scan hosts for cryptominer and backdoor activity.

References

Related vulnerabilities

All Infra →