Recolha registos do Microsoft Sentinel

Compatível com:

Vista geral

Este analisador extrai campos dos registos JSON do Microsoft Sentinel, realiza transformações como a extração de endereços IP e a manipulação de strings, e mapeia os dados extraídos para o UDM, incluindo os campos principal, destino, security_result e metadados. Também processa vários tipos de dados e une as entidades extraídas na estrutura do UDM.

Antes de começar

Certifique-se de que tem os seguintes pré-requisitos:

  • Instância do Google SecOps.
  • Acesso ao Microsoft Sentinel.

Configure feeds a partir de Definições do SIEM > Feeds

Para configurar um feed, siga estes passos:

  1. Aceda a Definições do SIEM > Feeds.
  2. Clique em Adicionar novo feed.
  3. Na página seguinte, clique em Configurar um único feed.
  4. No campo Nome do feed, introduza um nome para o feed; por exemplo, Registos do Microsoft Sentinel.
  5. Selecione Webhook como o Tipo de origem.
  6. Selecione Microsoft Sentinel como o Tipo de registo.
  7. Clicar em Seguinte.
  8. Opcional: especifique valores para os seguintes parâmetros de entrada:
    • Delimitador de divisão: o delimitador usado para separar linhas de registo, como \n.
  9. Clicar em Seguinte.
  10. Reveja a nova configuração do feed no ecrã Finalizar e, de seguida, clique em Enviar.
  11. Clique em Gerar chave secreta para gerar uma chave secreta para autenticar este feed.
  12. Copie e armazene a chave secreta, uma vez que não pode voltar a ver este segredo. Pode gerar novamente uma nova chave secreta, mas a regeneração da chave secreta torna a chave secreta anterior obsoleta.
  13. No separador Detalhes, copie o URL do ponto final do feed do campo Informações do ponto final. Tem de especificar este URL do ponto final na sua aplicação cliente.
  14. Clique em Concluído.

Crie uma chave da API para o feed de webhook

  1. Aceda à Google Cloud consola > Credenciais.

    Aceder a Credenciais

  2. Clique em Criar credenciais e, de seguida, selecione Chave de API.

  3. Restrinja o acesso da chave da API à API Chronicle.

Especifique o URL do ponto final

  1. Na aplicação cliente, especifique o URL do ponto final HTTPS fornecido no feed do webhook.
  2. Ative a autenticação especificando a chave da API e a chave secreta como parte do cabeçalho personalizado no seguinte formato:

    X-goog-api-key = API_KEY
    X-Webhook-Access-Key = SECRET
    

    Recomendação: especifique a chave da API como um cabeçalho em vez de a especificar no URL. Se o seu cliente de webhook não suportar cabeçalhos personalizados, pode especificar a chave da API e a chave secreta através de parâmetros de consulta no seguinte formato:

    ENDPOINT_URL?key=API_KEY&secret=SECRET
    

Substitua o seguinte:

  • ENDPOINT_URL: o URL do ponto final do feed.
  • API_KEY: a chave da API para autenticar no Google Security Operations.
  • SECRET: a chave secreta que gerou para autenticar o feed.

Configure a app Logic para incidentes do Microsoft Sentinel

Para configurar a app lógica para incidentes do Microsoft Sentinel, siga estes passos:

  1. Inicie sessão no portal do Azure.
  2. Clique em Criar um recurso.
  3. Pesquise a app Logic.
  4. Clique em Criar para iniciar o processo de criação.
  5. Especifique valores para os seguintes parâmetros de entrada:
    • Subscrição: selecione a subscrição.
    • Grupo de recursos: selecione o grupo de recursos.
    • Nome: introduza um nome para a app Logic.
    • Região: selecione a região.
    • Espaço de trabalho do Log Analytics: selecione o espaço de trabalho do Log Analytics.
  6. Clique em Rever + criar.
  7. Clique em Criar.
  8. Depois de criar a Logic App, clique em Aceder ao recurso.
  9. Clique em Ferramentas de desenvolvimento > Logic App Designer.
  10. Clique em Adicionar um acionador.
  11. Pesquise Microsoft Sentinel.
  12. Selecione Incidente do Microsoft Sentinel como acionador.
  13. Se ainda não criou uma ligação ao Microsoft Sentinel, tem de o fazer agora. Clique em Criar novo e siga as instruções para fazer a autenticação.
  14. Clique em Inserir uma nova etapa.
  15. Clique em Adicionar uma ação.
  16. Pesquise e selecione HTTP como ação.
  17. Especifique valores para os seguintes parâmetros de entrada:
    • URI: o URL do ponto final do feed.
    • Método: POST
    • Cabeçalhos: adicione os seguintes cabeçalhos:
      • Content-Type: application/json
      • X-goog-api-key: a chave da API para autenticar no Google Security Operations.
      • X-Webhook-Access-Key: a chave secreta que gerou para autenticar o feed.

