Coletar registros do Firewall do Azure
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
- No console do Azure, pesquise Contas de armazenamento.
- Clique em + Criar.
- 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.
- Clique em Revisar + criar.
- Revise a visão geral da conta e clique em Criar.
- Na página Visão geral da conta de armazenamento, selecione o submenu Chaves de acesso em Segurança e rede.
- Clique em Mostrar ao lado de key1 ou key2.
- Clique em Copiar para a área de transferência para copiar a chave.
- Salve a chave em um local seguro para uso posterior.
- Na página Visão geral da conta de armazenamento, selecione o submenu Endpoints em Configurações.
- 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
. - 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
- Faça login no portal do Azure usando sua conta privilegiada.
- Acesse Firewalls e selecione o firewall necessário.
- Selecione Monitoring > Serviços de diagnóstico.
- Clique em + Adicionar configuração de diagnóstico.
- Insira um nome descritivo para a configuração de diagnóstico.
- Selecione allLogs.
- Marque a caixa de seleção Arquivar em uma conta de armazenamento como destino.
- Especifique a Assinatura e a Conta de armazenamento.
- 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
- Clique no pacote Plataforma do Azure.
- Localize o tipo de registro Firewall do Azure e clique em Adicionar novo feed.
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
)
- Substitua:
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.
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.