CVE-2023-0629

7.1 HIGH

📋 TL;DR

This vulnerability allows unprivileged users on Docker Desktop to bypass Enhanced Container Isolation (ECI) restrictions by connecting to Docker's raw socket or named pipe. This affects Docker Business customers running Docker Desktop versions 4.13.0 through 4.16.0, enabling them to launch containers without ECI's additional security hardening.

💻 Affected Systems

Products:
  • Docker Desktop
Versions: from 4.13.0 before 4.17.0
Operating Systems: Windows, Linux, macOS
Default Config Vulnerable: ✅ No
Notes: Only affects Docker Business customers with Enhanced Container Isolation enabled. Requires users without local root/administrator privileges.

📦 What is this software?

⚠️ Risk & Real-World Impact

🔴

Worst Case

An unprivileged user could launch containers without Enhanced Container Isolation protections, potentially escaping container boundaries and compromising the host system.

🟠

Likely Case

Users with local access but without administrative privileges could bypass container security controls, reducing the effectiveness of Docker's security features for Business customers.

🟢

If Mitigated

With proper access controls and monitoring, the impact is limited to potential container security bypass without host compromise.

🌐 Internet-Facing: LOW - This requires local access to the Docker Desktop installation.
🏢 Internal Only: MEDIUM - Internal users with Docker Desktop access could bypass security controls, but requires specific Docker Business configuration.

🎯 Exploit Status

Public PoC: ✅ No
Weaponized: UNKNOWN
Unauthenticated Exploit: ✅ No
Complexity: LOW

Exploitation requires local user access and knowledge of Docker CLI commands. No authentication bypass needed beyond local user access.

🛠️ Fix & Mitigation

✅ Official Fix

Patch Version: 4.17.0

Vendor Advisory: https://docs.docker.com/desktop/release-notes/#4170

Restart Required: Yes

Instructions:

1. Open Docker Desktop. 2. Navigate to Settings > Software Updates. 3. Check for updates and install version 4.17.0 or later. 4. Restart Docker Desktop after installation.

🔧 Temporary Workarounds

Restrict Docker socket access

linux

Limit access to Docker's raw socket and named pipe to prevent unauthorized connections

chmod 660 /var/run/docker.sock
chown root:docker /var/run/docker.sock

Monitor Docker host connections

linux

Monitor for unauthorized connections to Docker's raw socket or named pipe

auditctl -w /var/run/docker.sock -p rwxa -k docker_socket

🧯 If You Can't Patch

  • Implement strict access controls to limit who can run Docker commands on affected systems
  • Monitor for unusual Docker CLI usage patterns, particularly connections to docker.raw.sock or named pipes

🔍 How to Verify

Check if Vulnerable:

Check Docker Desktop version: if version is between 4.13.0 and 4.16.0 inclusive, and Enhanced Container Isolation is enabled, the system is vulnerable.

Check Version:

docker version --format '{{.Client.Version}}'

Verify Fix Applied:

Verify Docker Desktop version is 4.17.0 or later using the version check command.

📡 Detection & Monitoring

Log Indicators:

  • Docker CLI connections to docker.raw.sock or named pipes
  • Containers launched with -H flag pointing to raw socket

Network Indicators:

  • Local connections to Docker socket or named pipe from non-privileged users

SIEM Query:

process_name="docker" AND command_line="*docker.raw.sock*" OR command_line="*npipe:////.pipe/docker_engine_linux*"

🔗 References

📤 Share & Export