Rapid7 Vulnerability & Exploit Database

Docker Daemon - Unprotected TCP Socket Exploit

Back to Search

Docker Daemon - Unprotected TCP Socket Exploit

Disclosed
07/25/2017
Created
05/30/2018

Description

Utilizing Docker via unprotected tcp socket (2375/tcp, maybe 2376/tcp with tls but without tls-auth), an attacker can create a Docker container with the '/' path mounted with read/write permissions on the host server that is running the Docker container. As the Docker container executes command as uid 0 it is honored by the host operating system allowing the attacker to edit/create files owned by root. This exploit abuses this to creates a cron job in the '/etc/cron.d/' path of the host server. The Docker image should exist on the target system or be a valid image from hub.docker.com.

Author(s)

  • Martin Pizala

Development

Module Options

To display the available options, load the module within the Metasploit console and run the commands 'show options' or 'show advanced':

msf > use exploit/linux/http/docker_daemon_tcp
msf exploit(docker_daemon_tcp) > show targets
    ...targets...
msf exploit(docker_daemon_tcp) > set TARGET < target-id >
msf exploit(docker_daemon_tcp) > show options
    ...show and set options...
msf exploit(docker_daemon_tcp) > exploit

Time is precious, so I don’t want to do something manually that I can automate. Leveraging the Metasploit Framework when automating any task keeps us from having to re-create the wheel as we can use the existing libraries and focus our efforts where it matters.

– Jim O’Gorman | President, Offensive Security

;