Coletar registros do Firewall do Azure

Compatível com:

Este documento explica como exportar registros do Firewall do Azure para o Google Security Operations usando a conta de armazenamento do Azure. Primeiro, o analisador tenta processar a entrada como JSON, extraindo dados do campo Registros. Se o campo Registro estiver vazio, o analisador usará uma série de padrões Grok e instruções condicionais para extrair campos relevantes da mensagem, processando diferentes formatos e variações nos registros do Firewall do Azure.

Antes de começar

Verifique se você atende aos seguintes pré-requisitos:

  • Instância do Google SecOps
  • Um locatário ativo do Azure
  • Acesso privilegiado ao Azure

Configurar a conta de armazenamento do Azure

  1. No console do Azure, pesquise Contas de armazenamento.
  2. Clique em + Criar.
  3. Especifique valores para os seguintes parâmetros de entrada:
    • Assinatura: selecione a assinatura.
    • Grupo de recursos: selecione o grupo de recursos.
    • Região: selecione a região.
    • Performance: selecione a performance (padrão recomendado).
    • Redundância: selecione a redundância (GRS ou LRS recomendado).
    • Nome da conta de armazenamento: insira um nome para a nova conta de armazenamento.
  4. Clique em Revisar + criar.
  5. Revise a visão geral da conta e clique em Criar.
  6. Na página Visão geral da conta de armazenamento, selecione o submenu Chaves de acesso em Segurança e rede.
  7. Clique em Mostrar ao lado de key1 ou key2.
  8. Clique em Copiar para a área de transferência para copiar a chave.
  9. Salve a chave em um local seguro para uso posterior.
  10. Na página Visão geral da conta de armazenamento, selecione o submenu Endpoints em Configurações.
  11. Clique em Copiar para a área de transferência para copiar o URL do endpoint do serviço de blob. Por exemplo, https://<storageaccountname>.blob.core.windows.net.
  12. Salve o URL do endpoint em um local seguro para uso posterior.

Como configurar a exportação de registros para registros de firewalls do Azure

  1. Faça login no portal do Azure usando sua conta privilegiada.
  2. Acesse Firewalls e selecione o firewall necessário.
  3. Selecione Monitoring > Serviços de diagnóstico.
  4. Clique em + Adicionar configuração de diagnóstico.
    • Insira um nome descritivo para a configuração de diagnóstico.
  5. Selecione allLogs.
  6. Marque a caixa de seleção Arquivar em uma conta de armazenamento como destino.
    • Especifique a Assinatura e a Conta de armazenamento.
  7. Clique em Salvar.

Configurar feeds

Há dois pontos de entrada diferentes para configurar feeds na plataforma do Google SecOps:

  • Configurações do SIEM > Feeds > Adicionar novo
  • Central de conteúdo > Pacotes de conteúdo > Começar

