Recolha registos da firewall de próxima geração do Google Cloud

Compatível com:

Este documento explica como exportar e carregar registos do NGFW da nuvem para o Google Security Operations através do Google Cloud. O analisador extrai campos dos registos da firewall, transforma-os e mapeia-os para o UDM. Google Cloud Processa vários campos de registo, incluindo detalhes de ligação, informações sobre ameaças, detalhes de regras e informações de rede, realizando conversões de tipos de dados, mudando os nomes e aplicando lógica condicional com base nos campos action e direction para preencher corretamente o modelo UDM.

Antes de começar

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

  • Instância do Google SecOps.
  • O Cloud NGFW está ativo e configurado no seu ambiente Google Cloud .
  • Acesso privilegiado a Google Cloud e autorizações adequadas para aceder aos registos do Cloud NGFW.

Crie um contentor do Cloud Storage

  1. Inicie sessão na Google Cloud consola.
  2. Aceda à página Contentores do Cloud Storage.

    Aceda aos contentores

  3. Clique em Criar.

  4. Na página Criar um depósito, introduza as informações do depósito. Após cada um dos passos seguintes, clique em Continuar para avançar para o passo seguinte:

    1. Na secção Começar, faça o seguinte:

      1. Introduza um nome exclusivo que cumpra os requisitos de nome do contentor; por exemplo, gcp-ngfw-logs.
      2. Para ativar o espaço de nomes hierárquico, clique na seta de expansão para expandir a secção Otimizar para cargas de trabalho orientadas para ficheiros e com grande volume de dados e, de seguida, selecione Ativar espaço de nomes hierárquico neste contentor.

      3. Para adicionar uma etiqueta de grupo, clique na seta de expansão para expandir a secção Etiquetas.

      4. Clique em Adicionar etiqueta e especifique uma chave e um valor para a etiqueta.

    2. Na secção Escolha onde quer armazenar os seus dados, faça o seguinte:

      1. Selecione um Tipo de localização.
      2. Use o menu de tipo de localização para selecionar uma Localização onde os dados de objetos no seu contentor vão ser armazenados permanentemente.

      3. Para configurar a replicação entre contentores, expanda a secção Configurar replicação entre contentores.

    3. Na secção Escolha uma classe de armazenamento para os seus dados, selecione uma classe de armazenamento predefinida para o contentor ou selecione Autoclass para a gestão automática da classe de armazenamento dos dados do seu contentor.

    4. Na secção Escolha como controlar o acesso a objetos, selecione não para aplicar a prevenção de acesso público e selecione um modelo de controlo de acesso para os objetos do seu contentor.

    5. Na secção Escolha como proteger os dados de objetos, faça o seguinte:

      1. Selecione qualquer uma das opções em Proteção de dados que quer definir para o seu contentor.
      2. Para escolher como os dados de objetos vão ser encriptados, clique na seta de expansão com a etiqueta Encriptação de dados e selecione um Método de encriptação de dados.
  5. Clique em Criar.

Configure a exportação de registos do NGFW da nuvem

  1. Inicie sessão na Google Cloud consola.
  2. Aceda a Registo > Router de registos.
  3. Clique em Criar destino.
  4. Forneça os seguintes parâmetros de configuração:

    • Nome do destino: introduza um nome significativo; por exemplo, NGFW-Export-Sink.
    • Destino da sincronização: selecione Google Cloud Storage e introduza o URI do seu contentor; por exemplo, gs://gcp-ngfw-logs.
    • Filtro de registo:

      logName="projects/<your-project-id>/logs/gcp-firewall"
      
  5. Clique em Criar.

Configure autorizações para o Cloud Storage

  1. Aceda a IAM e administrador > IAM.
  2. Localize a conta de serviço do Cloud Logging.
  3. Conceda a função roles/storage.admin no contentor.

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 Google Cloud NGFW Enterprise

  1. Clique no pacote Google Cloud Compute platform.
  2. Localize o tipo de registo GCP NGFW Enterprise.
  3. Clicar em Seguinte.
  4. Especifique valores para os seguintes campos:

    • Tipo de origem: Google Cloud Storage V2
    • URI do contentor de armazenamento: Google Cloud URL do contentor de armazenamento; por exemplo, gs://gcp-ngfw-logs.
    • Opções de eliminação da origem: selecione a opção de eliminação de acordo com a sua preferência.

    • Idade máxima do ficheiro: inclua ficheiros modificados no número de dias especificado. A predefinição é 180 dias.

  5. Clique em Obter uma conta de serviço junto ao campo Conta de serviço do Chronicle.

    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.
  6. 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.

