Ответ вслух Senior Безопасность контейнеров обновлено

Цепочка поставки образов

Вопрос

Как убедиться, что в прод попадает именно тот образ, который собрал ваш CI, без подмены и известных уязвимостей?

Попробуйте сами

Ответьте вслух за 2 минуты, как на собесе. Потом сверьтесь с тезисами: что прозвучало, а что нет.

Показать ответ и разбор

Коротко

Начинаю с входа: базовые образы берём из доверенных источников и закрепляем по digest, а тянем через свой реестр или прокси-кеш, чтобы не зависеть от внешних изменений и лимитов. Сборка только в CI, воспроизводимая, с закреплёнными версиями зависимостей; пушить в продовый реестр с ноутбуков нельзя.

Что должно прозвучать в ответе

  • Базовые образы из доверенных источников, закреплённые по digest, свой реестр или прокси-кеш

  • Воспроизводимая сборка в CI, без ручных `docker push` с ноутбуков

  • Скан на CVE и проверка лицензий, SBOM для каждого образа

  • Подпись образа (cosign/Sigstore) и проверка подписи при деплое политикой (admission controller)

  • Деплой по digest, а не по изменяемому тегу

  • Регулярная пересборка и пересканирование уже выпущенных образов

Что могут спросить следом

  • Что такое SBOM и зачем он?
  • Как запретить в кластере неподписанные образы?

Разбор

Начинаю с входа: базовые образы берём из доверенных источников и закрепляем по digest, а тянем через свой реестр или прокси-кеш, чтобы не зависеть от внешних изменений и лимитов. Сборка только в CI, воспроизводимая, с закреплёнными версиями зависимостей; пушить в продовый реестр с ноутбуков нельзя. После сборки сканер уязвимостей и генерация SBOM, это список всех пакетов внутри, чтобы при новой громкой CVE за минуты понять, какие образы затронуты. Затем образ подписывается, например cosign с ключом CI или keyless через Sigstore. В кластере admission-политика (Kyverno, Gatekeeper или встроенная проверка подписи у платформы) пропускает только подписанные нашим CI образы из нашего реестра. Деплоим по digest, чтобы тег нельзя было подменить. И регулярно пересобираем и пересканируем выпущенные образы: уязвимость могут найти в том, что вчера было чистым.

Ответьте сами, а не прочитайте

В тренажёре вопрос попадёт в повторения и вернётся, когда начнёт забываться. Плюс билеты с зачётом: 20 вопросов, не больше 2 ошибок.