19.4% из 1000 самых популярных контейнеров Docker содержат пустой пароль root

Джерри Гамблин (Jerry Gamblin) решил выяснить насколько распространена недавно выявленная проблема в Docker-образах дистрибутива Alpine, связанная с указанием пустого пароля для пользователя root. Анализ тысячи самых популярных контейнеров из каталога Docker Hub показал, что в 194 из них (19.4%) для root установлен пустой пароль без блокировки учётной записи («root:::0:::::» вместо «root:!::0:::::»).

В случае применения в контейнере пакетов shadow и linux-pam использование пустого пароля root позволяет повысить свои привилегии внутри контейнера при наличии непривилегированного доступа к контейнеру или после эксплуатации уязвимости в непривилегированном сервисе, выполняемом в контейнере. Также можно подключиться к контейнеру с правами root при наличии доступа к инфраструктуре, т.е. возможности подключения через терминал к TTY, указанном в списке /etc/securetty. Через SSH вход с пустым паролем блокируется.

Наиболее популярными среди контейнеров с пустым паролем root являются microsoft/azure-cli, kylemanna/openvpn, governmentpaas/s3-resource, phpmyadmin/phpmyadmin, mesosphere/aws-cli и hashicorp/terraform, которые насчитывают более 10 млн загрузок. Также выделяются контейнеры
govuk/gemstash-alpine (500 тыс.), monsantoco/logstash (5 млн),
avhost/docker-matrix-riot (1 млн),
azuresdk/azure-cli-python (5 млн)
и ciscocloud/haproxy-consul (1 млн). Почти все эти контейнеры основаны на Alpine и не используют пакеты shadow и linux-pam. Исключение составляет только microsoft/azure-cli на базе Debian.

Источник: opennet.ru