Управление безопасностью: безопасность DevOps
Безопасность DevOps охватывает аспекты управления, относящиеся к технике обеспечения безопасности и соответствующим операциям во всех процедурах DevOps, включая развертывание критически важных проверок безопасности (например, статического тестирования приложений и управления уязвимостями) до этапа развертывания продукта. Сюда также входят такие общие разделы, как моделирование угроз и защита поставки ПО.
DS-1. Проведение моделирования угроз
Идентификаторы CIS Controls v8 | Идентификатор (-ы) NIST SP 800-53 r4 | Идентификаторы PCI-DSS v3.2.1 |
---|---|---|
16.10, 16.14 | SA-15 | 6.5, 12.2 |
Принцип безопасности. Выполните моделирование угроз для выявления потенциальных угроз и перечисления средств управления для устранения рисков. Убедитесь в том, что моделирование угроз отвечает указанным ниже целям.
- Обеспечьте безопасность приложений и служб во время выполнения в рабочей среде.
- Защитите артефакты, базовый конвейер CI/CD и другой инструментарий среды, используемый для сборки, тестирования и развертывания. Моделирование угроз должно включать в себя по крайней мере следующие аспекты:
- Определите требования к безопасности приложения. Обеспечьте надлежащее выполнение этих требований при моделировании угроз.
- Проанализируйте компоненты приложения, подключения к данным, а также их взаимосвязи. Этот анализ также включает в себя восходящие и нисходящие подключения за пределами области приложения.
- Сформируйте список потенциальных угроз и векторов атаки, которые могут быть направлены на компоненты приложения, подключения к данным, а также вышестоящие и подчиненные службы.
- Определите применимые средства безопасности, которые можно использовать для устранения перечисленных угроз, а также бреши в этих средствах (например, уязвимости системы безопасности), которые могут потребовать дополнительных планов действий.
- Составьте список и спроектируйте средства контроля для устранения обнаруженных уязвимостей.
Руководство по Azure. Используйте средства моделирования угроз, такие как средство моделирования угроз Майкрософт, с внедренным шаблоном модели угроз Azure, чтобы управлять процессом моделирования угроз. Используйте модель STRIDE для составления списка как внутренних, так и внешних угроз, а также для определения применимых средств контроля. Процесс моделирования угроз должен включать в себя сценарии угроз в рамках процесса DevOps, такие как злонамеренное внедрение кода через незащищенный репозиторий артефактов с неправильно настроенной политикой управления доступом.
Если использование средства моделирования угроз неприменимо, следует, по крайней мере, использовать процесс моделирования угроз на основе вопросника для выявления угроз.
Результаты моделирования угроз или результаты анализа должны регистрироваться и обновляться при значительных изменениях, влияющих на безопасность, в приложении или в характере угроз.
Реализация Azure и дополнительный контекст:
- Обзор моделирования угроз
- Анализ угроз для приложения (включая метод STRIDE и метод на основе анкеты)
- Шаблон Azure — набор элементов для модели угроз безопасности Майкрософт
Руководство по AWS. Используйте средства моделирования угроз, такие как средство моделирования угроз Майкрософт, с внедренным шаблоном модели угроз Azure, чтобы управлять процессом моделирования угроз. Используйте модель STRIDE для составления списка как внутренних, так и внешних угроз, а также для определения применимых средств контроля. Процесс моделирования угроз должен включать в себя сценарии угроз в рамках процесса DevOps, такие как злонамеренное внедрение кода через незащищенный репозиторий артефактов с неправильно настроенной политикой управления доступом.
Если использование средства моделирования угроз неприменимо, следует, по крайней мере, использовать процесс моделирования угроз на основе вопросника для выявления угроз.
Результаты моделирования угроз или результаты анализа должны регистрироваться и обновляться при значительных изменениях, влияющих на безопасность, в приложении или в характере угроз.
Реализация AWS и дополнительный контекст:
- Microsoft Threat Modeling Tool
- Подход к моделированию угроз для AWS
- Анализ угроз для приложения (включая метод STRIDE и метод на основе анкеты)
Руководство по GCP. Используйте средства моделирования угроз, такие как средство моделирования угроз Майкрософт, с внедренным шаблоном модели угроз Azure, чтобы управлять процессом моделирования угроз. Используйте модель STRIDE для составления списка как внутренних, так и внешних угроз, а также для определения применимых средств контроля. Процесс моделирования угроз должен включать в себя сценарии угроз в рамках процесса DevOps, такие как злонамеренное внедрение кода через незащищенный репозиторий артефактов с неправильно настроенной политикой управления доступом.
Если использование средства моделирования угроз неприменимо, следует, по крайней мере, использовать процесс моделирования угроз на основе вопросника для выявления угроз.
Результаты моделирования угроз или результаты анализа должны регистрироваться и обновляться при значительных изменениях, влияющих на безопасность, в приложении или в характере угроз.
Реализация GCP и дополнительный контекст:
Заинтересованные лица по обеспечению безопасности клиентов (подробнее):
DS-2. Обеспечение безопасности цепочки поставок программного обеспечения
Идентификаторы CIS Controls v8 | Идентификатор (-ы) NIST SP 800-53 r4 | Идентификаторы PCI-DSS v3.2.1 |
---|---|---|
16.4, 16.6, 16.11 | SA-12, SA-15 | 6.3, 6.5 |
Принцип безопасности. Убедитесь, что sdlc (жизненный цикл разработки программного обеспечения) или процесс вашего предприятия включают набор средств управления безопасностью для управления внутренними и сторонними компонентами программного обеспечения (включая собственное программное обеспечение и программное обеспечение с открытым кодом), где у ваших приложений есть зависимости. Определите критерии ограничения, чтобы предотвратить интеграцию уязвимых или вредоносных компонентов и их развертывание в среде.
Средства управления безопасностью цепочки поставок программного обеспечения должны включать, по крайней мере, следующие аспекты:
- Правильно управляйте спецификацией программного обеспечения (SBOM), определяя вышестоящий зависимости, необходимые для разработки, сборки, интеграции и развертывания службы или ресурсов.
- инвентаризация и отслеживание внутренних и сторонних программных компонентов на наличие известных уязвимостей при наличии исправления в вышестоящей системе;
- оценка наличия уязвимостей и вредоносных программ в программных компонентах с помощью статического и динамического тестирования приложений на наличие неизвестных уязвимостей;
- устранение уязвимостей и вредоносных программ с помощью соответствующего подхода. Это может быть локальное или вышестоящее исправление исходного кода, исключение компонентов и (или) применение компенсирующих элементов управления, если прямое устранение невозможно.
Если в рабочей среде используются компоненты сторонних производителей с закрытым исходным кодом, контроль состояния безопасности может быть ограничен. Следует рассмотреть возможность применения дополнительных средств управления, таких как управление доступом, сетевая изоляция и безопасность конечных точек, чтобы снизить влияние вредоносных действий или уязвимостей, связанных с компонентом.
Руководство По Azure. Для платформы GitHub обеспечьте безопасность цепочки поставок программного обеспечения с помощью следующих возможностей или средств из GitHub Advanced Security или собственной функции GitHub. Используйте Граф зависимостей для сканирования, инвентаризации и выявления всех зависимостей проекта и связанных уязвимостей с помощью базы данных рекомендаций.
- Используйте Dependabot, чтобы обеспечить отслеживание уязвимых зависимостей и принятие надлежащих мер, а также автоматическую синхронизацию репозитория с последними выпусками пакетов и приложений, от которых он зависит.
- Используйте возможность сканирования машинного кода GitHub для сканирования исходного кода при внешнем источнике кода.
- Используйте Microsoft Defender для облака, чтобы интегрировать оценку уязвимостей для образа контейнера в рабочий процесс CI/CD. Для Azure DevOps можно использовать сторонние расширения для реализации аналогичных средств управления с целью инвентаризации, анализа и исправления программных компонентов сторонних разработчиков и их уязвимостей.
Реализация Azure и дополнительный контекст:
- Граф зависимостей GitHub
- GitHub Dependabot
- Обнаружение уязвимых образов контейнеров в рабочих процессах CI/CD
- Azure DevOps Marketplace — безопасность цепочки поставки
Руководство по AWS. Если вы используете платформы AWS CI/CD, такие как CodeCommit или CodePipeline, обеспечьте безопасность цепочки поставок программного обеспечения с помощью CodeGuru Reviewer для сканирования исходного кода (для Java и Python) с помощью рабочих процессов CI/CD. Такие платформы, как CodeCommit и CodePipeline, также поддерживают сторонние расширения для реализации аналогичных элементов управления инвентаризацией, анализа и устранения сторонних программных компонентов и их уязвимостей.
Если вы управляете исходным кодом с помощью платформы GitHub, обеспечьте безопасность цепочки поставок программного обеспечения с помощью следующих возможностей или средств из GitHub Advanced Security или собственной функции GitHub:
- Используйте граф зависимостей для сканирования, инвентаризации и выявления всех зависимостей проекта и связанных уязвимостей посредством базы данных рекомендаций.
- Используйте Dependabot, чтобы обеспечить отслеживание уязвимых зависимостей и принятие надлежащих мер, а также автоматическую синхронизацию репозитория с последними выпусками пакетов и приложений, от которых он зависит.
- Используйте возможность сканирования машинного кода GitHub для сканирования исходного кода при внешнем источнике кода.
- Если применимо, используйте Microsoft Defender для облака, чтобы интегрировать оценку уязвимостей для образа контейнера в рабочий процесс CI/CD.
Реализация AWS и дополнительный контекст:
Руководство GCP. Используйте программу Software Delivery Shield для выполнения комплексного анализа безопасности цепочки поставок программного обеспечения. Сюда входит служба гарантированного программного обеспечения с открытым кодом для доступа и включения пакетов OSS, которые были проверены и протестированы Google, а также проверенные пакеты Java и Python, созданные с помощью безопасных конвейеров Google. Эти пакеты регулярно проверяются, анализируются и тестируются на наличие уязвимостей. Такие возможности можно интегрировать в Google Cloud Build, Cloud Deploy, Artifact Registry, Artifact Analysis в рамках рабочих процессов CI/CD.
Если вы управляете исходным кодом с помощью платформы GitHub, обеспечьте безопасность цепочки поставок программного обеспечения с помощью следующих возможностей или средств из GitHub Advanced Security или собственной функции GitHub:
- Используйте граф зависимостей для сканирования, инвентаризации и выявления всех зависимостей проекта и связанных уязвимостей посредством базы данных рекомендаций.
- Используйте Dependabot, чтобы обеспечить отслеживание уязвимых зависимостей и принятие надлежащих мер, а также автоматическую синхронизацию репозитория с последними выпусками пакетов и приложений, от которых он зависит.
- Используйте возможность сканирования машинного кода GitHub для сканирования исходного кода при внешнем источнике кода.
- Если применимо, используйте Microsoft Defender для облака, чтобы интегрировать оценку уязвимостей для образа контейнера в рабочий процесс CI/CD.
Реализация GCP и дополнительный контекст:
- Безопасность цепочки поставок Google Cloud Software
- Щит доставки программного обеспечения
- Безопасность цепочки поставок программного обеспечения
Заинтересованные лица, заинтересованные в обеспечении безопасности клиентов (дополнительные сведения):
DS-3. Защита инфраструктуры DevOps
Идентификаторы CIS Controls v8 | Идентификатор (-ы) NIST SP 800-53 r4 | Идентификаторы PCI-DSS v3.2.1 |
---|---|---|
16,7 | CM-2, CM-6, AC-2, AC-3, AC-6 | 2.2, 6.3, 7.1 |
Принцип безопасности. Убедитесь, что инфраструктура и конвейер DevOps соответствуют рекомендациям по обеспечению безопасности в разных средах, включая этапы сборки, тестирования и производства. Обычно сюда входят средства управления безопасностью для следующих областей:
- репозитории артефактов, в которых хранятся исходный код, собранные пакеты и образы, артефакты проекта и бизнес-данные.
- Серверы, службы и инструменты, на которых размещаются конвейеры CI/CD.
- конфигурация конвейера CI/CD.
Руководство Azure. В рамках применения Microsoft Cloud Security Benchmark к элементам управления безопасностью инфраструктуры DevOps приоритезируйте следующие элементы управления:
- Защитите артефакты и базовую среду, чтобы конвейеры CI/CD не стали способами вставки вредоносного кода. Например, просмотрите конвейер CI/CD, чтобы выявить любые ошибки конфигурации в основных областях Azure DevOps, таких как организация, проекты, пользователи, конвейеры (выпуск сборки &), Connections и агент сборки, чтобы выявить любые неправильные конфигурации, такие как открытый доступ, слабая проверка подлинности, небезопасная настройка подключения и т. д. Для GitHub используйте аналогичные элементы управления для защиты уровней разрешений организации.
- Убедитесь, что инфраструктура DevOps развертывается согласованно в проектах разработки. Отслеживайте соответствие инфраструктуры DevOps в большом масштабе с помощью Microsoft Defender для облака (например, панели мониторинга соответствия требованиям, Политика Azure, управления состоянием облака) или собственных средств мониторинга соответствия требованиям.
- Настройте политики разрешений и прав для удостоверений и ролей в Azure AD, собственных службах и средствах CI/CD в конвейере, чтобы обеспечить авторизацию изменений в конвейерах.
- Избегайте предоставления постоянного привилегированного доступа к учетным записям пользователей, таким как разработчики или тестировщики, с помощью таких функций, как управляемые идентификации Azure и JIT-доступ.
- Удалите ключи, учетные данные и секреты из кода и скриптов, используемых в заданиях рабочего процесса CI/CD, и сохраните их в хранилище ключей или azure Key Vault.
- Если вы запускаете локальные агенты сборки и развертывания, следуйте элементам управления Microsoft Cloud Security Benchmark, включая сетевую безопасность, управление состоянием и уязвимостями, а также безопасность конечных точек, чтобы защитить среду.
Примечание. Сведения об использовании таких служб, как Azure Monitor и Microsoft Sentinel, для включения системы управления, соответствия требованиям, операционного аудита и аудита рисков для инфраструктуры DevOps см. в разделах Ведение журнала и обнаружение угроз, DS-7 и Управление уязвимостями.
Реализация Azure и дополнительный контекст:
- Общие сведения о средствах управления DevSecOps — безопасные конвейеры
- Защита организации GitHub
- Конвейер Azure DevOps — вопросы безопасности размещенного агента Майкрософт
Руководство AWS. В рамках применения Microsoft Cloud Security Benchmark к элементам управления безопасностью инфраструктуры DevOps, таким как GitHub, CodeCommit, CodeArtifact, CodePipeline, CodeBuild и CodeDeploy, присвойте приоритет следующим элементам управления:
- Ознакомьтесь с этим руководством и принципом безопасности AWS Well-Architected Framework, чтобы защитить среды DevOps в AWS.
- Защитите артефакты и базовую поддерживающую инфраструктуру, чтобы конвейеры CI/CD не стали способами вставки вредоносного кода.
- Убедитесь, что инфраструктура DevOps развернута и постоянно поддерживается в проектах разработки. Отслеживайте соответствие инфраструктуры DevOps в большом масштабе с помощью AWS Config или собственного решения проверка соответствия требованиям.
- Используйте CodeArtifact для безопасного хранения и совместного использования пакетов программного обеспечения, используемых для разработки приложений. CodeArtifact можно использовать с популярными средствами сборки и диспетчерами пакетов, такими как Maven, Gradle, npm, yarn, pip и twine.
- Настройте разрешения удостоверений и ролей и политики разрешений в AWS IAM, собственных службах и инструментах CI/CD в конвейере, чтобы обеспечить авторизацию изменений в конвейерах.
- Удаление ключей, учетных данных и секретов из кода и скриптов, используемых в заданиях рабочего процесса CI/CD, и сохранение их в хранилище ключей или AWS KMS
- Если вы запускаете локальные агенты сборки и развертывания, следуйте элементам управления Microsoft Cloud Security Benchmark, включая сетевую безопасность, управление состоянием и уязвимостями, а также безопасность конечных точек, чтобы защитить среду. Используйте AWS Inspector для проверки уязвимостей в EC2 или контейнерной среде в качестве среды сборки.
Примечание. Сведения об использовании таких служб, как AWS CloudTrail, CloudWatch и Microsoft Sentinel для обеспечения управления, соответствия требованиям, операционного аудита и аудита рисков для инфраструктуры DevOps, см. в разделах Ведение журнала и обнаружение угроз, DS-7, а также в разделах и управления состоянием и уязвимостями.
Реализация AWS и дополнительный контекст:
Руководство GCP. В рамках применения Microsoft Cloud Security Benchmark к элементам управления безопасностью инфраструктуры DevOps приоритезируйте следующие элементы управления:
- Защитите артефакты и базовую среду, чтобы конвейеры CI/CD не стали способами вставки вредоносного кода. Например, проверьте конвейер CI/CD, чтобы выявить ошибки в конфигурации в таких службах, как Google Cloud Build, Cloud Deploy, Artifact Registry, Connections и Build Agent, чтобы выявить любые неправильные настройки, такие как открытый доступ, ненадежная проверка подлинности, небезопасная настройка подключения и т. д. Для GitHub используйте аналогичные элементы управления для защиты уровней разрешений организации.
- Убедитесь, что инфраструктура DevOps развертывается согласованно в проектах разработки. Отслеживайте соответствие инфраструктуры DevOps в большом масштабе с помощью Google Cloud Security Command Center (например, панели мониторинга соответствия требованиям, организационной политики, записи отдельных угроз и выявления неправильных конфигураций) или собственных средств мониторинга соответствия требованиям.
- Настройте разрешения удостоверений и ролей и политики прав в собственных службах Cloud Identity и AD, а также в средствах CI/CD в конвейере, чтобы обеспечить авторизацию изменений в конвейерах.
- Избегайте предоставления постоянного "постоянного" привилегированного доступа к человеческим учетным записям, таким как разработчики или тестировщики, с помощью таких функций, как управляемые google идентификации.
- Удалите ключи, учетные данные и секреты из кода и скриптов, используемых в заданиях рабочего процесса CI/CD, и сохраните их в хранилище ключей или Google Secret Manager.
- Если вы запускаете локальные агенты сборки и развертывания, следуйте элементам управления Microsoft Cloud Security Benchmark, включая сетевую безопасность, управление состоянием и уязвимостями, а также безопасность конечных точек, чтобы защитить среду.
Примечание. Сведения об использовании таких служб, как Azure Monitor и Microsoft Sentinel или набор операций Google Cloud и Chronicle SIEM и SOAR, см. в разделах Управление состоянием и уязвимостями, чтобы включить управление, соответствие требованиям, операционный аудит и аудит рисков для инфраструктуры DevOps.
Реализация GCP и дополнительный контекст:
Заинтересованные лица, заинтересованные в обеспечении безопасности клиентов (дополнительные сведения):
- Безопасность приложений и DevSecOps
- Управление состоянием
- Безопасность инфраструктуры и конечных точек
- Архитектура безопасности
DS-4. Интеграция статического тестирования безопасности приложений в конвейере DevOps
Идентификаторы CIS Controls v8 | Идентификатор (-ы) NIST SP 800-53 r4 | Идентификаторы PCI-DSS v3.2.1 |
---|---|---|
16.12 | SA-11 | 6.3, 6.5 |
Принцип безопасности. Убедитесь, что статическое тестирование безопасности приложений (SAST) нечеткое тестирование, интерактивное тестирование, тестирование мобильных приложений являются частью элементов управления в рабочем процессе CI/CD. Ограничение можно установить на основе результатов тестирования, чтобы предотвратить фиксацию уязвимых пакетов в репозитории, их включение в пакеты или развертывание в рабочей среде.
Руководство Azure. Интегрируйте SAST в конвейер (например, в инфраструктуру в качестве шаблона кода), чтобы исходный код можно было автоматически сканировать в рабочем процессе CI/CD. Конвейер Azure DevOps или GitHub могут интегрировать приведенные ниже средства и сторонние средства SAST в рабочий процесс.
- GitHub CodeQL для анализа исходного кода.
- Анализатор двоичных данных Microsoft BinSkim для Windows, UNIX и Linux.
- Сканер учетных данных Azure DevOps (расширение Microsoft Security DevOps) и проверка собственных секретов GitHub для проверки учетных данных в исходном коде.
Реализация Azure и дополнительный контекст:
- GitHub CodeQL
- Анализатор двоичных данных BinSkim
- Проверка учетных данных Azure DevOps
- Проверка секрета GitHub
Руководство ПО AWS. Интегрируйте SAST в конвейер, чтобы исходный код можно было автоматически сканировать в рабочем процессе CI/CD.
При использовании AWS CodeCommit используйте рецензент AWS CodeGuru для анализа исходного кода Python и Java. AWS Codepipeline также может поддерживать интеграцию сторонних средств SAST в конвейер развертывания кода.
При использовании GitHub приведенные ниже средства и сторонние средства SAST можно интегрировать в рабочий процесс.
- GitHub CodeQL для анализа исходного кода.
- Анализатор двоичных данных Microsoft BinSkim для Windows, UNIX и Linux.
- Проверка собственных секретов GitHub для проверки учетных данных в исходном коде.
- Рецензент AWS CodeGuru для анализа исходного кода Python и Java.
Реализация AWS и дополнительный контекст:
Руководство GCP. Интегрируйте SAST (например, Software Delivery Shield, Artifact Analysis) в конвейер (например, в инфраструктуре в качестве шаблона кода), чтобы исходный код можно было автоматически сканировать в рабочем процессе CI/CD.
Такие службы, как облачная сборка, облачное развертывание, реестр артефактов, поддерживают интеграцию со щитом доставки программного обеспечения и анализом артефактов, которые могут сканировать исходный код и другие артефакты в рабочем процессе CI/CD.
Реализация GCP и дополнительный контекст:
- Использование сканирования по запросу в конвейере облачной сборки
- Обзор щита доставки программного обеспечения
Заинтересованные лица, заинтересованные в обеспечении безопасности клиентов (дополнительные сведения):
DS-5. Интеграция динамического тестирования безопасности приложений в конвейер DevOps
Идентификаторы CIS Controls v8 | Идентификатор (-ы) NIST SP 800-53 r4 | Идентификаторы PCI-DSS v3.2.1 |
---|---|---|
16.12 | SA-11 | 6.3, 6.5 |
Принцип безопасности. Убедитесь, что динамическое тестирование безопасности приложений (DAST) является частью элементов управления в рабочем процессе CI/CD. Ограничение можно установить на основе результатов тестирования, чтобы предотвратить внедрение уязвимостей в пакеты или их развертывание в рабочей среде.
Руководство azure. Интегрируйте DAST в конвейер, чтобы приложение среды выполнения можно было автоматически протестировать в наборе рабочих процессов CI/CD в Azure DevOps или GitHub. Автоматизированное тестирование на проникновение (с ручной проверкой) также должно быть частью DAST.
Конвейер Azure DevOps или GitHub поддерживает интеграцию сторонних средств DAST в рабочий процесс CI/CD.
Реализация Azure и дополнительный контекст:
Руководство AWS. Интегрируйте DAST в конвейер, чтобы приложение среды выполнения можно было автоматически протестировать в наборе рабочих процессов CI/CD в AWS CodePipeline или GitHub. Автоматизированное тестирование на проникновение (с ручной проверкой) также должно быть частью DAST.
AWS CodePipeline или GitHub поддерживает интеграцию сторонних средств DAST в рабочий процесс CI/CD.
Реализация AWS и дополнительный контекст:
Руководство GCP. Интегрируйте DAST (например, Cloud Web Security Scanner) в конвейер, чтобы приложение среды выполнения можно было автоматически протестировать в наборе рабочих процессов CI/CD в таких службах, как Google Cloud Build, Cloud Deploy или GitHub. Сканер облачной веб-безопасности можно использовать для выявления уязвимостей безопасности в веб-приложениях рабочей нагрузки, размещенных в App Engine, Google Kubernetes Engine (GKE) и Вычислительной подсистеме. Автоматизированное тестирование на проникновение (с ручной проверкой) также должно быть частью DAST.
Google Cloud Build, Google Cloud Deploy, Artifact Registry и GitHub также поддерживают интеграцию сторонних средств DAST в рабочий процесс CI/CD.
Реализация GCP и дополнительный контекст:
Заинтересованные лица, заинтересованные в обеспечении безопасности клиентов (дополнительные сведения):
DS-6. Обеспечение безопасности рабочей нагрузки в течение всего жизненного цикла DevOps
Идентификаторы CIS Controls v8 | Идентификатор (-ы) NIST SP 800-53 r4 | Идентификаторы PCI-DSS v3.2.1 |
---|---|---|
7.5, 7.6, 7.7, 16.1, 16.7 | CM-2, CM-6, AC-2, AC-3, AC-6 | 6.1, 6.2, 6.3 |
Принцип безопасности. Убедитесь, что рабочая нагрузка защищена на протяжении всего жизненного цикла на этапе разработки, тестирования и развертывания. Используйте Microsoft Cloud Security Benchmark для оценки элементов управления (таких как сетевая безопасность, управление удостоверениями, привилегированный доступ и т. д.), которые можно задать как ограничения по умолчанию или сдвиг влево до этапа развертывания. В частности, убедитесь, что в процессе DevOps применяются следующие элементы управления. Автоматизируйте развертывание с помощью инструментов Azure или сторонних разработчиков в рабочем процессе CI/CD, управления инфраструктурой (инфраструктура как код) и тестирования, чтобы уменьшить количество ошибок и направлений атак.
- Обеспечьте защиту виртуальных машин, образов контейнеров и других артефактов от вредоносных действий.
- Проверяйте артефакты рабочей нагрузки (иными словами, образы контейнеров, зависимости, проверки SAST и DAST) перед развертыванием в рабочем процессе CI/CD.
- Разверните функции оценки уязвимостей и обнаружения угроз в рабочей среде и постоянно используйте эти функции во время выполнения.
Руководство по Azure. Руководство по виртуальным машинам Azure:
- Используя Общую коллекцию образов Azure, вы можете делиться своими образами с другими пользователями, субъектами-службами или группами AD в вашей организации и управлять доступом к этим образам. Используйте управление доступом на основе ролей Azure (Azure RBAC), чтобы доступ к пользовательским образам был только у полномочных пользователей.
- Определите защищенные конфигурационные базы для виртуальных машин, чтобы исключить ненужные учетные данные, разрешения и пакеты. Развертывание и применение базовых конфигураций с помощью пользовательских образов, шаблонов Azure Resource Manager и (или) Политика Azure гостевой конфигурации.
Руководство по службам контейнеров Azure:
- Используйте Реестр контейнеров Azure (ACR) для создания частного реестра контейнеров, где детализированный доступ можно ограничить с помощью Azure RBAC, чтобы доступ к контейнерам в частном реестре могли получить только авторизованные службы и учетные записи.
- Используйте Defender для контейнеров для оценки уязвимостей образов в частных Реестр контейнеров Azure. Кроме того, вы можете использовать Microsoft Defender для облака для интеграции проверок образов контейнеров в рабочие процессы CI/CD.
Для бессерверных служб Azure следует применять аналогичные элементы управления, чтобы элементы управления безопасностью были смещены влево на этап перед развертыванием.
Реализация Azure и дополнительный контекст:
- Обзор Общей коллекции образов
- Применение рекомендаций Microsoft Defender для облака по оценке уязвимостей
- Рекомендации по безопасности для контейнера Azure
- Azure Defender для реестров контейнеров
Руководство AWS. Используйте Amazon Elastic Container Registry для совместного использования образов и управления доступом к ним различными пользователями и ролями в вашей организации. Используйте AWS IAM, чтобы обеспечить доступ к пользовательским образам только авторизованным пользователям.
Определите базовые показатели безопасной конфигурации для образов EC2 AMI, чтобы исключить ненужные учетные данные, разрешения и пакеты. Развертывайте и применяйте базовые конфигурации с помощью пользовательских образов AMI, шаблонов CloudFormation и (или) правил конфигурации AWS.
Используйте AWS Inspector для сканирования уязвимостей виртуальных машин и контейнерных сред, чтобы защитить их от вредоносных манипуляций.
Для бессерверных служб AWS используйте AWS CodePipeline в сочетании с AWS AppConfig, чтобы внедрить аналогичные элементы управления, чтобы обеспечить переход элементов управления безопасностью влево на этап перед развертыванием.
Реализация AWS и дополнительный контекст:
Руководство GCP. Google Cloud включает элементы управления для защиты вычислительных ресурсов и ресурсов контейнера Google Kubernetes Engine (GKE). Google включает экранированную виртуальную машину, которая усиливает защиту экземпляров виртуальных машин. Он обеспечивает безопасность загрузки, отслеживает целостность и использует виртуальный доверенный платформенный модуль (vTPM).
Используйте Google Cloud Artifact Analysis для сканирования уязвимостей в образах контейнеров или ОС, а также других типов артефактов по запросу или автоматически в конвейерах. Используйте обнаружение угроз контейнера для непрерывного мониторинга указанных Container-Optimized образов узлов ОС. Служба оценивает все изменения и пытается удаленного доступа обнаружить атаки среды выполнения практически в реальном времени.
Используйте реестр артефактов, чтобы настроить безопасное хранилище артефактов частной сборки, чтобы контролировать, кто может получать доступ, просматривать или скачивать артефакты с помощью ролей и разрешений IAM, встроенных в реестр, а также обеспечить согласованное время бесперебойной работы в безопасной и надежной инфраструктуре Google.
Для бессерверных служб GCP следует применять аналогичные элементы управления, чтобы элементы управления безопасностью "сместить влево" на этап перед развертыванием.
Реализация GCP и дополнительный контекст:
- Реестр артефактов
- Безопасность приложений и DevSecOps
- Управление состоянием
- Архитектура безопасности
Заинтересованные лица, заинтересованные в обеспечении безопасности клиентов (дополнительные сведения):
DS-7. Включение ведения журнала и мониторинга в DevOps
Идентификаторы CIS Controls v8 | Идентификатор (-ы) NIST SP 800-53 r4 | Идентификаторы PCI-DSS v3.2.1 |
---|---|---|
8.2, 8.5, 8.9, 8.11 | AU-3, AU-6, AU-12, SI-4 | 10.1, 10.2, 10.3, 10.6 |
Принцип безопасности. Убедитесь, что область ведения журнала и мониторинга включает непроизводственные среды и элементы рабочего процесса CI/CD, используемые в DevOps (и любых других процессах разработки). Уязвимости и угрозы, направленные на эти среды, могут привести к серьезным рискам в рабочей среде, если не отслеживать их должным образом. Для обнаружения отклонений в заданиях рабочего процесса CI/CD необходимо также отслеживать события сборки, тестирования и развертывания в рамках рабочего процесса CI/CD.
Руководство Azure. Включите и настройте возможности ведения журнала аудита в непроизводственных средах и средах инструментов CI/CD (таких как Azure DevOps и GitHub), используемых в процессе DevOps.
События, созданные из Azure DevOps и рабочего процесса CI/CD GitHub, включая задания сборки, тестирования и развертывания, также должны отслеживаться для выявления любых аномальных результатов.
Принимая указанные выше журналы и события в Microsoft Sentinel или другие средства SIEM с помощью потока ведения журнала или API, чтобы обеспечить надлежащее отслеживание и обработку инцидентов безопасности.
Реализация Azure и дополнительный контекст:
Руководство по AWS. Включите и настройте AWS CloudTrail для возможностей ведения журнала аудита в непроизводственных средах и средах инструментов CI/CD (таких как AWS CodePipeline, AWS CodeBuild, AWS CodeDeploy, AWS CodeStar), используемых на протяжении всего процесса DevOps.
События, созданные из сред AWS CI/CD (таких как AWS CodePipeline, AWS CodeBuild, AWS CodeDeploy, AWS CodeStar) и рабочего процесса CI/CD GitHub, включая задания сборки, тестирования и развертывания, также следует отслеживать для выявления аномальных результатов.
Принимая указанные выше журналы и события в AWS CloudWatch, Microsoft Sentinel или другие средства SIEM с помощью потока ведения журнала или API, чтобы обеспечить надлежащее отслеживание и обработку инцидентов безопасности.
Реализация AWS и дополнительный контекст:
- Подключение Microsoft Sentinel к Amazon Web Services для приема данных журнала службы AWS
- Ведение журнала GitHub
Руководство GCP. Включите и настройте возможности ведения журнала аудита в непроизводственных средах и средах инструментов CI/CD для таких продуктов, как Cloud Build, Google Cloud Deploy, Artifact Registry и GitHub, которые можно использовать на протяжении всего процесса DevOps.
События, созданные из сред CI/CD GCP (таких как Cloud Build, Google Cloud Deploy, Artifact Registry) и рабочего процесса CI/CD GitHub, включая задания сборки, тестирования и развертывания, также должны отслеживаться для выявления аномальных результатов.
Принимать указанные выше журналы и события в Microsoft Sentinel, Google Cloud Security Command Center, Chronicle или другие средства SIEM с помощью потока ведения журнала или API, чтобы обеспечить правильный мониторинг и обработку инцидентов безопасности.
Реализация GCP и дополнительный контекст:
- Рекомендуемые продукты для CI/CD
- Введение в набор операций Google Cloud
- Рекомендации по ведению журнала в облаке
- Прием данных Google Cloud в Хронику
Заинтересованные лица по обеспечению безопасности клиентов (подробнее):