Skip to content
OpenAdvisories
Unscored Public exploit CVE-2019-5736 EUVD-2019-15309GHSA-gxmr-w5mj-v8hh

runc through 1.0-rc6, as used in Docker before 18.09.2 and other products, allows attackers to overwrite the host runc binary (and conseque…

Published Feb 11, 2019 · Updated Aug 4, 2024 · Assigned by mitre

Description

runc through 1.0-rc6, as used in Docker before 18.09.2 and other products, allows attackers to overwrite the host runc binary (and consequently obtain host root access) by leveraging the ability to execute a command as root within one of these types of containers: (1) a new container with an attacker-controlled image, or (2) an existing container, to which the attacker previously had write access, that can be attached with docker exec. This occurs because of file-descriptor mishandling, related to /proc/self/exe.

Fixed in Linux distributions

Distributions backport fixes, so the version that fixes this vulnerability differs per release — upgrade to at least the version shown. From the distributions' security trackers and advisories.

ReleasePackageFixed inAdvisory
Debian 14 lxc 1:3.1.0+really3.0.3-4 —
Debian 14 runc 1.0.0~rc6+dfsg1-2 —
Debian 13 lxc 1:3.1.0+really3.0.3-4 —
Debian 13 runc 1.0.0~rc6+dfsg1-2 —
Debian 12 lxc 1:3.1.0+really3.0.3-4 —
Debian 12 runc 1.0.0~rc6+dfsg1-2 —
ReleasePackageFixed inAdvisory
Ubuntu 18.04 LTS docker.io 18.06.1-0ubuntu1.2~18.04.1 USN-4048-1
Ubuntu 18.04 LTS runc 1.0.0~rc4+dfsg1-6ubuntu0.18.04.1 —
Ubuntu 16.04 LTS docker.io 18.06.1-0ubuntu1.2~16.04.1 USN-4048-1
Ubuntu 16.04 LTS runc 1.0.0~rc2+docker1.13.1-0ubuntu1~16.04.1 —
ReleasePackageFixed inAdvisory
RHEL 8 buildah 1.5-3.gite94b4f9.module+el8.0.0+2958+4e823551 RHSA-2019:0975
RHEL 8 container-selinux 2:2.94-1.git1e99f1d.module+el8.0.0+2958+4e823551 RHSA-2019:0975
RHEL 8 containernetworking-plugins 0.7.4-3.git9ebe139.module+el8.0.0+2958+4e823551 RHSA-2019:0975
RHEL 8 fuse-overlayfs 0.3-2.module+el8.0.0+2958+4e823551 RHSA-2019:0975
RHEL 8 oci-systemd-hook 1:0.1.15-2.git2d0b8a3.module+el8.0.0+2958+4e823551 RHSA-2019:0975
RHEL 8 oci-umount 2:2.3.4-2.git87f9237.module+el8.0.0+2958+4e823551 RHSA-2019:0975
RHEL 8 podman +1 1.0.0-2.git921f98f.module+el8.0.0+2958+4e823551 RHSA-2019:0975
RHEL 8 runc 1.0.0-55.rc5.dev.git2abd837.module+el8.0.0+3049+59fd2bba RHSA-2019:0975
RHEL 8 skopeo +1 1:0.1.32-3.git1715c90.module+el8.0.0+2958+4e823551 RHSA-2019:0975
RHEL 8 slirp4netns 0.1-2.dev.gitc4e1bc5.module+el8.0.0+2958+4e823551 RHSA-2019:0975
Show 2 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Red Hat Rhel Extras Other 7 docker +7 2:1.13.1-91.git07f3374.el7 RHSA-2019:0304
Red Hat Rhel Extras Other 7 runc 1.0.0-59.dev.git2abd837.el7 RHSA-2019:0303
Red Hat OpenShift 3 docker +8 2:1.12.6-79.git5680db5.el7 RHSA-2019:0408

AlmaLinux

Errata ↗
ReleasePackageFixed inAdvisory
AlmaLinux 8 oci-systemd-hook 1:0.1.15-2.git2d0b8a3.module_el8.3.0+2044+12421f43 ALSA-2019:0975
AlmaLinux 8 oci-umount 2:2.3.4-2.git87f9237.module_el8.3.0+2044+12421f43 ALSA-2019:0975

Rocky Linux

Errata ↗
ReleasePackageFixed inAdvisory
Rocky Linux 8 oci-systemd-hook 1:0.1.15-2.git2d0b8a3.module+el8.4.0+557+48ba8b2f RLSA-2019:0975
Rocky Linux 8 oci-umount 2:2.3.4-2.git87f9237.module+el8.4.0+557+48ba8b2f RLSA-2019:0975
ReleasePackageFixed inAdvisory
SLES 15 SP1 containerd 1.2.5-5.13.1 SUSE-SU-2019:2117-1, SUSE-SU-2019:1234-2
SLES 15 SP1 docker 18.09.6_ce-6.17.1 SUSE-SU-2019:2117-1, SUSE-SU-2019:1234-2
SLES 15 SP1 docker-runc 1.0.0rc6+gitr3804_2b18fe1d885e-6.18.1 SUSE-SU-2019:2117-1, SUSE-SU-2019:1234-2
SLES 15 SP1 golang-github-docker-libnetwork 0.7.0.1+gitr2726_872f0a83c98a-4.12.1 SUSE-SU-2019:2117-1, SUSE-SU-2019:1234-2
SLES 15 containerd 1.2.2-5.9.1 SUSE-SU-2019:2117-1, SUSE-SU-2019:1234-1, SUSE-SU-2019:0495-1
SLES 15 docker 18.09.1_ce-6.14.1 SUSE-SU-2019:2117-1, SUSE-SU-2019:1234-1, SUSE-SU-2019:0495-1
SLES 15 docker-runc 1.0.0rc5+gitr3562_69663f0bd4b6-6.9.1 SUSE-SU-2019:2117-1, SUSE-SU-2019:1234-1, SUSE-SU-2019:0495-1
SLES 15 golang-github-docker-libnetwork 0.7.0.1+gitr2711_2cfbf9b1f981-4.9.1 SUSE-SU-2019:2117-1, SUSE-SU-2019:1234-1, SUSE-SU-2019:0495-1
SLES 12 containerd 1.2.2-16.14.2 SUSE-SU-2021:1458-1, SUSE-SU-2019:2119-1, SUSE-SU-2019:0573-1
SLES 12 docker 18.09.1_ce-98.34.2 SUSE-SU-2021:1458-1, SUSE-SU-2019:2119-1, SUSE-SU-2019:0573-1
SLES 12 docker-runc 1.0.0rc5+gitr3562_69663f0bd4b6-1.9.1 SUSE-SU-2019:2119-1, SUSE-SU-2019:0573-1, SUSE-SU-2019:0385-1
SLES 12 golang-github-docker-libnetwork 0.7.0.1+gitr2711_2cfbf9b1f981-16.2 SUSE-SU-2019:2119-1, SUSE-SU-2019:0573-1
SLES 12 runc 1.0.0~rc93-16.8.1 SUSE-SU-2021:1458-1
Show 3 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
SUSE Package Hub 15 SP1 lxc 3.2.1-bp151.5.3.1 openSUSE-SU-2019:2286-1
SUSE Package Hub 15 go 1.12-bp150.2.6.1 openSUSE-SU-2019:1506-1
SUSE Package Hub 15 lxc 3.1.0-bp150.5.3.1 openSUSE-SU-2019:1227-1
SUSE Package Hub 15 lxcfs 3.0.3-bp150.3.3.1 openSUSE-SU-2019:1227-1
SUSE Package Hub 15 runc 1.0.0~rc6-bp150.2.3.1 openSUSE-SU-2019:0170-1
SUSE OpenStack Cloud 6 containerd 1.2.2-16.14.2 SUSE-SU-2019:2119-1, SUSE-SU-2019:0573-1
SUSE OpenStack Cloud 6 docker 18.09.1_ce-98.34.2 SUSE-SU-2019:2119-1, SUSE-SU-2019:0573-1
SUSE OpenStack Cloud 6 docker-runc 1.0.0rc5+gitr3562_69663f0bd4b6-1.9.1 SUSE-SU-2019:2119-1, SUSE-SU-2019:0573-1, SUSE-SU-2019:0385-1
SUSE OpenStack Cloud 6 golang-github-docker-libnetwork 0.7.0.1+gitr2711_2cfbf9b1f981-16.2 SUSE-SU-2019:2119-1, SUSE-SU-2019:0573-1
ReleasePackageFixed inAdvisory
openSUSE Tumbleweed containerd 1.4.8-2.2 openSUSE-SU-2024:10693-1
openSUSE Tumbleweed flatpak 1.11.3-1.2 openSUSE-SU-2024:10762-1
openSUSE Tumbleweed lxc 4.0.9-1.1 openSUSE-SU-2024:11030-1
openSUSE Tumbleweed runc 1.0.2-1.2 openSUSE-SU-2024:11358-1
openSUSE Leap 15.1 containerd 1.2.5-lp151.2.3.1 openSUSE-SU-2019:2021-1, openSUSE-SU-2019:1444-1
openSUSE Leap 15.1 docker 18.09.6_ce-lp151.2.3.1 openSUSE-SU-2019:2021-1, openSUSE-SU-2019:1444-1
openSUSE Leap 15.1 docker-runc 1.0.0rc6+gitr3804_2b18fe1d885e-lp151.3.3.1 openSUSE-SU-2019:2021-1, openSUSE-SU-2019:1444-1
openSUSE Leap 15.1 go 1.12-lp151.2.3.1 openSUSE-SU-2019:1444-1
openSUSE Leap 15.1 go1.11 1.11.9-lp151.2.3.1 openSUSE-SU-2019:1444-1
openSUSE Leap 15.1 go1.12 1.12.4-lp151.2.3.1 openSUSE-SU-2019:1444-1
openSUSE Leap 15.1 golang-github-docker-libnetwork 0.7.0.1+gitr2726_872f0a83c98a-lp151.2.3.1 openSUSE-SU-2019:2021-1, openSUSE-SU-2019:1444-1
openSUSE Leap 15.1 lxc 3.2.1-lp151.4.5.1 openSUSE-SU-2019:2245-1
openSUSE Leap 15.0 containerd 1.2.5-lp150.4.14.3 openSUSE-SU-2019:2021-1, openSUSE-SU-2019:1499-1
openSUSE Leap 15.0 docker 18.09.6_ce-lp150.5.17.2 openSUSE-SU-2019:2021-1, openSUSE-SU-2019:1499-1
openSUSE Leap 15.0 docker-runc 1.0.0rc6+gitr3804_2b18fe1d885e-lp150.5.21.2 openSUSE-SU-2019:2021-1, openSUSE-SU-2019:1499-1
openSUSE Leap 15.0 go 1.12-lp150.2.11.1 openSUSE-SU-2019:1499-1
openSUSE Leap 15.0 go1.11 1.11.9-lp150.9.3 openSUSE-SU-2019:1499-1
openSUSE Leap 15.0 go1.12 1.12.4-lp150.2.2 openSUSE-SU-2019:1499-1
openSUSE Leap 15.0 golang-github-docker-libnetwork 0.7.0.1+gitr2726_872f0a83c98a-lp150.3.14.1 openSUSE-SU-2019:2021-1, openSUSE-SU-2019:1499-1
openSUSE Leap 15.0 lxc 3.1.0-lp150.2.10.1 openSUSE-SU-2019:1275-1
openSUSE Leap 15.0 lxcfs 3.0.3-lp150.2.3.1 openSUSE-SU-2019:1275-1
ReleasePackageFixed inAdvisory
Alpine v3.24 lxc 3.1.0-r1 —
Alpine v3.24 runc 1.0.0_rc7-r0 —
Alpine v3.23 lxc 3.1.0-r1 —
Alpine v3.23 runc 1.0.0_rc7-r0 —
Alpine v3.22 lxc 3.1.0-r1 —
Alpine v3.22 runc 1.0.0_rc7-r0 —
Alpine v3.21 lxc 3.1.0-r1 —
Alpine v3.21 runc 1.0.0_rc7-r0 —
Alpine v3.20 lxc 3.1.0-r1 —
Alpine v3.20 runc 1.0.0_rc7-r0 —
Show 11 more (older releases, extended support, other products)
ReleasePackageFixed inAdvisory
Alpine v3.19 lxc 3.1.0-r1 —
Alpine v3.19 runc 1.0.0_rc7-r0 —
Alpine v3.18 lxc 3.1.0-r1 —
Alpine v3.18 runc 1.0.0_rc7-r0 —
Alpine v3.17 lxc 3.1.0-r1 —
Alpine v3.17 runc 1.0.0_rc7-r0 —
Alpine v3.16 lxc 3.1.0-r1 —
Alpine v3.16 runc 1.0.0_rc7-r0 —
Alpine v3.15 lxc 3.1.0-r1 —
Alpine v3.15 runc 1.0.0_rc7-r0 —
Alpine v3.14 lxc 3.1.0-r1 —
Alpine v3.14 runc 1.0.0_rc7-r0 —
Alpine v3.13 lxc 3.1.0-r1 —
Alpine v3.13 runc 1.0.0_rc7-r0 —
Alpine v3.12 lxc 3.1.0-r1 —
Alpine v3.12 runc 1.0.0_rc7-r0 —
Alpine v3.11 lxc 3.1.0-r1 —
Alpine v3.11 runc 1.0.0_rc7 —
Alpine v3.10 lxc 3.1.0-r1 —
Alpine v3.10 runc 1.0.0_rc7-r0 —
Alpine v3.9 flatpak 1.0.7-r0 —
Alpine v3.9 lxc 3.1.0-r1 —
Alpine v3.9 runc 1.0.0_rc6-r1 —

Oracle Linux

ReleasePackageFixed inAdvisory
Oracle Linux 8 buildah 1.5-3.0.1.gite94b4f9.module+el8.0.0+5215+77f672ad ELSA-2019-0975
Oracle Linux 8 container-selinux 2:2.94-1.git1e99f1d.module+el8.0.0+5215+77f672ad ELSA-2019-0975
Oracle Linux 8 containernetworking-plugins 0.7.4-3.git9ebe139.module+el8.0.0+5215+77f672ad ELSA-2019-0975
Oracle Linux 8 fuse-overlayfs 0.3-2.module+el8.0.0+5215+77f672ad ELSA-2019-0975
Oracle Linux 8 oci-systemd-hook 1:0.1.15-2.git2d0b8a3.module+el8.0.0+5215+77f672ad ELSA-2019-0975
Oracle Linux 8 oci-umount 2:2.3.4-2.git87f9237.module+el8.0.0+5215+77f672ad ELSA-2019-0975
Oracle Linux 8 podman +1 1.0.0-2.0.1.git921f98f.module+el8.0.0+5215+77f672ad ELSA-2019-0975
Oracle Linux 8 runc 1.0.0-55.rc5.dev.git2abd837.module+el8.0.0+5215+77f672ad ELSA-2019-0975
Oracle Linux 8 skopeo +1 1:0.1.32-3.0.2.git1715c90.module+el8.0.0+5215+77f672ad ELSA-2019-0975
Oracle Linux 8 slirp4netns 0.1-2.dev.gitc4e1bc5.module+el8.0.0+5215+77f672ad ELSA-2019-0975
Oracle Linux 7 docker-engine 17.06.2.ol-1.0.6.el7 ELSA-2019-4551, ELSA-2019-4550
Oracle Linux 7 runc 1.0.0-19.rc5.git4bb1fe4.0.3.el7 ELSA-2021-9203, ELSA-2019-4540

Public exploits

Exploit or proof-of-concept code for this vulnerability is publicly available, which lowers the bar for attackers. Treat it as a reason to patch sooner.

Third-party code, not reviewed by us. Public PoCs are sometimes fake or contain malware. Read the code first and run it only in an isolated lab, against systems you are authorised to test.

Metasploit 1 module

Exploit-DB 2

GitHub 28 repositories · most starred shown

Sources: PoC-in-GitHub, Metasploit Framework, Exploit-DB — updated daily. Only links are listed; no exploit code is hosted here.

Advisories 34

References