Четвёртый трек этапа III — для тех, у кого кластер уже работает и пора признать неприятное: по умолчанию он настроен на удобство, а не на безопасность. Под может работать от суперпользователя, читать секреты соседей, ходить куда угодно по сети, обращаться к службе метаданных облака и получить права управления всем кластером — и ни один из этих шагов не требует уязвимости. Трек проходит путь противника целиком и закрывает его на восьми независимых рубежах. Темы совпадают с программой профессионального экзамена по безопасности кластера, но построены как инженерная работа, а не как подготовка к тесту.
Kubernetes (обязательно: поды и контроллеры, сеть, роли и учётные записи, планирование), Zero Trust (модель угроз, наименьшие привилегии, сегментация, аудит), Supply chain (подписи, происхождение, контроль допуска), Секреты (шифрование хранилища состояния, доставка секретов в под), Linux вглубь (пространства имён, возможности ядра, системные вызовы).
Структура трека
Лучшая литература к треку
- Раздел безопасности в документации Kubernetes — первоисточник: модель четырёх слоёв, стандарты запуска подов, контекст безопасности, контроль допуска, аудит.
- Pod Security Standards и Security Context — три уровня запуска и все настройки изоляции по одной.
- CIS Kubernetes Benchmark и kube-bench — перечень безопасных настроек и инструмент проверки кластера по нему.
- Kubernetes Hardening Guidance (NSA/CISA) — сжатое руководство по укреплению с приоритетами.
- Документация Falco — обнаружение отклонений во время работы: правила, шум, реакция.
- Программа экзамена CKS — официальный перечень тем, если нужна сертификация.
Кластер полезен, но не обязателен: манифесты проверяются локально через kubectl --dry-run=client, а логика рубежей — моделями на Python (цепочка проверок сервера API, повышение полномочий через права, семантика сетевых политик, цепочка допуска, правила по записям аудита). Часть лаб про возможности ядра и фильтрацию системных вызовов выполняется в Docker и показывает разницу наглядно. Главная привычка трека: к любой настройке задавать вопрос «что сможет противник, получив выполнение кода вот в этом контейнере?» — и проверять ответ учением, а не списком настроек.