В runc, инструментарии для запуска изолированных контейнеров, выявлена критическая уязвимость (CVE-2019-5736), позволяющая из подконтрольного злоумышленнику изолированного контейнера изменить исполняемый файл runc и получить root-привилегии на стороне хост-системы. Уязвимость затрагивает все системы контейнерной изоляции, использующие runtime runc, включая Docker, cri-o, containerd, Kubernetes, Podman и flatpak. Также отмечается, что аналогичная уязвимость присутствует в инструментариях LXC и Apache Mesos.
Суть уязвимости в возможности запуска исполняемого файла runc в окружении контейнера, но его обработки в контексте хост-системы. Например, атакующий может заменить /bin/bash в контейнере на скрипт с заголовком "#!/proc/self/exe" или использовать подставную разделяемую библиотеку. При выполнении "docker exec" и запуске runtime-ом подменённого /bin/bash внутри контейнера будет выполнен файл /proc/self/exe, который на данной стадии ссылается на исполняемый файл runtime (runc) в хост-окружении. После этого атакующий может через модификацию /proc/self/exe внутри контейнера внести изменение в исполняемый файл runc на стороне хост-системы.