Tabela de mapeamento da UDM

Campo de registo Mapeamento de UDM Lógica
insertId metadata.product_log_id Mapeado diretamente a partir do campo insertId.
jsonPayload.action security_result.action_details Mapeado diretamente a partir do campo jsonPayload.action.
jsonPayload.connection.clientIp principal.asset.ip Mapeado diretamente a partir do campo jsonPayload.connection.clientIp.
jsonPayload.connection.clientIp principal.ip Mapeado diretamente a partir do campo jsonPayload.connection.clientIp.
jsonPayload.connection.clientPort principal.port Mapeado diretamente a partir do campo jsonPayload.connection.clientPort e convertido em número inteiro.
jsonPayload.connection.protocol network.ip_protocol Mapeado a partir de jsonPayload.connection.protocol. Se o valor for tcp, o campo UDM é definido como TCP. A mesma lógica aplica-se a udp, icmp e igmp.
jsonPayload.connection.serverIp target.asset.ip Mapeado diretamente a partir do campo jsonPayload.connection.serverIp.
jsonPayload.connection.serverIp target.ip Mapeado diretamente a partir do campo jsonPayload.connection.serverIp.
jsonPayload.connection.serverPort target.port Mapeado diretamente a partir do campo jsonPayload.connection.serverPort e convertido em número inteiro.
jsonPayload.interceptVpc.projectId security_result.rule_labels Mapeado de jsonPayload.interceptVpc.projectId com a chave rule_details_projectId.
jsonPayload.interceptVpc.vpc security_result.rule_labels Mapeado de jsonPayload.interceptVpc.vpc com a chave rule_details_vpc_network.
jsonPayload.securityProfileGroupDetails.securityProfileGroupId security_result.rule_labels Mapeado de jsonPayload.securityProfileGroupDetails.securityProfileGroupId com a chave rule_details_security_profile_group.
jsonPayload.securityProfileGroupDetails.securityProfileGroupId security_result.rule_labels Mapeado de jsonPayload.securityProfileGroupDetails.securityProfileGroupId com a chave rule_details_securityProfileGroupDetails_id.
jsonPayload.threatDetails.category security_result.rule_labels Mapeado de jsonPayload.threatDetails.category com a chave rule_details_category.
jsonPayload.threatDetails.direction security_result.rule_labels Mapeado de jsonPayload.threatDetails.direction com a chave rule_details_direction.
jsonPayload.threatDetails.id security_result.threat_id Mapeado diretamente a partir do campo jsonPayload.threatDetails.id.
jsonPayload.threatDetails.severity security_result.severity Mapeado a partir de jsonPayload.threatDetails.severity. Se o valor for CRITICAL, o campo UDM é definido como CRITICAL. A mesma lógica aplica-se a HIGH, MEDIUM, LOW e INFO.
jsonPayload.threatDetails.threat security_result.threat_name Mapeado diretamente a partir do campo jsonPayload.threatDetails.threat.
jsonPayload.threatDetails.type security_result.rule_labels Mapeado de jsonPayload.threatDetails.type com a chave rule_details_threat_type.
jsonPayload.threatDetails.uriOrFilename security_result.rule_labels Mapeado de jsonPayload.threatDetails.uriOrFilename com a chave rule_details_uriOrFilename.
logName metadata.product_event_type Mapeado diretamente a partir do campo logName.
metadata.collected_timestamp metadata.collected_timestamp Mapeado diretamente a partir do campo receiveTimestamp e analisado através do formato de data especificado.
metadata.event_type metadata.event_type Definido como NETWORK_CONNECTION se principal_ip e target_ip estiverem presentes. Definido como STATUS_UNCATEGORIZED se apenas principal_ip estiver presente. Caso contrário, defina como GENERIC_EVENT.
metadata.product_name metadata.product_name Codificado para GCP Firewall.
metadata.vendor_name metadata.vendor_name Codificado para Google Cloud Platform.
receiveTimestamp metadata.collected_timestamp Mapeado diretamente a partir do campo receiveTimestamp.
security_result.action security_result.action Derivado do campo jsonPayload.action. Mapeado para ALLOW, BLOCK ou UNKNOWN_ACTION com base no valor de jsonPayload.action.
timestamp metadata.event_timestamp Mapeado diretamente a partir do campo timestamp.
timestamp timestamp Mapeado diretamente a partir do campo timestamp.

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