Прием данных журналов Google Cloud Platform в Microsoft Sentinel

Организации все чаще переходят на многооблачные архитектуры, как по разработке, так и в соответствии с текущими требованиями. Все большее число этих организаций используют приложения и хранят данные в нескольких общедоступных облаках, включая Google Cloud Platform (GCP).

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

С помощью соединителей GCP Pub/Sub на основе нашей платформы соединителей без кода (CCF) вы можете принимать журналы из среды GCP с помощью возможности GCP Pub/Sub:

  • Соединитель Pub/Sub для журналов аудита Google Cloud Platform (GCP) собирает записи аудита доступа к ресурсам GCP. Аналитики могут отслеживать эти журналы для отслеживания попыток доступа к ресурсам и обнаружения потенциальных угроз в среде GCP.

  • Соединитель Google Cloud Platform (GCP) Security Command Center собирает результаты из Google Security Command Center, надежной платформы безопасности и управления рисками для Google Cloud. Аналитики могут просмотреть эти выводы, чтобы получить аналитические сведения о безопасности организации, включая инвентаризацию и обнаружение активов, обнаружение уязвимостей и угроз, а также устранение рисков и устранение рисков.

  • Соединитель Google Kubernetes Engine собирает журналы Google Kubernetes Engine (GKE). Аналитики могут отслеживать эти журналы для отслеживания активности кластера, поведения рабочей нагрузки и событий безопасности, что позволяет аналитикам отслеживать рабочие нагрузки Kubernetes, анализировать производительность и обнаруживать потенциальные угрозы в кластерах GKE.

Предварительные условия

Перед началом работы убедитесь, что у вас есть следующее:

  • Решение Microsoft Sentinel включено.
  • Существует определенная рабочая область Microsoft Sentinel.
  • В среде GCP имеются ресурсы, генерирующие один из следующих типов журналов, которые вы хотите импортировать:
    • Журналы аудита GCP
    • Выводы Центра управления безопасностью Google
  • Вашей учетной записи Azure назначена роль Microsoft Sentinel Contributor.
  • У пользователя GCP есть доступ к созданию и изменению ресурсов в проекте GCP.
  • Оба API — GCP Identity and Access Management (IAM) и GCP Cloud Resource Manager — включены.

Настройка среды GCP

В среде GCP необходимо настроить две вещи:

  1. Настройте проверку подлинности Microsoft Sentinel в GCP, создав следующие ресурсы в службе GCP IAM:

    • Пул идентификационных данных рабочей нагрузки
    • Поставщик удостоверений для рабочих нагрузок
    • Учетная запись службы
    • Роль
  2. Настройте сбор журналов в GCP и прием данных в Microsoft Sentinel, создав следующие ресурсы в сервисе Pub/Sub в GCP:

    • Тема
    • Подписка на раздел

Среду можно настроить одним из двух способов:

  • Создавайте ресурсы GCP через API Terraform: Terraform предоставляет API для создания ресурсов и управления идентификацией и доступом (см. требования GCP connectors). Microsoft Sentinel предоставляет скрипты Terraform, которые выдают необходимые команды API.

  • Настройте среду GCP вручную, создав ресурсы самостоятельно в консоли GCP.

    Примечание.

    Скрипт Terraform для создания ресурсов GCP Pub/Sub для сбора журналов из центра управления безопасностью недоступен. Эти ресурсы необходимо создать вручную. Вы по-прежнему можете использовать скрипт Terraform для создания ресурсов GCP IAM для проверки подлинности.

    Важно!

    Если вы создаете ресурсы вручную, необходимо создать все ресурсы проверки подлинности (IAM) в том же проекте GCP, в противном случае это не будет работать. (Ресурсы pub/sub могут находиться в другом проекте.)

Настройка проверки подлинности GCP

Требуется для всех соединителей GCP.

