Аудит безопасности Kubernetes стал доступен в формате с открытым исходным кодом. В рамках проекта была проведена проверка безопасности Kubernetes, а вместе с обзором безопасности была создана модель угроз.
Это последний и самый крупный аудит безопасности, проведенный от имени Cloud Native Computing Foundation (CNCF). В прошлом году он проверил CoreDNS, Envoy и Prometheus, обнародовал результаты аудита и с тех пор видел, как основные специалисты по сопровождению трех проектов устраняют выявленные уязвимости.
Аудит был проведен рабочей группой по аудиту безопасности третьих лиц CNCF, Trail of Bits и Atredis Partners, и был изучен ряд компонентов Kubernetes в шести контрольных семействах:
Сети
Криптография
Аутентификация
Авторизация
Секреты управления
Мульти аренды
CNCF сообщает, что, поскольку Kubernetes сам по себе является большой системой с функциональностью, охватывающей от шлюзов API до оркестровки контейнеров, сети и т. Д., Этот аудит был сосредоточен на восьми компонентах в более крупной экосистеме Kubernetes для оценки в модели угроз:
Кубе-аписервер
И т. Д.
Кубе-планировщик
Кубе-контроллер-менеджер
Облако-контроллер-менеджер
Кубелет
Кубе-прокси
Время выполнения контейнера
Некоторые из основных выводов отчета (который можно загрузить с GitHub) заключаются в том, что политики безопасности могут не применяться, что приводит к ложному чувству безопасности у пользователей. По умолчанию используется небезопасный TLS, а учетные данные отображаются в переменных среды и аргументах командной строки.
К другим проблемам относятся утечка в журналах имен секретов; нет отзыва сертификатов и то, что seccomp по умолчанию не включен. Из обнаруженных уязвимостей безопасности половина наиболее серьезных уже обновлена в последней версии Kubernetes.
На данный момент (и до тех пор, пока проблемы, выявленные в ходе аудита, не будут исправлены), рекомендуется, чтобы администраторы кластера использовали элементы управления доступом на основе атрибутов, а не полагались на элементы управления доступом на основе ролей. Если необходимы средства управления доступом на основе ролей (RBAC), администраторы должны убедиться, что они следуют лучшим практикам RBAC.
Разработчикам Kubernetes рекомендуется избегать жесткого кодирования путей к зависимостям и выполнять проверку прав доступа к файлам. Процессы в Linux следует контролировать, а процессы следует перемещать в контрольную группу.
Отчет представляет интерес для всех, кто думает о защите систем, как и прилагаемый к нему 50-страничный документ с моделью угроз.