Como configurar o feed do Firewall do Azure

  1. Clique no pacote Plataforma do Azure.
  2. Localize o tipo de registro Firewall do Azure e clique em Adicionar novo feed.
  3. Especifique valores para os seguintes campos:

    • Tipo de origem: armazenamento de blobs V2 do Microsoft Azure.
    • URI do Azure: o URL do endpoint do blob.
      • ENDPOINT_URL/BLOB_NAME
        • Substitua:
          • ENDPOINT_URL: o URL do endpoint do blob (https://<storageaccountname>.blob.core.windows.net)
          • BLOB_NAME: o nome do blob (por exemplo, <logname>-logs)
    • Opções de exclusão de origem: selecione a opção de exclusão de acordo com suas preferências de ingestão.

    • Idade máxima do arquivo: inclui arquivos modificados no último número de dias. O padrão é de 180 dias.

    • Chave compartilhada: a chave compartilhada (uma string aleatória de 512 bits em codificação base64) usada para acessar recursos do Azure.

    Opções avançadas

    • Nome do feed: um valor pré-preenchido que identifica o feed.
    • Namespace do recurso: namespace associado ao feed.
    • Rótulos de ingestão: rótulos aplicados a todos os eventos deste feed.
  4. Clique em Criar feed.

Para mais informações sobre como configurar vários feeds para diferentes tipos de registros nessa família de produtos, consulte Configurar feeds por produto.

Mapeamento do UDM

Campo de registro Mapeamento da UDM Lógica
@timestamp metadata.event_timestamp Converte o campo de registro bruto @timestamp para o formato UDM.
categoria security_result.rule_type Mapeia o campo de registro bruto category para UDM.
operationName metadata.product_event_type Mapeia o campo de registro bruto operationName para UDM.
properties.Action security_result.action Mapeia o campo de registro bruto properties.Action para o UDM, convertendo ALLOW para ALLOW, DENY para BLOCK e qualquer outro valor para UNKNOWN_ACTION.
properties.DestinationIp target.ip Mapeia o campo de registro bruto properties.DestinationIp para UDM.
properties.DestinationPort target.port Mapeia o campo de registro bruto properties.DestinationPort para UDM.
properties.DnssecOkBit additional.fields.value.bool_value Mapeia o campo de registro bruto properties.DnssecOkBit para UDM.
properties.EDNS0BufferSize additional.fields.value.number_value Mapeia o campo de registro bruto properties.EDNS0BufferSize para UDM.
properties.ErrorMessage additional.fields.value.string_value Mapeia o campo de registro bruto properties.ErrorMessage para UDM.
properties.ErrorNumber additional.fields.value.number_value Mapeia o campo de registro bruto properties.ErrorNumber para UDM.
properties.Policy security_result.detection_fields.value Mapeia o campo de registro bruto properties.Policy para UDM.
properties.Protocol network.ip_protocol Mapeia o campo de registro bruto properties.Protocol para UDM se não for HTTPS ou HTTP.
properties.Protocol network.application_protocol Mapeia o campo de registro bruto properties.Protocol para UDM se for HTTPS ou HTTP.
properties.QueryClass network.dns.questions.class Mapeia o campo de registro bruto properties.QueryClass para UDM usando uma tabela de pesquisa para mapear classes de consulta DNS.
properties.QueryId network.dns.id Mapeia o campo de registro bruto properties.QueryId para UDM.
properties.QueryName network.dns.questions.name Mapeia o campo de registro bruto properties.QueryName para UDM.
properties.QueryType network.dns.questions.type Mapeia o campo de registro bruto properties.QueryType para UDM usando uma tabela de pesquisa para mapear tipos de registro DNS.
properties.RequestSize network.sent_bytes Mapeia o campo de registro bruto properties.RequestSize para UDM.
properties.ResponseCode network.dns.response_code Mapeia o campo de registro bruto properties.ResponseCode para UDM usando uma tabela de pesquisa para mapear códigos de resposta DNS.
properties.ResponseFlags additional.fields.value.string_value Mapeia o campo de registro bruto properties.ResponseFlags para UDM.
properties.ResponseSize network.received_bytes Mapeia o campo de registro bruto properties.ResponseSize para UDM.
properties.Rule security_result.rule_name Mapeia o campo de registro bruto properties.Rule para UDM.
properties.RuleCollection security_result.detection_fields.value Mapeia o campo de registro bruto properties.RuleCollection para UDM.
properties.RuleCollectionGroup security_result.detection_fields.value Mapeia o campo de registro bruto properties.RuleCollectionGroup para UDM.
properties.SourceIp principal.ip Mapeia o campo de registro bruto properties.SourceIp para UDM.
properties.SourcePort principal.port Mapeia o campo de registro bruto properties.SourcePort para UDM.
properties.msg security_result.description Mapeia o campo de registro bruto properties.msg para o UDM depois de extrair outros campos dele.
records.category security_result.rule_type Mapeia o campo de registro bruto records.category para UDM.
records.operationName metadata.product_event_type Mapeia o campo de registro bruto records.operationName para UDM.
records.properties.msg Esse campo é usado para extrair vários campos usando padrões Grok e não tem um mapeamento direto para a UDM.
records.resourceId metadata.product_log_id Mapeia o campo de registro bruto records.resourceId para UDM.
resourceId metadata.product_log_id Mapeia o campo de registro bruto resourceId para UDM.
tempo metadata.event_timestamp Converte o campo de registro bruto time para o formato UDM.
metadata.vendor_name Esse campo é preenchido pelo analisador com o valor Microsoft Inc..
metadata.product_name Esse campo é preenchido pelo analisador com o valor Azure Firewall Application Rule.
metadata.log_type Esse campo é preenchido pelo analisador com o valor AZURE_FIREWALL.
additional.fields.key Esse campo é preenchido pelo analisador com a chave do campo adicional.
security_result.detection_fields.key Esse campo é preenchido pelo analisador com a chave do campo de detecção.
network.application_protocol Esse campo é preenchido pelo analisador com o valor DNS para registros de DNS.
metadata.event_type Esse campo é preenchido pelo analisador com base na mensagem de registro. Pode ser NETWORK_CONNECTION, GENERIC_EVENT, STATUS_UPDATE ou NETWORK_DNS.

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