Используйте следующие шаги для настройки ресурсов аутентификации GCP с помощью скриптов Terraform.

  1. Откройте Cloud Shell GCP.

  2. Выберите проект , с которым вы хотите работать, введя следующую команду в редакторе:

    gcloud config set project {projectId}  
    
  3. Скопируйте скрипт проверки подлинности Terraform, предоставленный Microsoft Sentinel, из репозитория Sentinel GitHub в среду Cloud Shell GCP.

    1. Откройте файл скрипта Terraform GCPInitialAuthenticationSetup и скопируйте его содержимое.

      Примечание.

      Для приема данных GCP в облако Azure для государственных организаций используйте вместо этого скрипт GCPInitialAuthenticationSetupGov Terraform.

    2. Создайте каталог в среде Cloud Shell, введите его и создайте пустой файл.

      mkdir {directory-name} && cd {directory-name} && touch initauth.tf
      
    3. Откройте initauth.tf в редакторе Cloud Shell и вставьте в него содержимое файла скрипта.

  4. Инициализируйте Terraform в созданном каталоге, введя следующую команду в терминале:

    terraform init 
    
  5. Когда вы получите сообщение о том, что Terraform инициализирован, выполните скрипт, введя следующую команду в терминале:

    terraform apply 
    
  6. Когда скрипт запросит идентификатор клиента Майкрософт, скопируйте его и вставьте в терминал.

    Примечание.

    Идентификатор вашего клиента можно найти и скопировать на странице соединителя GCP Pub/Sub Audit Logs на портале Microsoft Sentinel или на экране Параметры портала (доступном из любого места на портале Azure при выборе значка шестеренки в верхней части экрана) в столбце Идентификатор каталога. Снимок экрана: экран параметров портала.

  7. На вопрос о том, уже ли создан пул идентификаторов рабочей нагрузки для Azure, ответьте да или нет соответственно.

  8. При появлении запроса на создание перечисленных ресурсов введите да.

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

Настройка журналов аудита GCP

Инструкции в этом разделе относятся к использованию соединителя Microsoft Sentinel GCP Pub/Sub Audit Logs.

Сведения об использовании соединителя Microsoft Sentinel GCP Pub/Sub Security Command Center см. в статье Настройка GCP Security Command Center.

Сведения об использовании соединителя Microsoft Sentinel Google Kubernetes Engine см. в статье Настройка журналов GKE.

Используйте следующие шаги для создания ресурсов GCP Pub/Sub, необходимых для сбора журналов аудита, используя Terraform.

  1. Скопируйте скрипт настройки журнала аудита Terraform, предоставленный Microsoft Sentinel, из репозитория Sentinel GitHub в другую папку в среде GCP Cloud Shell.

    1. Откройте файл скрипта Terraform GCPAuditLogsSetup и скопируйте его содержимое.

      Примечание.

      Для загрузки данных GCP в облако Azure для государственных организаций используйте скрипт GCPAuditLogsSetup для Azure для государственных организаций.

    2. Создайте другой каталог в среде Cloud Shell, введите его и создайте пустой файл.

      mkdir {other-directory-name} && cd {other-directory-name} && touch auditlog.tf
      
    3. Откройте auditlog.tf в редакторе Cloud Shell и вставьте в него содержимое файла скрипта.

  2. Инициализируйте Terraform в новом каталоге, введя следующую команду в терминале:

    terraform init 
    
  3. Когда вы получите сообщение о том, что Terraform инициализирован, выполните скрипт, введя следующую команду в терминале:

    terraform apply 
    

    Чтобы получать логи из всей организации с помощью одного Pub/Sub, введите:

    terraform apply -var="organization-id= {organizationId} "
    
  4. При появлении запроса на создание перечисленных ресурсов введите да.

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

Подождите пять минут, прежде чем продолжить настройку соединителя GCP Pub/Sub в Microsoft Sentinel.

Если вы также настраиваете соединитель GCP Pub/Sub Security Command Center , перейдите к следующему разделу.

В противном случае перейдите к разделу Настройка соединителя GCP Pub/Sub в Microsoft Sentinel.

Настройка центра команд безопасности GCP

Инструкции в этом разделе предназначены для использования соединителя командного центра управления безопасностью Microsoft Sentinel GCP Pub/Sub.

См. Настроить журналы аудита GCP для использования коннектора журналов публикаций/субаудитов Microsoft Sentinel GCP.

Сведения об использовании соединителя Microsoft Sentinel Google Kubernetes Engine см. в статье Настройка журналов GKE.

Настройка непрерывного экспорта результатов

Следуйте инструкциям в документации Google Cloud, чтобы настроить экспорт будущих результатов SCC в службу GCP Pub/Sub.

  1. При запросе на выбор проекта для экспорта выберите проект, созданный для этой цели, или создайте новый проект.

  2. При запросе выбрать раздел Pub/Sub, в котором вы хотите экспортировать результаты, следуйте инструкциям в статье "Создание раздела публикации " для создания нового раздела.

Настройте коннектор Google Kubernetes Engine

Инструкции в этом разделе предназначены для использования соединителя Microsoft Sentinel Google Kubernetes Engine.

Сведения об использовании соединителя Microsoft Sentinel GCP Pub/Sub Security Command Center см. в статье Настройка GCP Security Command Center.

