GitHub Расширенная интеграция безопасности с Microsoft Defender для облака — песочница Project

В этом руководстве приведены шаги по настройке тестового проекта, который помогает полностью оценить интеграцию GitHub Advanced Security (GHAS) и Microsoft Defender для облака с использованием простого сценария.

Интеграция GHAS и Microsoft Defender для облака помогает максимально повысить безопасность облачных приложений Microsoft, коррелируя риски во время выполнения и контекст с исходным кодом для более быстрой очистки с помощью искусственного интеллекта.

Следуя этому руководству, вы:

  • Настройте репозиторий GitHub для Microsoft Defender для облака.
  • Создайте фактор риска среды выполнения.
  • Связывание кода с ресурсами среды выполнения.
  • Тестирование реальных вариантов использования в Defender для облака.

Prerequisites

Aspect Details
Требования к окружающей среде — учетная запись GitHub с соединителем, созданным в Defender для Облака
— лицензия GHAS
— в подписке включена функция Defender Cloud Security Posture Management (DCSPM)
— Microsoft Security Copilot (необязательно для автоматического исправления)
Роли и разрешения — Разрешения администратора безопасности
— Администратор безопасности в подписке Azure (для просмотра результатов в Defender для облака)
— владелец организации GitHub
Облачные среды Доступно только в коммерческих облаках (не в Azure для государственных организаций, Azure, управляемых 21Vianet или другими суверенными облаками).

Подготовьте вашу среду

Шаг 1. Настройка репозитория GitHub и запуск рабочего процесса

Чтобы проверить интеграцию, используйте пример репозитория GitHub Sandbox, который уже содержит все необходимое для создания уязвимого образа контейнера.

Перед настройкой репозитория убедитесь, что:

  1. Клонируйте указанный ниже репозиторий в организацию на GitHub.
  1. В репозитории выполните следующие действия.

    1. Перейдите в меню Параметры.
    2. На левой панели выберите "Секреты и переменные > Действия". Затем выберите новый секрет репозитория.
    3. Добавьте следующие секреты на уровне репозитория или организации:
Переменная Description
ACR_ENDPOINT Сервер проверки подлинности реестра контейнеров.
ACR_USERNAME Имя пользователя для реестра контейнеров.
ACR_PASSWORD Пароль для реестра контейнеров.

Note

Вы можете выбрать любые имена для этих переменных. Им не нужно следовать определенному шаблону.

Вы можете найти сервер аутентификации реестра контейнеров, имя пользователя и пароль в портале Azure, следуя следующим шагам:

  1. Выберите реестр контейнеров, в который требуется развернуть.
  2. В разделе "Параметры" выберите ключи доступа.
  3. На панели ключей доступа показаны ключи для сервера проверки подлинности, имени пользователя и пароля.

В вашем репозитории выберите Действия, выберите Сборка и отправка в ACR, затем выберите Запустить рабочий процесс.

Убедитесь, что образ был развернут в реестре контейнеров. В примере репозитория образ должен находиться в реестре mdc-mock-0001 с тегом mdc-ghas-integration.

Разверните mdc-mock-0001:mdc-ghas-integration образ в виде текущего контейнера на вашем кластере. Один из способов развернуть образ контейнера в кластер — подключиться к кластеру и использовать kubectl run команду. Ниже приведен пример службы Azure Kubernetes (AKS):

Задайте подписку кластера:

az account set --subscription $subscriptionID

Задайте учетные данные для кластера:

az aks get-credentials --resource-group $resourceGroupName --name $kubernetesClusterName --overwrite-existing

Разверните образ:

kubectl run $containerName --image=$registryName.azurecr.io/mdc-mock-0001:mdc-ghas-integration

Шаг 2. Создание примера фактора риска (правило, критическое для бизнеса)

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

  1. На портале Defender для облака перейдите к настройкам среды>, затем выберите Критичность ресурса.
  2. На правой панели выберите ссылку, чтобы открыть Microsoft Defender.
  3. Выберите "Создать новую классификацию".
  4. Введите имя и описание.
  5. В построителе запросов выберите облачный ресурс. Напишите запрос, чтобы задать имя ресурса , равное имени контейнера, развернутого в кластере для проверки. Затем нажмите кнопку "Далее".
  6. На странице "Ресурсы предварительной версии" , если Microsoft Defender уже обнаружил ресурс, имя контейнера отображается с типом ресурса K8s-container или K8s-pod. Даже если имя еще не видно, перейдите к следующему шагу.
  7. Выберите уровень критичности, а затем просмотрите и отправьте правило классификации.

Note

Microsoft Defender применяет метку критическости к контейнеру после обнаружения контейнера. Этот процесс может занять до 24 часов.

Шаг 3. Проверка готовности среды

Проверка подтверждает правильность настройки вашей среды для вывода кода на рекомендации среды выполнения и генерации реализуемых результатов.

Во время валидации Defender проверяет полный код для видимости во время выполнения.

  • Microsoft Defender для облака постоянно отслеживает репозитории исходного кода для уязвимостей безопасности.
  • Артефакты сборки, такие как образы контейнеров, сканируются в контейнерных реестрах перед развертыванием.
  • Нагрузки среды выполнения, развернутые в кластерах Kubernetes, отслеживаются на предмет рисков безопасности.
  • Defender для облака сопоставляет и отслеживает каждый артефакт, начиная с кода, через сборку и развертывание к времени выполнения, и возвращает обратно.

Note

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

Проверьте, что сканирование без агента GitHub определяет репозиторий.

Перейдите в Cloud Security Explorer и выполните проверочные запросы, описанные в следующем списке. Эти валидационные запросы проверяют, может ли Defender выявлять артефакты, созданные вашими конвейерами и нагрузками. Если запросы возвращают результаты, это означает, что сканирование и корреляция работают должным образом.

Note

Если результаты не возвращаются, это может указывать на то, что артефакты еще не созданы, сканирование не настроено или отсутствуют разрешения.

  • Убедитесь, что Defender для облака (в реестре контейнеров Azure) сканировал образ контейнера и использовал его для создания контейнера.
  • В запросе добавьте условия для конкретного развертывания.
  • Убедитесь, что контейнер запущен и что Defender для облака сканировал кластер AKS.
  • Убедитесь, что факторы риска настроены правильно на стороне Defender для облака. Найдите имя контейнера на странице инвентаризации Defender для облака, и вы увидите, что он помечен как критически важный.

Note

Проверка конфигурации фактора риска требуется только в том случае, если факторы риска ещё не настроены в вашей среде.

Успешная проверка гарантирует, что последующие шаги, такие как рекомендации, кампании и создание задач в GitHub, обеспечивают значимые результаты.

Дальнейшие действия