Configure a app Logic para alertas do Microsoft Sentinel

Para configurar a app Logic para alertas do Microsoft Sentinel, siga estes passos:

  1. Aceda à página inicial do portal do Azure.
  2. Clique em Criar um recurso.
  3. Pesquise a app Logic.
  4. Clique em Criar para iniciar o processo de criação.
  5. Especifique valores para os seguintes parâmetros de entrada:
    • Subscrição: selecione a subscrição.
    • Grupo de recursos: selecione o grupo de recursos.
    • Nome: introduza um nome para a app Logic.
    • Região: selecione a região.
    • Espaço de trabalho do Log Analytics: selecione o espaço de trabalho do Log Analytics.
  6. Clique em Rever + criar.
  7. Clique em Criar.
  8. Depois de criar a Logic App, clique em Aceder ao recurso.
  9. Clique em Ferramentas de desenvolvimento > Logic App Designer.
  10. Clique em Adicionar um acionador.
  11. Pesquise Microsoft Sentinel.
  12. Selecione Alerta do Microsoft Sentinel como acionador.
  13. Se ainda não criou uma ligação ao Microsoft Sentinel, tem de o fazer agora. Clique em Criar novo e siga as instruções para fazer a autenticação.
  14. Clique em Inserir uma nova etapa.
  15. Clique em Adicionar uma ação.
  16. Pesquise e selecione HTTP como ação.
  17. Especifique valores para os seguintes parâmetros de entrada:
    • URI: o URL do ponto final do feed.
    • Método: POST
    • Cabeçalhos: adicione os seguintes cabeçalhos:
      • Content-Type: application/json
      • X-goog-api-key: a chave da API para autenticar no Google Security Operations.
      • X-Webhook-Access-Key: a chave secreta que gerou para autenticar o feed.

Configure regras de automatização para o Microsoft Sentinel

Para configurar regras de automatização para o Microsoft Sentinel, siga estes passos:

  1. Aceda ao Microsoft Sentinel Workspace.
  2. Clique em Configuração > Automação.
  3. Clique em Criar.
  4. Selecione Regra de automatização.
  5. Especifique valores para os seguintes parâmetros de entrada:
    • Nome: introduza um nome para a regra de automatização.
    • Acionador: selecione Quando o incidente é criado.
    • Ações: selecione Executar manual de procedimentos > App Logic criada para incidentes.
  6. Clique em Aplicar.
  7. Clique em Criar.
  8. Selecione Regra de automatização.
  9. Especifique valores para os seguintes parâmetros de entrada:
    • Nome: introduza um nome para a regra de automatização.
    • Acionador: selecione Quando o incidente é atualizado.
    • Condição: clique em Adicionar > Condição (e) > Estado > Alterado.
    • Ações: selecione Executar manual de procedimentos > App Logic criada para incidentes.
  10. Clique em Aplicar.
  11. Clique em Criar.
  12. Selecione Regra de automatização.
  13. Especifique valores para os seguintes parâmetros de entrada:
    • Nome: introduza um nome para a regra de automatização.
    • Acionador: selecione Quando o alerta é criado.
    • Ações: selecione Executar guia interativo > App Logic criada para alertas.
  14. Clique em Aplicar.

Tabela de mapeamento da UDM

