Ingerir dados de registo do Google Cloud Platform no Microsoft Sentinel

As organizações estão cada vez mais a mover-se para arquiteturas multicloud, seja por predefinição ou devido a requisitos contínuos. Um número crescente destas organizações utiliza aplicações e armazena dados em várias clouds públicas, incluindo o Google Cloud Platform (GCP).

Este artigo descreve como ingerir dados GCP em Microsoft Sentinel para obter cobertura de segurança completa e analisar e detetar ataques no seu ambiente multicloud. Antes de começar, reveja os pré-requisitos do conector GCP, incluindo as permissões de acesso exigidas tanto para o Azure como para o GCP.

Com os conectores GCP Pub/Sub, baseados no nosso Codeless Connector Framework (CCF), pode recolher registos do seu ambiente GCP através da funcionalidade Pub/Sub do GCP:

  • O conector Google Cloud Platform (GCP) Pub/Sub Audit Logs recolhe registos de auditoria de acesso a recursos GCP. Os analistas podem monitorizar estes registos para controlar as tentativas de acesso a recursos e detetar potenciais ameaças no ambiente do GCP.

  • O conector do Centro de Comandos de Segurança do Google Cloud Platform (GCP) recolhe conclusões do Centro de Comandos de Segurança do Google, uma plataforma robusta de gestão de segurança e risco para o Google Cloud. Os analistas podem ver estas descobertas para obter informações sobre a postura de segurança da organização, incluindo inventário e deteção de recursos, deteções de vulnerabilidades e ameaças e mitigação e remediação de riscos.

  • O conetor Google Kubernetes Engine recolhe os registos do Google Kubernetes Engine (GKE). Os analistas podem monitorizar estes registos para monitorizar a atividade do cluster, o comportamento da carga de trabalho e os eventos de segurança, permitindo que os analistas monitorizem cargas de trabalho do Kubernetes, analisem o desempenho e detetem potenciais ameaças em clusters GKE.

Pré-requisitos

Antes de começar, verifique se tem o seguinte:

  • A solução Microsoft Sentinel está ativada.
  • Existe uma área de trabalho Microsoft Sentinel definida.
  • Existe um ambiente GCP e contém recursos que produzem um dos seguintes tipos de registo que pretende ingerir:
    • Registos de auditoria do GCP
    • Resultados do Centro de Comandos de Segurança do Google
  • O seu utilizador do Azure tem a função de Microsoft Sentinel Contributor.
  • O utilizador do GCP tem acesso para criar e editar recursos no projeto GCP.
  • A API de Gestão de Identidades e Acessos (IAM) do GCP e a API de Resource Manager da Cloud do GCP estão ativadas.

Configurar o ambiente do GCP

Existem duas coisas que precisa de configurar no seu ambiente GCP:

  1. Configure a autenticação do Microsoft Sentinel no GCP criando os seguintes recursos no serviço IAM do GCP:

    • Conjunto de identidades de carga de trabalho
    • Fornecedor de identidade da carga de trabalho
    • Conta de serviço
    • Função
  2. Configure a recolha de registos no GCP e a ingestão no Microsoft Sentinel ao criar os seguintes recursos no serviço Pub/Sub do GCP:

    • Tópico
    • Subscrição do tópico

Pode configurar o ambiente de uma de duas formas:

  • Crie recursos GCP através da API Terraform: O Terraform fornece APIs para criação de recursos e para Gestão de Identidade e Acesso (ver pré-requisitos do conector GCP). Microsoft Sentinel fornece scripts do Terraform que emitem os comandos necessários para as APIs.

  • Configure o ambiente GCP manualmente, criando os recursos manualmente na consola do GCP.

    Nota

    Não existe nenhum script Terraform disponível para criar recursos GCP Pub/Sub para recolha de registos a partir do Security Command Center. Tem de criar estes recursos manualmente. Pode continuar a utilizar o script do Terraform para criar os recursos IAM do GCP para autenticação.

    Importante

    Se estiver a criar recursos manualmente, tem de criar todos os recursos de autenticação (IAM) no mesmo projeto GCP. Caso contrário, não funcionará. (Os recursos Pub/Sub podem estar num projeto diferente.)

Configurar autenticação GCP

Necessário para todos os conectores GCP.

