Исследование экспертов по ИБ из Рейнско-Вестфальского технического университета Ахена (RWTH Aachen University) показало, что десятки тысяч образов контейнеров на Docker Hub содержат в открытом виде токены аутентификации API и корпоративные приватные ключи шифрования.
Docker Hub — это облачный репозиторий, позволяющий хранить, публиковать и распространять образы. Шаблоны для создания контейнеров включают в себя весь необходимый программный код, среду выполнения, библиотеки, переменные среды и файлы конфигурации для простого развёртывания приложения в Docker.
Немецкие исследователи проанализировали 337 171 образов из Docker Hub и тысяч частных реестров и обнаружили, что примерно 8,5% из них содержат конфиденциальные данные, такие как приватные ключи и токены API.
В рамках исследования был собран массивный набор данных из 1 647 300 слоёв из 337 171 образа Docker. По возможности извлекалась последняя версия образа из каждого доступного репозитория.
Анализ данных по этой выгрузке образов с использованием регулярных выражений для поиска определённых токенов и секретов выявил раскрытие 52 107 действительных приватных ключей и 3158 различных токенов API в 28 621 образе Docker.
Большинство раскрытых секретов, 95% для приватных ключей и 90% для токенов API, находились в однопользовательских образах, что указывает на то, что они, вероятно, попали туда непреднамеренно.
Доля раскрытия секретов на Docker Hub составила 9,0%, в то время как только 6,3% образов из частных репозиториев содержали секреты в открытом виде. Исследователи пояснили, что это различие может указывать на то, что пользователи Docker Hub обычно хуже понимают безопасность контейнеров, чем те разработчики, кто создаёт и настраивает частные репозитории.
В ходе исследования было обнаружено 22 082 скомпрометированных сертификата безопасности, в том числе 7 546 частных сертификатов, подписанных центром сертификации (CA), и 1060 открытых сертификатов, подписанных CA и которые используются большим количеством пользователей. Например, в течение последних 15 месяцев 275 269 хостов использовали скомпрометированные ключи и сертификаты. На момент исследования 141 сертификат, подписанный CA, всё ещё был действителен.
Эксперты пояснили, что исследование раскрыло серьёзную проблему безопасности контейнеров на Docker Hub и небрежное отношение разработчиков к созданию образов без предварительного очищения их от секретов и токенов.
Что касается утечки токенов API, то большинство контейнеров (2920 шт.) принадлежат облачным провайдерам, таким как Amazon AWS, но некоторые относятся к финансовым сервисам, таким как Stripe. Исследователи сослались на этические ограничения при проверке раскрытых токенов API и не стали далее изучать возможность их использования.
Источник новости: habr.com