Site categories All
#docker
Встановлення Docker в моєму варіанті дещо ускладнено.
Я не хочу використовувати дефолтовий firewalld і iptables.
Наразі firewalld не підтримує збереження правил nftables, які вносяться через nft, тому при рестарті все вилітає. 
А сам він не підтримує SNAT.
Плюс мені не подобається ідея ввімкнення маскарадінгу для всіх. Я хочу старий добрий Source NAT.
І завжди краще знати що відбувається під капотом та як працює, щоб не виникало сумних історій під час дебага.
Тому тут буде більше про nftables і як вимкнути в докері дефолтовий фаєрвол.
В 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 на стороне хост-системы.