Utilize os seguintes passos para configurar os recursos de autenticação GCP usando scripts Terraform.

  1. Abra o GCP Cloud Shell.

  2. Selecione o projeto com o qual pretende trabalhar ao escrever o seguinte comando no editor:

    gcloud config set project {projectId}  
    
  3. Copie o script de autenticação do Terraform fornecido pelo Microsoft Sentinel do repositório do GitHub Sentinel para o seu ambiente de Cloud Shell GCP.

    1. Abra o ficheiro de script Terraform GCPInitialAuthenticationSetup e copie os respetivos conteúdos.

      Nota

      Para importar dados do GCP para uma cloud Azure Government, utilize, em vez disso, o script Terraform GCPInitialAuthenticationSetupGov.

    2. Crie um diretório no seu ambiente de Cloud Shell, introduza-o e crie um novo ficheiro em branco.

      mkdir {directory-name} && cd {directory-name} && touch initauth.tf
      
    3. Abra initauth.tf no editor de Cloud Shell e cole os conteúdos do ficheiro de script no mesmo.

  4. Inicialize o Terraform no diretório que criou ao escrever o seguinte comando no terminal:

    terraform init 
    
  5. Quando receber a mensagem de confirmação de que o Terraform foi inicializado, execute o script ao escrever o seguinte comando no terminal:

    terraform apply 
    
  6. Quando o script pedir o seu ID de inquilino da Microsoft, copie-o e cole-o no terminal.

    Nota

    Pode encontrar e copiar o ID do seu inquilino na página do conector Registos de Auditoria do GCP Pub/Sub no portal do Microsoft Sentinel ou no ecrã Definições do portal (acessível a partir de qualquer localização no portal do Azure ao selecionar o ícone de engrenagem na parte superior do ecrã), na coluna ID do Diretório. Captura de ecrã do ecrã de definições do portal.

  7. Quando lhe for perguntado se já foi criado um Conjunto de Identidades de carga de trabalho para Azure, responda sim ou não em conformidade.

  8. Quando lhe for perguntado se pretende criar os recursos listados, escreva sim.

Quando o resultado do script for apresentado, guarde os parâmetros de recursos para utilização posterior.

Configurar os registos de auditoria do GCP

As instruções nesta secção destinam-se à utilização do conector Microsoft Sentinel GcP Pub/Sub Audit Logs.

Veja Configuração do GCP Security Command Center para utilizar o conector do Microsoft Sentinel GCP Pub/Sub Security Command Center.

Consulte Configuração dos registos do GKE para usar o conector Google Kubernetes Engine do Microsoft Sentinel.

Use os passos seguintes para criar os recursos GCP Pub/Sub necessários para a recolha de registos de auditoria utilizando o Terraform.

  1. Copie o script de configuração do registo de auditoria do Terraform, disponibilizado pelo Microsoft Sentinel, do repositório do Sentinel no GitHub para uma pasta diferente no seu ambiente de Cloud Shell do GCP.

    1. Abra o ficheiro de script Terraform GCPAuditLogsSetup e copie os respetivos conteúdos.

      Nota

      Para ingerir dados GCP numa cloud do Azure Government, use o script GCPAuditLogsSetup para Azure Government em vez disso.

    2. Crie outro diretório no seu ambiente de Cloud Shell, introduza-o e crie um novo ficheiro em branco.

      mkdir {other-directory-name} && cd {other-directory-name} && touch auditlog.tf
      
    3. Abra auditlog.tf no editor de Cloud Shell e cole os conteúdos do ficheiro de script no mesmo.

  2. Inicialize o Terraform no novo diretório ao escrever o seguinte comando no terminal:

    terraform init 
    
  3. Quando receber a mensagem de confirmação de que o Terraform foi inicializado, execute o script ao escrever o seguinte comando no terminal:

    terraform apply 
    

    Para ingerir registos de uma organização inteira com um único Pub/Sub, introduza:

    terraform apply -var="organization-id= {organizationId} "
    
  4. Quando lhe for perguntado se pretende criar os recursos listados, escreva sim.

Quando o resultado do script for apresentado, guarde os parâmetros de recursos para utilização posterior.

Espere cinco minutos antes de proceder à configuração do conector GCP Pub/Sub no Microsoft Sentinel.

Se também estiver a configurar o conector do GCP Pub/Sub Security Command Center, continue para a secção seguinte.

Caso contrário, avance para Configurar o conector GCP Pub/Sub no Microsoft Sentinel.

Configurar o Centro de Comando de Segurança GCP

As instruções nesta secção destinam-se a utilizar o conector Microsoft Sentinel GCP Pub/Sub Security Command Center.

Veja Configurar registos de auditoria GCP para usar o conector Microsoft Sentinel GCP Pub/Sub Audit Logs.

Consulte Configuração dos registos do GKE para usar o conector Google Kubernetes Engine do Microsoft Sentinel.

Configurar a exportação contínua de resultados

Siga as instruções na documentação do Google Cloud para configurar as exportações Pub/Sub das futuras conclusões do SCC para o serviço GcP Pub/Sub.

  1. Quando lhe for pedido para selecionar um projeto para a sua exportação, selecione um projeto que criou para esta finalidade ou crie um novo projeto.

  2. Quando lhe pedirem para selecionar um tema Pub/Sub onde pretende exportar as suas descobertas, siga as instruções em Criar um tema de publicação para criar um novo tema.

Configurar o conector do Google Kubernetes Engine

As instruções nesta secção destinam-se à utilização do conector Microsoft Sentinel Google Kubernetes Engine.

Veja Configuração do GCP Security Command Center para utilizar o conector do Microsoft Sentinel GCP Pub/Sub Security Command Center.