Campo de registo Mapeamento de UDM Lógica
AlertGenerationStatus security_result.detection_fields.AlertGenerationStatus Mapeado diretamente a partir do campo ExtendedProperties após a análise de JSON.
AlertLink principal.labels.AlertLink Mapeado diretamente.
AlertName security_result.rule_name Mapeado diretamente.
AlertSeverity security_result.severity Mapeado diretamente, convertido em letras maiúsculas. Se o valor for um de HIGH, MEDIUM, LOW, CRITICAL ou UNKNOWN_SEVERITY, é mapeado para security_result.severity. Caso contrário, é mapeado para security_result.severity_details.
AlertType security_result.threat_name Mapeado diretamente.
Category security_result.detection_fields.Category Mapeado diretamente a partir do campo ExtendedProperties após a análise de JSON.
CompromisedEntity principal.resource.attribute.labels.CompromisedEntity Mapeado diretamente.
CompromisedEntityId security_result.detection_fields.CompromisedEntityId Mapeado diretamente a partir do campo ExtendedProperties após a análise de JSON.
ConfidenceLevel security_result.confidence_details Mapeado diretamente.
ConfidenceScore security_result.detection_fields.ConfidenceScore Mapeado diretamente.
cribl_pipe additional.fields.cribl_pipe Mapeado diretamente.
Description security_result.description Mapeado diretamente.
DestinationDevice security_result.detection_fields.DestinationDevice OU target.ip Mapeado a partir do campo ExtendedProperties após a análise JSON. Se o valor for um endereço IP válido, é mapeado para target.ip. Caso contrário, é mapeado como um campo de deteção.
DestinationDeviceAddress target.ip Mapeado a partir do campo ExtendedProperties após a análise JSON, apenas se for um endereço IP válido.
DeviceId security_result.detection_fields.DeviceId Mapeado diretamente a partir do campo ExtendedProperties após a análise de JSON.
DisplayName security_result.summary Mapeado diretamente.
EndTime about.labels.EndTime Mapeado diretamente.
Entities.Address principal.asset.ip Extraído da matriz Entities após a análise JSON. Apenas os endereços IP são mapeados.
Entities.HostName principal.asset.hostname OU principal.asset.ip Extraído da matriz Entities após a análise JSON. Se o valor for um endereço IP válido, é mapeado para principal.asset.ip. Caso contrário, é mapeado para principal.asset.hostname.
Entities.IoTDevice.DeviceId security_result.detection_fields.IoTDeviceID Extraído da matriz Entities após a análise JSON.
Entities.IoTDevice.DeviceType security_result.detection_fields.IoTDeviceType Extraído da matriz Entities após a análise JSON.
Entities.IoTDevice.DeviceTypeId security_result.detection_fields.IoTDeviceTypeId Extraído da matriz Entities após a análise JSON.
Entities.IoTDevice.Importance security_result.detection_fields.IoTDeviceImportance Extraído da matriz Entities após a análise JSON.
Entities.IoTDevice.IoTSecurityAgentId security_result.detection_fields.IoTSecurityAgentId Extraído da matriz Entities após a análise JSON.
Entities.IoTDevice.Manufacturer security_result.detection_fields.IoT Manufacturer Extraído da matriz Entities após a análise JSON.
Entities.IoTDevice.OperatingSystem principal.asset.platform_software.platform_version Extraído da matriz Entities após a análise JSON. Os espaços finais foram removidos.
Entities.IoTDevice.PurdueLayer security_result.detection_fields.IoT PurdueLayer Extraído da matriz Entities após a análise JSON.
Entities.IoTDevice.Sensor security_result.detection_fields.IoT Sensor Extraído da matriz Entities após a análise JSON.
ExtendedProperties.Protocol security_result.detection_fields.Protocol Mapeado diretamente a partir do campo ExtendedProperties após a análise de JSON.
ExtendedProperties.SensorId security_result.detection_fields.SensorId Mapeado diretamente a partir do campo ExtendedProperties após a análise de JSON.
ExtendedProperties.SourceDevice principal.ip OU security_result.detection_fields.SourceDevice Mapeado a partir do campo ExtendedProperties após a análise JSON. Se o valor for um endereço IP válido, é mapeado para principal.ip. Caso contrário, é mapeado como um campo de deteção.
ExtendedProperties.SourceDeviceAddress principal.ip Mapeado a partir do campo ExtendedProperties após a análise JSON, apenas se for um endereço IP válido.
IsIncident security_result.detection_fields.IsIncident Mapeado diretamente, convertido em string.
ProcessingEndTime about.labels.ProcessingEndTime Mapeado diretamente.
ProductComponentName principal.resource.attribute.labels.ProductComponentName Mapeado diretamente.
ProductName principal.resource.attribute.labels.ProductName Mapeado diretamente.
ProviderName principal.resource.attribute.labels.ProviderName Mapeado diretamente.
ResourceId principal.resource.product_object_id, target.resource.name Mapeado diretamente.
SourceComputerId principal.asset.asset_id Mapeado diretamente, com o prefixo "SourceComputerId:".
SourceSystem security_result.detection_fields.SourceSystem Mapeado diretamente.
StartTime about.labels.StartTime Mapeado diretamente.
Status security_result.detection_fields.Status Mapeado diretamente.
SystemAlertId metadata.product_log_id Mapeado diretamente.
Tactics security_result.attack_details.tactics.name Extraído do campo Tactics após a análise JSON e a remoção da barra invertida.
Techniques security_result.attack_details.techniques.id Extraído do campo Techniques após a análise JSON e a remoção da barra invertida.
TenantId additional.fields.TenantId Mapeado diretamente.
TimeGenerated about.labels.TimeGenerated Mapeado diretamente.
timestamp metadata.event_timestamp, events.timestamp Mapeado diretamente.
VendorName metadata.vendor_name Mapeado diretamente.
VendorOriginalId additional.fields.VendorOriginalId Mapeado diretamente.
_time metadata.event_timestamp, events.timestamp Analisado como uma data/hora através do formato UNIX ou UNIX_MS.
(Lógica do analisador) metadata.event_type Definido como "USER_RESOURCE_ACCESS" se o principal, o destino e o ResourceId estiverem presentes. Caso contrário, defina como "GENERIC_EVENT".
(Lógica do analisador) metadata.log_type Definido como "MICROSOFT_SENTINEL".
(Lógica do analisador) metadata.product_name Definido como "MICROSOFT_SENTINEL".

Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.