Recolha registos da firewall do Azure
Este documento explica como exportar registos da Firewall do Azure para o Google Security Operations através da conta de armazenamento do Azure. O analisador tenta primeiro processar a entrada como JSON, extraindo dados do campo Registos. Se o campo Record estiver vazio, o analisador usa uma série de padrões Grok e declarações condicionais para extrair campos relevantes da mensagem, processando diferentes formatos e variações nos registos da firewall do Azure.
Antes de começar
Certifique-se de que cumpre os seguintes pré-requisitos:
- Instância do Google SecOps
- Um inquilino do Azure ativo
- Acesso privilegiado ao Azure
Configure a conta de armazenamento do Azure
- Na consola do Azure, pesquise Contas de armazenamento.
- Clique em + Criar.
- Especifique valores para os seguintes parâmetros de entrada:
- Subscrição: selecione a subscrição.
- Grupo de recursos: selecione o grupo de recursos.
- Região: selecione a região.
- Desempenho: selecione o desempenho (padrão recomendado).
- Redundância: selecione a redundância (GRS ou LRS recomendado).
- Nome da conta de armazenamento: introduza um nome para a nova conta de armazenamento.
- Clique em Rever + criar.
- Reveja a vista geral da conta e clique em Criar.
- Na página Vista geral da conta de armazenamento, selecione o submenu Chaves de acesso em Segurança + rede.
- Clique em Mostrar junto a key1 ou key2.
- Clique em Copiar para a área de transferência para copiar a chave.
- Guarde a chave num local seguro para utilização posterior.
- Na página Vista geral da conta de armazenamento, selecione o submenu Pontos finais em Definições.
- Clique em Copiar para a área de transferência para copiar o URL do ponto final do serviço Blob; por exemplo,
https://<storageaccountname>.blob.core.windows.net
. - Guarde o URL do ponto final numa localização segura para utilização posterior.
Como configurar a exportação de registos para registos de firewalls do Azure
- Inicie sessão no Portal do Azure com a sua conta privilegiada.
- Aceda a Firewalls e selecione a firewall necessária.
- Selecione Monitorização > Serviços de diagnóstico.
- Clique em + Adicionar definição de diagnóstico.
- Introduza um nome descritivo para a definição de diagnóstico.
- Selecione allLogs.
- Selecione a caixa de verificação Arquivar numa conta de armazenamento como destino.
- Especifique a Subscrição e a Conta de armazenamento.
- Clique em Guardar.
Configure feeds
Existem dois pontos de entrada diferentes para configurar feeds na plataforma Google SecOps:
- Definições do SIEM > Feeds > Adicionar novo
- Content Hub > Pacotes de conteúdo > Começar
Como configurar o feed da firewall do Azure
- Clique no pacote Plataforma Azure.
- Localize o tipo de registo Firewall do Azure e clique em Adicionar novo feed.
Especifique valores para os seguintes campos:
- Source Type: Microsoft Azure Blob Storage V2.
- URI do Azure: o URL do ponto final do blob.
ENDPOINT_URL/BLOB_NAME
- Substitua o seguinte:
ENDPOINT_URL
: o URL do ponto final do blob (https://<storageaccountname>.blob.core.windows.net
)BLOB_NAME
: o nome do blob (por exemplo,<logname>-logs
)
- Substitua o seguinte:
Opções de eliminação de origens: selecione a opção de eliminação de acordo com as suas preferências de carregamento.
Idade máxima do ficheiro: inclui ficheiros modificados no último número de dias. A predefinição é 180 dias.
Chave partilhada: a chave partilhada (uma string aleatória de 512 bits na codificação base-64) usada para aceder aos recursos do Azure.
Opções avançadas
- Nome do feed: um valor pré-preenchido que identifica o feed.
- Espaço de nomes do recurso: espaço de nomes associado ao feed.
- Etiquetas de carregamento: etiquetas aplicadas a todos os eventos deste feed.
Clique em Criar feed.
Para mais informações sobre a configuração de vários feeds para diferentes tipos de registos nesta família de produtos, consulte o artigo Configure feeds por produto.
Mapeamento de UDM
Campo de registo | Mapeamento do UDM | Lógica |
---|---|---|
@timestamp | metadata.event_timestamp | Converte o campo de registo não processado @timestamp no formato UDM. |
categoria | security_result.rule_type | Mapeia o campo de registo não processado category para o UDM. |
operationName | metadata.product_event_type | Mapeia o campo de registo não processado operationName para o UDM. |
properties.Action | security_result.action | Mapeia o campo de registo não processado properties.Action para o UDM, convertendo ALLOW em ALLOW , DENY em BLOCK e qualquer outro valor em UNKNOWN_ACTION . |
properties.DestinationIp | target.ip | Mapeia o campo de registo não processado properties.DestinationIp para o UDM. |
properties.DestinationPort | target.port | Mapeia o campo de registo não processado properties.DestinationPort para o UDM. |
properties.DnssecOkBit | additional.fields.value.bool_value | Mapeia o campo de registo não processado properties.DnssecOkBit para o UDM. |
properties.EDNS0BufferSize | additional.fields.value.number_value | Mapeia o campo de registo não processado properties.EDNS0BufferSize para o UDM. |
properties.ErrorMessage | additional.fields.value.string_value | Mapeia o campo de registo não processado properties.ErrorMessage para o UDM. |
properties.ErrorNumber | additional.fields.value.number_value | Mapeia o campo de registo não processado properties.ErrorNumber para o UDM. |
properties.Policy | security_result.detection_fields.value | Mapeia o campo de registo não processado properties.Policy para o UDM. |
properties.Protocol | network.ip_protocol | Mapeia o campo de registo não processado properties.Protocol para o UDM se não for HTTPS nem HTTP . |
properties.Protocol | network.application_protocol | Mapeia o campo de registo não processado properties.Protocol para o UDM se for HTTPS ou HTTP . |
properties.QueryClass | network.dns.questions.class | Mapeia o campo de registo não processado properties.QueryClass para o UDM através de uma tabela de consulta para mapear classes de consultas DNS. |
properties.QueryId | network.dns.id | Mapeia o campo de registo não processado properties.QueryId para o UDM. |
properties.QueryName | network.dns.questions.name | Mapeia o campo de registo não processado properties.QueryName para o UDM. |
properties.QueryType | network.dns.questions.type | Mapeia o campo de registo não processado properties.QueryType para o UDM através de uma tabela de pesquisa para mapear tipos de registos de DNS. |
properties.RequestSize | network.sent_bytes | Mapeia o campo de registo não processado properties.RequestSize para o UDM. |
properties.ResponseCode | network.dns.response_code | Mapeia o campo de registo não processado properties.ResponseCode para o UDM através de uma tabela de consulta para mapear códigos de resposta de DNS. |
properties.ResponseFlags | additional.fields.value.string_value | Mapeia o campo de registo não processado properties.ResponseFlags para o UDM. |
properties.ResponseSize | network.received_bytes | Mapeia o campo de registo não processado properties.ResponseSize para o UDM. |
properties.Rule | security_result.rule_name | Mapeia o campo de registo não processado properties.Rule para o UDM. |
properties.RuleCollection | security_result.detection_fields.value | Mapeia o campo de registo não processado properties.RuleCollection para o UDM. |
properties.RuleCollectionGroup | security_result.detection_fields.value | Mapeia o campo de registo não processado properties.RuleCollectionGroup para o UDM. |
properties.SourceIp | principal.ip | Mapeia o campo de registo não processado properties.SourceIp para o UDM. |
properties.SourcePort | principal.port | Mapeia o campo de registo não processado properties.SourcePort para o UDM. |
properties.msg | security_result.description | Mapeia o campo de registo não processado properties.msg para o UDM depois de extrair outros campos do mesmo. |
records.category | security_result.rule_type | Mapeia o campo de registo não processado records.category para o UDM. |
records.operationName | metadata.product_event_type | Mapeia o campo de registo não processado records.operationName para o UDM. |
records.properties.msg | Este campo é usado para extrair vários campos através de padrões Grok e não tem um mapeamento direto para o UDM. | |
records.resourceId | metadata.product_log_id | Mapeia o campo de registo não processado records.resourceId para o UDM. |
resourceId | metadata.product_log_id | Mapeia o campo de registo não processado resourceId para o UDM. |
tempo | metadata.event_timestamp | Converte o campo de registo não processado time no formato UDM. |
metadata.vendor_name | Este campo é preenchido pelo analisador com o valor Microsoft Inc. . |
|
metadata.product_name | Este campo é preenchido pelo analisador com o valor Azure Firewall Application Rule . |
|
metadata.log_type | Este campo é preenchido pelo analisador com o valor AZURE_FIREWALL . |
|
additional.fields.key | Este campo é preenchido pelo analisador com a chave do campo adicional. | |
security_result.detection_fields.key | Este campo é preenchido pelo analisador com a chave do campo de deteção. | |
network.application_protocol | Este campo é preenchido pelo analisador com o valor DNS para registos DNS. |
|
metadata.event_type | Este campo é preenchido pelo analisador com base na mensagem de registo. Pode ser NETWORK_CONNECTION , GENERIC_EVENT , STATUS_UPDATE ou NETWORK_DNS . |
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.