Сведения об использовании соединителя Microsoft Sentinel GCP Pub/Sub Audit Logs см. в разделе Настройка журналов аудита GCP.

Используйте следующие шаги для создания ресурсов GCP Pub/Sub, необходимых для сбора журналов GKE, используя Terraform.

  1. Скопируйте скрипт настройки журнала аудита Terraform, предоставленный Microsoft Sentinel, из репозитория Sentinel GitHub в другую папку в среде GCP Cloud Shell.

    1. Откройте файл скрипта Terraform GoogleKubernetesEngineLogSetup и скопируйте его содержимое.

    2. Создайте другой каталог в среде Cloud Shell, введите его и создайте пустой файл.

      mkdir {other-directory-name} && cd {other-directory-name} && touch gkelog.tf
      
    3. Откройте gkelog.tf в редакторе Cloud Shell и вставьте в него содержимое файла скрипта.

  2. Инициализируйте Terraform в новом каталоге, введя следующую команду в терминале:

    terraform init 
    
  3. Когда вы получите сообщение о том, что Terraform инициализирован, выполните скрипт, введя следующую команду в терминале:

    terraform apply 
    

    Чтобы получать логи из всей организации с помощью одного Pub/Sub, введите:

    terraform apply -var="organization-id= {organizationId} "
    
  4. При появлении запроса на создание перечисленных ресурсов введите да.

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

Подождите пять минут, прежде чем продолжить настройку соединителя GCP Pub/Sub в Microsoft Sentinel.

Настройка соединителя GCP Pub/Sub в Microsoft Sentinel

После настройки среды GCP установите решение-коннектор в Microsoft Sentinel и настройте сборщик для своего проекта GCP. Выберите вкладку для соединителя, который требуется настроить.

Выполните следующие действия, чтобы установить и подключить соединитель журналов аудита GCP Pub/Sub в Microsoft Sentinel.

  1. Откройте портал Azure и перейдите к службе Microsoft Sentinel.

  2. В центре содержимого в строке поиска введите Журналы аудита облачной платформы Google.

  3. Установите решение Google Cloud Platform Audit Logs .

  4. Выберите Соединители данных и в строке поиска введите GCP Pub/Sub Audit Logs.

  5. Выберите коннектор GCP Pub/Sub Audit Logs.

  6. В области сведений выберите Открыть страницу соединителя.

  7. В области Конфигурация выберите Добавить новый сборщик.

    Снимок экрана: конфигурация соединителя GCP

  8. В панели Connect new collector введите параметры ресурсов, которые вы создали при настройке среды GCP.

    Скриншот новой боковой панели коллектора.

  9. Убедитесь, что значения во всех полях соответствуют своим аналогам в проекте GCP (значения на снимке экрана являются примерами, а не литералами), и нажмите кнопку Подключить.

Убедитесь, что данные GCP есть в среде Microsoft Sentinel.

Используйте следующие шаги, чтобы убедиться, что Microsoft Sentinel получает данные от GCP.

  1. Чтобы убедиться, что логи GCP были успешно внесены в Microsoft Sentinel, выполните следующий запрос через 30 минут после завершения шагов в разделе «Настройка GCP Pub/Sub connector в Microsoft Sentinel».

  2. Включите функцию здоровья Microsoft Sentinel для коннекторов данных.

Устранение неполадок

Используйте следующее руководство, чтобы устранить распространенные проблемы при настройке соединителей GCP Pub/Sub.

  1. «Ошибка 409: Запрошенная сущность уже существует» при запуске скриптов Terraform: состояние Terraform — это файл, который Terraform использует для отслеживания управляемых ресурсов. Если ресурсы уже существуют в GCP, импортируйте их в состояние Terraform, чтобы Terraform отслеживал их, а не пытался их воссоздать. Например, при появлении сообщения об ошибке: "Error creating WorkloadIdentityPool: googleapi: Error 409: Requested entity already exists", импортируйте существующий пул идентификационных данных рабочей нагрузки в файл состояния Terraform, чтобы Terraform мог управлять им декларативно. Найдите идентификатор пула и ID проекта, затем используйте следующую команду, чтобы импортировать существующий пул идентификаторов рабочей нагрузки в локальное состояние Terraform:
terraform import google_iam_workload_identity_pool.<POOL_RESOURCE_NAME> projects/<PROJECT_ID>/locations/global/workloadIdentityPools/<POOL_ID>

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

Из этой статьи вы узнали, как принимать данные GCP в Microsoft Sentinel с помощью соединителей GCP Pub/Sub. Дополнительные сведения о Microsoft Sentinel см. в следующих статьях: