Поделиться через


Обзор этапа сборки

Создание образов контейнеров — это третий этап платформы "Безопасная цепочка поставок контейнеров" (CSSC). Хотя некоторые предприятия извлекают базовые образы из внешних источников напрямую, другие могут извлекать базовые образы из внутреннего каталога, не проверяя их подписи и аттестации. Важно убедиться, что базовые образы всегда извлекаются из внутреннего каталога и проверяются перед использованием. После создания образов некоторые предприятия публикуют их без проверки уязвимостей и вредоносных программ, и не могут создавать аттестации, такие как SBOM, которые не могут быть проверены на последующих этапах цепочки поставок. Важно убедиться, что созданные образы контейнеров являются доверенными и совместимыми с корпоративными политиками.

Платформа microsoft Container Secure Supply Chain (CSSC) определяет потребность в создании образов контейнеров и предоставляет набор рекомендаций и средств для безопасного создания надежных и совместимых образов. В этой статье вы узнаете о целях, рекомендациях и средствах, которые можно использовать на этапе сборки платформы CSSC.

Общие сведения

В настоящее время предприятия используют различные подходы к созданию совместимых образов контейнеров. Перед созданием образов контейнеров внутренние команды должны извлекать базовые образы из внутренних золотых реестров. Однако эти образы не проверяются перед использованием, что не рекомендуется, так как золотые реестры могут быть скомпрометированы, и образы могут стать вредоносными. Предприятия также контролируют источник библиотек и пакетов, которые добавляются в образы контейнеров, чтобы обеспечить качество.

После создания образов контейнеров предприятия создают дополнительные метаданные, чтобы убедиться, что образы контейнеров соответствуют требованиям. Некоторые предприятия используют документ о прованстве SLSA , чтобы узнать, какая фиксация git отвечает за создание образа контейнера и является ли оно воспроизводимым. Другие пользователи используют метки Docker для предоставления имени владельца образа контейнера и ответственного за фиксацию образа. Некоторые предприятия сканируют образ для уязвимостей и вредоносных программ и создают отчеты соответствующим образом.

Этап сборки платформы CSSC рекомендует набор шагов и элементов управления безопасностью, которые должны быть реализованы для создания надежных и совместимых образов контейнеров перед их публикацией.

Корпорация Майкрософт рекомендует использовать следующие методики для безопасного создания совместимых образов контейнеров.

  • Извлеките базовые образы только из внутреннего каталога, чтобы уменьшить область атаки и повысить безопасность.
  • При наличии проверьте подписи и аттестации базовых образов перед их использованием, чтобы убедиться, что они являются надежными и совместимыми.
  • Образы без дистрибутивов содержат только приложения и его зависимости среды выполнения без дополнительных компонентов программного обеспечения или операционной системы. Используйте бессерверные образы в качестве базовых образов, чтобы уменьшить поверхность атаки и повысить безопасность.
  • Примените минимальные привилегии к платформе сборки или службе, чтобы гарантировать, что только авторизованные пользователи могут вносить изменения или изменения, что снижает риск несанкционированного доступа, нарушений данных и других инцидентов безопасности.
  • Сканируйте образы контейнеров для уязвимостей и вредоносных программ после сборки, чтобы снизить риск возникновения уязвимостей безопасности.
  • Обогатите образы контейнеров после сборки дополнительными метаданными, такими как SBOM и метаданные прованса.
  • Подписывать образы контейнеров и соответствующие метаданные после сборки с корпоративными ключами, чтобы обеспечить целостность и предоставить доверенный меток утверждения для внутреннего использования.
  • Своевременное исправление образов контейнеров для решения известных уязвимостей.
  • Следите за актуальностью зависимостей, чтобы следить за уязвимостями и исправлениями безопасности.

Рабочий процесс для создания совместимых образов контейнеров

Этап сборки имеет рабочий процесс для создания образа контейнера, совместимого с организациями и политиками безопасности. Важно применить управление доступом на уровне привилегий к платформе сборки или службе только для авторизованных пользователей. Если базовые образы доступны в каталоге, рабочий процесс сборки выполняет следующие действия:

  1. Извлеките базовые образы только из внутреннего каталога.
  2. Проверьте базовые образы перед его использованием, чтобы убедиться, что он является надежным и совместимым.
  3. Добавьте дополнительные платформы, код приложения и (или) конфигурации из источника доверия на основе базовых образов для сборки.
  4. Создайте SBOM во время процесса сборки.
  5. Проверьте полученный образ контейнера на наличие известных уязвимостей и вредоносных программ после сборки, чтобы предотвратить внедрение ошибок безопасности.
  6. Исправление полученного образа контейнера для устранения известных уязвимостей и вредоносных программ
  7. Присоединяйте отчеты об уязвимостях и вредоносных программах в качестве аттестаций изображений для использования на последующих этапах цепочки поставок.
  8. Подключите SBOM как аттестации изображений для использования на последующих этапах цепочки поставок.
  9. Обогатите полученный образ дополнительными метаданными, такими как метаданные прованса для использования на последующих этапах цепочки поставок.
  10. Подписывание полученного образа и соответствующих метаданных с помощью корпоративных ключей для обеспечения целостности и предоставления доверенной метки утверждения на этапе развертывания

Цели безопасности на этапе сборки

Наличие четко определенного рабочего процесса для создания надежных и совместимых образов контейнеров помогает предприятиям повысить безопасность и уменьшить область атак в цепочке поставок для контейнеров. Этап сборки платформы CSSC предназначен для удовлетворения следующих целей безопасности.

