Разработчики любят Helm за простоту, хакеры — за открытые порты.
Упрощённое развёртывание приложений в Kubernetes с помощью Helm может обернуться серьёзными уязвимостями, если не обратить внимание на настройки по умолчанию. Команда Microsoft Defender for Cloud Research сообщила в недавнем отчёте , что использование стандартных Helm-чартов без модификаций может привести к прямой утечке чувствительных данных и открытию кластеров для атак из интернета.
Helm-чарты позволяют быстро разворачивать сервисы в Kubernetes, предоставляя набор YAML-манифестов, описывающих ресурсы и параметры для запуска приложений. Однако, как подчёркивают специалисты, в стремлении к скорости и простоте многие разработчики и администраторы, особенно без достаточного опыта в облачной безопасности, используют чарты «как есть», не вникая в их содержание. Это приводит к тому, что сервисы остаются без аутентификации, с открытыми портами и слабыми или жёстко заданными паролями, легко поддающимися взлому.
В отчёте приведены три примера небезопасных конфигураций, встречающихся в популярных Helm-чартах. В случае с Apache Pinot открываются ключевые компоненты pinot-controller и pinot-broker через LoadBalancer без какой-либо защиты. В Helm-чарте Meshery допускается регистрация пользователей через публичный IP, что предоставляет возможность получить доступ к управлению кластером. А в одной из сборок Selenium Grid сервис открывается через NodePort на всех узлах, при этом единственной линией обороны остаётся внешняя сетевая фильтрация. Хотя официальная версия чарта защищена, множество сторонних проектов на GitHub унаследовали проблемную конфигурацию.
Что касается Selenium Grid, ранее сообщалось о случаях, когда злоумышленники с помощью неправильных настроек запускали XMRig-майнеры и добывали Monero, используя вычислительные ресурсы атакованных кластеров. Проблема оказалась настолько масштабной, что привлекла внимание сразу нескольких компаний, специализирующихся на защите инфраструктуры.
Для снижения рисков Microsoft советует в обязательном порядке анализировать содержимое чарта до установки, обращая внимание на наличие аутентификации и изоляции по сети. Кроме того, рекомендуется регулярно сканировать систему на предмет некорректных настроек, открывающих доступ из интернета, и вести постоянное наблюдение за поведением контейнеров, чтобы вовремя отреагировать на аномалии.