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
- Central de conteúdo > Pacotes de conteúdo
Configure feeds em Configurações do SIEM > Feeds
Para configurar vários feeds para diferentes tipos de registros nessa família de produtos, consulte Configurar feeds por produto.
Para configurar um único feed, siga estas etapas:
- Acesse Configurações do SIEM > Feeds.
- Clique em Adicionar novo feed.
- Na próxima página, clique em Configurar um único feed.
- No campo Nome do feed, insira um nome para o feed, por exemplo, Registros do Firewall do Azure.
- Selecione Microsoft Azure Blob Storage como o Tipo de origem.
- Selecione Azure Firewall como o Tipo de registro.
- Clique em Próxima.
Especifique valores para os seguintes parâmetros de entrada:
- 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:
- URI é um: selecione o TIPO DE URI de acordo com a configuração do fluxo de registros (Arquivo único | Diretório | Diretório que inclui subdiretórios).
Opções de exclusão de origem: selecione a opção de exclusão de acordo com suas preferências de ingestão.
Chave compartilhada: a chave de acesso ao Azure Blob Storage.
Namespace do recurso: o namespace do recurso.
Rótulos de ingestão: o rótulo a ser aplicado aos eventos deste feed.
- URI do Azure: o URL do endpoint do blob.
Clique em Próxima.
Revise a nova configuração do feed na tela Finalizar e clique em Enviar.
Configurar feeds na Central de conteúdo
Especifique valores para os seguintes campos:
- 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,insights-logs-<logname>
)
- Substitua:
- URI é um: selecione o TIPO DE URI de acordo com a configuração do fluxo de registros (Arquivo único | Diretório | Diretório que inclui subdiretórios).
- Opções de exclusão de origem: selecione a opção de exclusão de acordo com suas preferências de ingestão.
- Chave compartilhada: a chave de acesso ao Azure Blob Storage.
Opções avançadas
- Nome do feed: um valor pré-preenchido que identifica o feed.
- Tipo de origem: método usado para coletar registros no Google SecOps.
- Namespace do recurso: namespace associado ao feed.
- Rótulos de ingestão: rótulos aplicados a todos os eventos deste feed.
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.