Сокращение атак из-за неправильного управления доступом

Внутренние пользователи могут вносить непредвиденные изменения или неправильные конфигурации в инфраструктуре сборки. Этап сборки в платформе CSSC устраняет этот риск путем применения минимального контроля доступа к привилегиям по умолчанию, чтобы владельцы ресурсов могли гарантировать, что правильный пользователь имеет правильные разрешения на внесение изменений и конфигураций, что снижает область атаки.

Уменьшение числа атак от вредоносных внутренних пользователей

Кражу удостоверений можно использовать для доступа к платформе сборки, изменения двоичных файлов и внедрения незаконных изменений, которые невидимы для исходного разработчика и пользователей. Существует также риск внедрения уязвимого кода или неправильной настройки внутренними пользователями. Этап сборки в платформе CSSC устраняет этот риск, применяя управление доступом на основе ролей Azure (Azure RBAC) и применяя проверку кода из различных владелец кода.

Уменьшение области атак из-за внешних зависимостей

Базовые образы из внешних источников могут быть вредоносными. Внешние реестры могут быть скомпрометированы. Этап сборки в платформе CSSC устраняет этот риск, используя базовые образы только из каталога и проверяя их сигнатуры, отчеты об уязвимостях и вредоносных программах, а также другие метаданные образа перед их использованием.

Вредоносные пакеты программного обеспечения с открытым исходным кодом (OSS) со скрытыми внутренними кодами могут привести к тому, что двоичные файлы пакета не соответствуют исходному коду. Срок действия зависимостей или компонентов с открытым исходным кодом может истекть, блокируя последние исправления безопасности из вышестоящий. Этап сборки в платформе CSSC устраняет этот риск с помощью утвержденных библиотек, сканирования уязвимостей и вредоносных программ на регулярной основе и поддержания актуальности библиотек.

Уменьшение области атак из-за скомпрометированных сборок

Уязвимые агенты сборки могут внедрять двоичные файлы или вредоносные коды, которые могут вызвать атаки, такие как атака SolarWinds. Этап сборки в платформе CSSC устраняет этот риск, исправляя агенты сборки регулярно.

Обеспечение минимального качества изображения

На этапе сборки платформы CSSC предприятия могут настроить необходимые шаги для сканирования уязвимостей и вредоносных программ после сборки и создания отчетов. Предприятия также могут обогатить образы после сборки с дополнительными метаданными, включая SBOMs, метаданные прованса и другие внутренние метаданные, соответствующие их политикам. Они также могут подписывать артефакты корпоративными ключами, чтобы обеспечить целостность и предоставить доверенный меток утверждения на этапе развертывания.

Корпорация Майкрософт предлагает набор средств и служб, которые могут помочь предприятиям реализовать рекомендуемые шаги в рабочем процессе этапа сборки и решить указанные выше цели безопасности.

Средства для обновления после сборки

Dependabot — это средство для автоматизации обновлений зависимостей с помощью запросов на вытягивание. Дополнительные сведения и дальнейшие действия см. в этом руководстве.

Copa — это проект, поддерживаемый корпорацией Майкрософт с открытым исходным кодом, устраняет уязвимости пакетов ОС Linux в образах контейнеров на основе результатов сканирования уязвимостей. Дополнительные сведения и дальнейшие действия см. в этом руководстве.

Средства и службы для непрерывного сканирования уязвимостей и исправлений изображений

Microsoft Defender для облака — это облачное решение для улучшения, мониторинга и поддержания безопасности контейнерных рабочих нагрузок. Microsoft Defender для облака предлагает средства оценки уязвимостей и управления изображениями, хранящимися в Реестр контейнеров Azure.

Copa — это проект, поддерживаемый корпорацией Майкрософт с открытым исходным кодом, устраняет уязвимости пакетов ОС Linux в образах контейнеров на основе результатов сканирования уязвимостей. Дополнительные сведения и дальнейшие действия см. в этом руководстве.

Средства и службы для обогащения внешних образов с помощью корпоративных метаданных

ORAS — это проект CNCF, поддерживаемый корпорацией Майкрософт, который предлагает интерфейс командной строки с открытым исходным кодом и библиотеки для взаимодействия с реестрами OCI. ORAS можно использовать для добавления заметок и присоединения метаданных к образу контейнера. ORAS можно использовать для добавления SBOM, метаданных прованса и других метаданных для обогащения образов для последующих этапов в цепочке поставок.

Средство SBOM Корпорации Майкрософт — это средство с открытым исходным кодом, высокомасштабируемое и корпоративное средство для создания совместимых SBOM spDX 2.2 для любых различных артефактов. Средство SBOM можно использовать для создания подробных SBOM-образов для образов контейнеров.

Нотарий проект — это проект CNCF, поддерживаемый корпорацией Майкрософт, который разрабатывает спецификации и средства для подписывания и проверки артефактов программного обеспечения. Инструмент нотарии Project notation можно использовать для подписи образов контейнеров и других облачных артефактов с корпоративными ключами.

Azure Key Vault — это облачная служба, которая обеспечивает безопасное и централизованное расположение для хранения криптографических ключей, секретов и сертификатов. AKV можно использовать для хранения и управления корпоративными ключами безопасно и надежно.

Следующие шаги

Общие сведения о этапе развертывания для безопасного развертывания образов контейнеров.