Consulte a configuração dos Registos de Auditoria do GCP para utilizar o conector do Microsoft Sentinel GCP Pub/Sub Audit Logs.

Use os seguintes passos para criar os recursos GCP Pub/Sub necessários para a recolha de registos GKE usando o Terraform.

  1. Copie o script de configuração do registo de auditoria do Terraform, disponibilizado pelo Microsoft Sentinel, do repositório do Sentinel no GitHub para uma pasta diferente no seu ambiente de Cloud Shell do GCP.

    1. Abra o ficheiro de script Terraform GoogleKubernetesEngineLogSetup e copie o respetivo conteúdo.

    2. Crie outro diretório no seu ambiente de Cloud Shell, introduza-o e crie um novo ficheiro em branco.

      mkdir {other-directory-name} && cd {other-directory-name} && touch gkelog.tf
      
    3. Abra gkelog.tf no editor de Cloud Shell e cole os conteúdos do ficheiro de script no mesmo.

  2. Inicialize o Terraform no novo diretório ao escrever o seguinte comando no terminal:

    terraform init 
    
  3. Quando receber a mensagem de confirmação de que o Terraform foi inicializado, execute o script ao escrever o seguinte comando no terminal:

    terraform apply 
    

    Para ingerir registos de uma organização inteira com um único Pub/Sub, introduza:

    terraform apply -var="organization-id= {organizationId} "
    
  4. Quando lhe for perguntado se pretende criar os recursos listados, escreva sim.

Quando o resultado do script for apresentado, guarde os parâmetros de recursos para utilização posterior.

Espere cinco minutos antes de proceder à configuração do conector GCP Pub/Sub no Microsoft Sentinel.

Configurar o conector GCP Pub/Sub no Microsoft Sentinel

Depois de configurares o teu ambiente GCP, instala a solução de conectores no Microsoft Sentinel e configura um coletor para o teu projeto GCP. Selecione o separador do conector que pretende configurar.

Execute os seguintes passos para instalar e ligar o conector GCP Pub/Sub Audit Logs no Microsoft Sentinel.

  1. Abra o portal do Azure e navegue para o serviço Microsoft Sentinel.

  2. No Hub de conteúdos, na barra de pesquisa, escreva Registos de Auditoria do Google Cloud Platform.

  3. Instale a solução Registos de Auditoria do Google Cloud Platform .

  4. Selecione Conectores de dados, e, na barra de pesquisa, introduza GCP Pub/Sub Audit Logs.

  5. Selecione o conector GCP Pub/Sub Audit Logs.

  6. No painel de detalhes, selecione Abrir página do conector.

  7. Na área Configuração , selecione Adicionar novo recoletor.

    Captura de ecrã da configuração do conector GCP

  8. No painel Connect new collector , escreve os parâmetros de recursos que criaste quando configuraste o ambiente GCP.

    Captura de ecrã do novo painel lateral do recoletor.

  9. Certifique-se de que os valores em todos os campos correspondem aos respetivos homólogos no projeto GCP (os valores na captura de ecrã são exemplos, não literais) e selecione Ligar.

Verifique se os dados do GCP estão no ambiente Microsoft Sentinel

Use os passos seguintes para confirmar que o Microsoft Sentinel está a receber dados do GCP.

  1. Para garantir que os registos do GCP foram ingeridos com sucesso no Microsoft Sentinel, execute a seguinte consulta 30 minutos depois de concluir os passos para configurar o conector GCP Pub/Sub no Microsoft Sentinel.

    GCPAuditLogs 
    | take 10 
    
  2. Ative a funcionalidade de saúde do Microsoft Sentinel para conectores de dados.

Resolução de Problemas

Use as seguintes orientações para resolver problemas comuns ao configurar os conectores GCP Pub/Sub.

  1. "Erro 409: Entidade solicitada já existe" ao executar scripts Terraform: O estado Terraform é o ficheiro que Terraform usa para rastrear os recursos que gere. Se os recursos já existirem no GCP, importa-os para o estado Terraform para que o Terraform os rastreie em vez de tentar recriá-los. Por exemplo, com a mensagem de erro: "Erro a criar WorkloadIdentityPool: googleapi: Erro 409: Entidade solicitada já existe", importa o pool de identidade de carga de trabalho existente para o estado Terraform para que o Terraform possa geri-lo declarativamente. Encontre o ID do pool e o ID do projeto, depois use o seguinte comando para importar o pool de identidade de carga de trabalho existente para o seu estado local do Terraform:
terraform import google_iam_workload_identity_pool.<POOL_RESOURCE_NAME> projects/<PROJECT_ID>/locations/global/workloadIdentityPools/<POOL_ID>

Passos seguintes

Neste artigo, aprendeu a ingerir dados GCP em Microsoft Sentinel com os conectores GCP Pub/Sub. Para saber mais sobre Microsoft Sentinel, consulte os seguintes artigos: