Coletar registros do Secure Access Service Edge (SASE) da Versa Networks

Compatível com:

Este documento explica como ingerir registros do Secure Access Service Edge (SASE) da Versa Networks no Google Security Operations usando o agente do Bindplane.

O SASE da Versa Networks é uma plataforma unificada de segurança e rede que gera mensagens de syslog para eventos de firewall, registros de ameaças, classificação de aplicativos, filtragem de URLs, detecções do SDI/IPS e eventos de alarme. O analisador extrai pares de chave-valor das mensagens do syslog e os mapeia para o modelo de dados unificado (UDM).

Antes de começar

Verifique se você tem os pré-requisitos a seguir:

  • Uma instância do Google SecOps
  • Windows Server 2016 ou mais recente ou host do Linux com systemd
  • Conectividade de rede entre o agente do Bindplane e o nó do Versa Analytics
  • Se estiver em execução atrás de um proxy, verifique se as portas do firewall estão abertas de acordo com os requisitos do agente do Bindplane.
  • Acesso privilegiado ao Versa SASE

Receber credenciais do Google SecOps para o agente do BindPlane

Para autenticar o agente do Bindplane no Google SecOps, escolha um dos seguintes métodos:

  • Novas implantações: use a API Chronicle (opção 1).
  • Implantações legadas: continue usando o arquivo de autenticação de ingestão (opção 2) até que a API Ingestion seja desativada em 20 de julho de 2027.
  1. Faça login no consoleGoogle Cloud e selecione o projeto Google Cloud vinculado à sua instância do Google SecOps.
  2. Acesse IAM e administrador > Contas de serviço.
  3. Clique em Criar conta de serviço.
  4. Informe os seguintes detalhes de configuração:
    • Nome da conta de serviço: insira um nome para a conta (por exemplo, bindplane-ingest).
    • Descrição da conta de serviço: insira uma descrição (por exemplo, Bindplane agent log ingestion).
  5. Clique em Criar e continuar.
  6. Na seção Conceder a essa conta de serviço acesso ao projeto, clique em Selecionar um papel e escolha Editor do Chronicle.
  7. Clique em Continuar e depois em Concluído.
  8. Clique na conta de serviço que você criou e acesse a guia Chaves.
  9. Clique em Adicionar chave > Criar nova chave.
  10. Selecione JSON e clique em Criar. O download do arquivo de chave é feito no seu computador.
  11. Salve o arquivo de chave como ingestion-auth.json no diretório do coletor do BindPlane (/opt/observiq-otel-collector/ingestion-auth.json no Linux ou C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json no Windows) ou atualize creds_file_path em config.yaml para corresponder ao caminho em que você o salvou.
  12. Acesse IAM e administrador > Configurações e copie o número do projeto. Você vai precisar dele para configurar o exportador.

Opção 2: baixar o arquivo de autenticação de ingestão (legado)

  1. Faça login no console do Google SecOps.
  2. Acesse Configurações do SIEM > Agentes de coleta.
  3. Faça o download do arquivo de autenticação de ingestão.
  4. Salve o arquivo com segurança no sistema em que o agente do Bindplane será instalado.

Receber o ID de cliente do Google SecOps

  1. Faça login no console do Google SecOps.
  2. Acesse Configurações do SIEM > Perfil.
  3. Copie e salve o ID de cliente na seção Detalhes da organização.

Instalar o agente do BindPlane

Instale o agente do Bindplane no seu sistema operacional Windows ou Linux de acordo com as instruções a seguir.

Instalação do Windows

  1. Abra o Prompt de comando ou o PowerShell como administrador.
  2. Execute este comando:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    
  3. Aguarde a conclusão da instalação.

  4. Execute o seguinte comando para confirmar a instalação:

    sc query observiq-otel-collector
    

    O serviço precisa aparecer como RUNNING.

Instalação do Linux

  1. Abra um terminal com privilégios de raiz ou sudo.
  2. Execute este comando:

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    
  3. Aguarde a conclusão da instalação.

  4. Execute o seguinte comando para confirmar a instalação:

    sudo systemctl status observiq-otel-collector
    

    O serviço precisa aparecer como active (running).

Outros recursos de instalação

Para mais opções de instalação e solução de problemas, consulte o guia de instalação do agente do Bindplane.

Configurar o agente do Bindplane para ingerir syslog e enviar ao Google SecOps

Localizar o arquivo de configuração

  • Linux:

    sudo nano /opt/observiq-otel-collector/config.yaml
    
  • Windows:

    notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
    

Editar o arquivo de configuração

  • Substitua todo o conteúdo de config.yaml pela seguinte configuração:

    receivers:
      tcplog:
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/versa_firewall:
        protocol: https
        # Region of your instance, for example us, europe, asia-southeast1
        location: <LOCATION>
        # Project number of the Google Cloud project linked to the instance
        project: '<PROJECT_NUMBER>'
        compression: gzip
        creds_file_path: '/opt/observiq-otel-collector/ingestion-auth.json'
        customer_id: '<customer_id>'
        endpoint: chronicle.googleapis.com
        log_type: VERSA_FIREWALL
        raw_log_field: body
    
    service:
      pipelines:
        logs/versa_firewall_to_chronicle:
          receivers:
            - tcplog
          exporters:
            - chronicle/versa_firewall
    

Parâmetros de configuração

Substitua os seguintes marcadores de posição:

  • Configuração do receptor:

    • listen_address: endereço IP e porta a serem detectados:
      • 0.0.0.0 para ouvir em todas as interfaces (recomendado)
      • A porta 514 é a porta padrão do syslog (requer raiz no Linux; use 1514 para não raiz).
      • O Versa usa o transporte TCP, então o receptor tcplog é obrigatório
  • Configuração do exportador:

    • creds_file_path: caminho completo para o arquivo de chave JSON da conta de serviço (opção 1):
      • Linux: /opt/observiq-otel-collector/ingestion-auth.json
      • Windows: C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
    • customer_id: ID de cliente copiado do console do Google SecOps
    • location: substitua <LOCATION> pela região da sua instância do Google SecOps (por exemplo, us, europe ou asia-southeast1). O exportador prefixa chronicle.googleapis.com com esse valor. Consulte Endpoints regionais para ver a lista completa.
    • project: substitua <PROJECT_NUMBER> pelo número do projeto em IAM e administrador > Configurações.
    • endpoint: mantenha definido como chronicle.googleapis.com.

Exportador da API de ingestão legada

  • Se você usar o arquivo de autenticação de ingestão da opção 2, substitua o bloco exporters pelo seguinte. Defina creds_file_path como o caminho para o arquivo de autenticação de ingestão e, se a instância estiver fora dos EUA, substitua malachiteingestion-pa.googleapis.com pelo endpoint regional (por exemplo, europe-malachiteingestion-pa.googleapis.com).

    exporters:
      chronicle/versa_firewall:
        compression: gzip
        creds_file_path: '/opt/observiq-otel-collector/ingestion-auth.json'
        customer_id: '<customer_id>'
        endpoint: malachiteingestion-pa.googleapis.com
        log_type: VERSA_FIREWALL
        raw_log_field: body
    

Salvar o arquivo de configuração

  • Depois de editar, salve o arquivo:
    • Linux: pressione Ctrl+O, Enter e Ctrl+X.
    • Windows: clique em Arquivo > Salvar.

Reinicie o agente do Bindplane para aplicar as mudanças:

  • Para reiniciar o agente do Bindplane no Linux, execute o seguinte comando:

    sudo systemctl restart observiq-otel-collector
    
    1. Verifique se o serviço está em execução:

      sudo systemctl status observiq-otel-collector
      
    2. Verifique se há erros nos registros:

      sudo journalctl -u observiq-otel-collector -f
      
  • Para reiniciar o agente do BindPlane no Windows, escolha uma das seguintes opções:

    • Prompt de comando ou PowerShell como administrador:

      net stop observiq-otel-collector && net start observiq-otel-collector
      
    • Console de serviços:

      1. Pressione Win+R, digite services.msc e pressione Enter.
      2. Localize o Coletor do OpenTelemetry da observIQ.
      3. Clique com o botão direito do mouse e selecione Reiniciar.
      4. Verifique se o serviço está em execução:

        sc query observiq-otel-collector
        
      5. Verifique se há erros nos registros:

        type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
        

Configurar o SASE da Versa Networks

Os administradores precisam configurar coletores remotos em cada nó do Versa Analytics para encaminhar registros para sistemas de terceiros.

Ativar o encaminhamento de registros

  1. Faça login no servidor de análise da Versa.
  2. Acesse a CLI executando o comando cli.
  3. Mude para o modo de configuração executando o comando configure e insira load merge terminal.
  4. Copie e cole os comandos a seguir para configurar o encaminhamento de registros (substitua <collector_ip> e <collector_port> pelo endereço IP e pela porta do coletor de syslog):

    set system analytics log-collector-exporter destination-address <collector_ip>
    set system analytics log-collector-exporter destination-port <collector_port>
    set system analytics log-collector-exporter transport tcp
    set system analytics log-collector-exporter log-types firewall-log
    set system analytics log-collector-exporter log-types threat-log
    commit
    
  5. Salve a configuração:

    save
    

Ativar o registro de ID da sessão

Para registrar informações relacionadas ao IP, ative o registro de ID da sessão:

  1. Faça login no Versa Director.
  2. Mude para a Visualização do Diretor.
  3. Acesse Configuração > Dispositivos > Inquilino > Dispositivo para acessar a Visualização do dispositivo.
  4. Selecione Configuração > Outros > Sistema > Configuração > Configuração.
  5. No painel Parâmetros, clique em Editar.
  6. Na janela Editar parâmetros, selecione LEF.
  7. Na seção Firewall, marque a caixa de seleção Incluir registro de ID da sessão.
  8. Clique em OK.

Tabela de mapeamento de UDM

Campo de registro Mapeamento de UDM Lógica
accCkt additional.fields[].key: "accCkt"
additional.fields[].value.string_value: accCkt
Valor extraído diretamente do campo accCkt.
accCktId additional.fields[].key: "accCktId"
additional.fields[].value.string_value: accCktId
Valor extraído diretamente do campo accCktId.
accCktName additional.fields[].key: "accCktName"
additional.fields[].value.string_value: accCktName
Valor extraído diretamente do campo accCktName.
accessType additional.fields[].key: "accessType"
additional.fields[].value.string_value: accessType
Valor extraído diretamente do campo accessType.
action security_result.action: action Se action, type, idpAction, avAction ou urlAction forem "permitir", então ALLOW. Se action, type, idpAction, avAction ou urlAction forem "reject", "drop", "block", "deny", então BLOCK. Se idpAction for qualquer outra coisa, UNKNOWN_ACTION.
alarmCause security_result.detection_fields[].key: "alarmCause"
security_result.detection_fields[].value: alarmCause
Valor extraído diretamente do campo alarmCause.
alarmClass security_result.detection_fields[].key: "alarmClass"
security_result.detection_fields[].value: alarmClass
Valor extraído diretamente do campo alarmClass.
alarmClearable security_result.detection_fields[].key: "alarmClearable"
security_result.detection_fields[].value: alarmClearable
Valor extraído diretamente do campo alarmClearable.
alarmEventType metadata.product_event_type: alarmEventType Valor extraído diretamente do campo alarmEventType.
alarmKey security_result.detection_fields[].key: "alarmKey"
security_result.detection_fields[].value: alarmKey
Valor extraído diretamente do campo alarmKey.
alarmKind security_result.detection_fields[].key: "alarmKind"
security_result.detection_fields[].value: alarmKind
Valor extraído diretamente do campo alarmKind.
alarmOwner security_result.detection_fields[].key: "alarmOwner"
security_result.detection_fields[].value: alarmOwner
Valor extraído diretamente do campo alarmOwner.
alarmSeqNo security_result.detection_fields[].key: "alarmSeqNo"
security_result.detection_fields[].value: alarmSeqNo
Valor extraído diretamente do campo alarmSeqNo.
alarmSeverity security_result.severity_details: alarmSeverity Valor extraído diretamente do campo alarmSeverity.
alarmText security_result.summary: alarmText Valor extraído diretamente do campo alarmText, com aspas duplas removidas.
alarmType security_result.description: alarmType Valor extraído diretamente do campo alarmType.
appFamily metadata.product_event_type: appFamily
security_result.detection_fields[].key: "appFamily"
security_result.detection_fields[].value: appFamily
Valor extraído diretamente do campo appFamily.
appId security_result.detection_fields[].key: "ID do aplicativo"
security_result.detection_fields[].value: appId
Valor extraído diretamente do campo appId.
appIdStr security_result.detection_fields[].key: "appIdStr"
security_result.detection_fields[].value: appIdStr
Valor extraído diretamente do campo appIdStr.
applianceName principal.hostname: applianceName Valor extraído diretamente do campo applianceName, siteName ou site.
appProductivity security_result.detection_fields[].key: "appProductivity"
security_result.detection_fields[].value: appProductivity
Valor extraído diretamente do campo appProductivity.
appRisk security_result.severity_details: appRisk Valor extraído diretamente do campo appRisk.
appSubFamily security_result.detection_fields[].key: "appSubFamily"
security_result.detection_fields[].value: appSubFamily
Valor extraído diretamente do campo appSubFamily.
avAccuracy additional.fields[].key: "avAccuracy"
additional.fields[].value.string_value: avAccuracy
Valor extraído diretamente do campo avAccuracy.
avAction security_result.action: avAction Consulte action para ver a lógica.
avMalwareName security_result.threat_name: avMalwareName Valor extraído diretamente do campo avMalwareName.
avMalwareType security_result.category_details: avMalwareType Valor extraído diretamente do campo avMalwareType.
classMsg security_result.description: classMsg Valor extraído diretamente do campo classMsg, sem as aspas duplas.
clientIPv4Address target.ip: clientIPv4Address Valor extraído diretamente do campo clientIPv4Address.
destIp target.ip: destIp
destinationIPv4Address: destIp
Valor extraído diretamente do campo destIp.
destinationIPv4Address target.ip: destinationIPv4Address Valor extraído diretamente do campo destinationIPv4Address ou derivado do campo networkPrefix.
destinationIPv6Address target.ip: destinationIPv6Address Valor extraído diretamente do campo destinationIPv6Address.
destinationPort target.port: destinationPort Valor extraído diretamente do campo destinationPort e convertido em número inteiro.
destinationTransportPort target.port: destinationTransportPort Valor extraído diretamente do campo destinationTransportPort e convertido em número inteiro.
deviceKey about.resource.attribute.labels[].key: "deviceKey"
about.resource.attribute.labels[].value: deviceKey
Valor retirado diretamente do campo deviceKey, se não for "Desconhecido".
deviceName about.resource.attribute.labels[].key: "deviceName"
about.resource.attribute.labels[].value: deviceName
Valor extraído diretamente do campo deviceName, se não for "Desconhecido".
duration network.session_duration.seconds: duration Valor extraído diretamente do campo duration e convertido em número inteiro.
egressInterfaceName additional.fields[].key: "egressInterfaceName"
additional.fields[].value.string_value: egressInterfaceName
Valor extraído diretamente do campo egressInterfaceName.
event.type metadata.event_type: event.type Se applianceName (ou sourceIPv4Address ou user ou sourceIPv6Address) e destinationIPv4Address (ou remoteSite ou destinationIPv6Address ou clientIPv4Address ou hostname) estiverem presentes, NETWORK_CONNECTION. Caso contrário, STATUS_UPDATE. Se applianceName estiver vazio, GENERIC_EVENT.
eventType principal.resource.attribute.labels[].key: "eventType"
principal.resource.attribute.labels[].value: eventType
Valor extraído diretamente do campo eventType.
family security_result.detection_fields[].key: "family"
security_result.detection_fields[].value: family
Valor extraído diretamente do campo family.
fc security_result.detection_fields[].key: "ForwardingClass"
security_result.detection_fields[].value: fc
Valor extraído diretamente do campo fc.
fileTransDir additional.fields[].key: "fileTransDir"
additional.fields[].value.string_value: fileTransDir
Valor extraído diretamente do campo fileTransDir.
filename target.file.names: filename Valor extraído diretamente do campo filename.
flowCookie metadata.collected_timestamp: flowCookie Valor extraído diretamente do campo flowCookie e convertido em carimbo de data/hora usando o formato UNIX.
flowId principal.resource.product_object_id: flowId Valor extraído diretamente do campo flowId.
forwardForwardingClass security_result.detection_fields[].key: "forwardForwardingClass"
security_result.detection_fields[].value: forwardForwardingClass
Valor extraído diretamente do campo forwardForwardingClass.
fromCountry principal.location.country_or_region: fromCountry
target.location.country_or_region: fromCountry
Valor extraído diretamente do campo fromCountry.
fromUser principal.user.userid: fromUser Valor retirado diretamente do campo fromUser se não estiver vazio, "unknown" ou "Unknown".
fromZone additional.fields[].key: "fromZone"
additional.fields[].value.string_value: fromZone
Valor extraído diretamente do campo fromZone.
generateTime metadata.collected_timestamp: generateTime Valor extraído diretamente do campo generateTime e convertido em carimbo de data/hora usando o formato UNIX.
hostname target.hostname: hostname Valor extraído diretamente do campo hostname.
httpUrl target.url: httpUrl Valor extraído diretamente do campo httpUrl.
icmpTypeIPv4 additional.fields[].key: "icmpTypeIPv4"
additional.fields[].value.string_value: icmpTypeIPv4
Valor extraído diretamente do campo icmpTypeIPv4.
idpAction security_result.action: idpAction Consulte action para ver a lógica.
ingressInterfaceName additional.fields[].key: "ingressInterfaceName"
additional.fields[].value.string_value: ingressInterfaceName
Valor extraído diretamente do campo ingressInterfaceName.
ipsApplication additional.fields[].key: "ipsApplication"
additional.fields[].value.string_value: ipsApplication
Valor extraído diretamente do campo ipsApplication.
ipsDirection security_result.detection_fields[].key: "ipsDirection"
security_result.detection_fields[].value: ipsDirection
Valor extraído diretamente do campo ipsDirection.
ipsProfile security_result.detection_fields[].key: "ipsProfile"
security_result.detection_fields[].value: ipsProfile
Valor extraído diretamente do campo ipsProfile.
ipsProfileRule security_result.rule_name: ipsProfileRule Valor extraído diretamente do campo ipsProfileRule.
ipsProtocol network.ip_protocol: ipsProtocol Valor extraído diretamente do campo ipsProtocol.
log_type metadata.description: log_type
metadata.log_type: log_type
Valor extraído diretamente do campo log_type.
mstatsTimeBlock metadata.collected_timestamp: mstatsTimeBlock Valor extraído diretamente do campo mstatsTimeBlock e convertido em carimbo de data/hora usando o formato UNIX.
mstatsTotRecvdOctets network.received_bytes: mstatsTotRecvdOctets Valor extraído diretamente do campo mstatsTotRecvdOctets e convertido em um número inteiro sem sinal.
mstatsTotSentOctets network.sent_bytes: mstatsTotSentOctets Valor extraído diretamente do campo mstatsTotSentOctets e convertido em um número inteiro sem sinal.
mstatsTotSessCount additional.fields[].key: "mstatsTotSessCount"
additional.fields[].value.string_value: mstatsTotSessCount
Valor extraído diretamente do campo mstatsTotSessCount.
mstatsTotSessDuration network.session_duration.seconds: mstatsTotSessDuration Valor extraído diretamente do campo mstatsTotSessDuration e convertido em número inteiro.
mstatsType security_result.category_details: mstatsType Valor extraído diretamente do campo mstatsType.
networkPrefix target.ip: networkPrefix
target.port: networkPrefix
Endereço IP extraído do campo networkPrefix. Porta extraída do campo networkPrefix e convertida em número inteiro.
protocolIdentifier network.ip_protocol: protocolIdentifier Valor extraído diretamente do campo protocolIdentifier, convertido em número inteiro e mapeado para o nome do protocolo IP usando uma pesquisa.
recvdOctets network.received_bytes: recvdOctets Valor extraído diretamente do campo recvdOctets e convertido em um número inteiro sem sinal.
recvdPackets network.received_packets: recvdPackets Valor extraído diretamente do campo recvdPackets e convertido em número inteiro.
remoteSite target.hostname: remoteSite Valor extraído diretamente do campo remoteSite.
reverseForwardingClass security_result.detection_fields[].key: "reverseForwardingClass"
security_result.detection_fields[].value: reverseForwardingClass
Valor extraído diretamente do campo reverseForwardingClass.
risk security_result.risk_score: risk Valor extraído diretamente do campo risk e convertido em float.
rule security_result.rule_name: rule Valor extraído diretamente do campo rule.
sentOctets network.sent_bytes: sentOctets Valor extraído diretamente do campo sentOctets e convertido em um número inteiro sem sinal.
sentPackets network.sent_packets: sentPackets Valor extraído diretamente do campo sentPackets e convertido em número inteiro.
serialNum security_result.detection_fields[].key: "serialNum"
security_result.detection_fields[].value: serialNum
Valor extraído diretamente do campo serialNum.
signatureId security_result.detection_fields[].key: "signatureID"
security_result.detection_fields[].value: signatureId
Valor extraído diretamente do campo signatureId.
signatureMsg security_result.detection_fields[].key: "signatureMsg"
security_result.detection_fields[].value: signatureMsg
Valor extraído diretamente do campo signatureMsg.
signaturePriority security_result.severity: signaturePriority Se signaturePriority for "low" (não diferencia maiúsculas de minúsculas), então LOW. Se signaturePriority for "médio" (não diferencia maiúsculas de minúsculas), então MEDIUM. Se signaturePriority for "alta" (não diferencia maiúsculas de minúsculas), então HIGH.
site principal.hostname: site
applianceName: site
Valor extraído diretamente do campo site.
siteId additional.fields[].key: "siteId"
additional.fields[].value.string_value: siteId
Valor extraído diretamente do campo siteId.
siteName principal.hostname: siteName
applianceName: siteName
Valor extraído diretamente do campo siteName.
sourceIPv4Address principal.ip: sourceIPv4Address Valor extraído diretamente do campo sourceIPv4Address.
sourceIPv6Address principal.ip: sourceIPv6Address Valor extraído diretamente do campo sourceIPv6Address.
sourcePort principal.port: sourcePort Valor extraído diretamente do campo sourcePort e convertido em número inteiro.
sourceTransportPort principal.port: sourceTransportPort Valor extraído diretamente do campo sourceTransportPort e convertido em número inteiro.
subFamily security_result.detection_fields[].key: "subFamily"
security_result.detection_fields[].value: subFamily
Valor extraído diretamente do campo subFamily.
tcpConnAborted additional.fields[].key: "tcpConnAborted"
additional.fields[].value.string_value: tcpConnAborted
Valor extraído diretamente do campo tcpConnAborted se não estiver vazio ou for "0".
tcpConnRefused additional.fields[].key: "tcpConnRefused"
additional.fields[].value.string_value: tcpConnRefused
Valor extraído diretamente do campo tcpConnRefused se não estiver vazio ou for "0".
tcpPktsFwd network.sent_packets: tcpPktsFwd Valor extraído diretamente do campo tcpPktsFwd e convertido em número inteiro.
tcpPktsRev network.received_packets: tcpPktsRev Valor extraído diretamente do campo tcpPktsRev e convertido em número inteiro.
tcpReXmitFwd additional.fields[].key: "tcpReXmitFwd"
additional.fields[].value.string_value: tcpReXmitFwd
Valor extraído diretamente do campo tcpReXmitFwd se não estiver vazio ou for "0".
tcpReXmitRev additional.fields[].key: "tcpReXmitRev"
additional.fields[].value.string_value: tcpReXmitRev
Valor extraído diretamente do campo tcpReXmitRev se não estiver vazio ou for "0".
tcpSAA additional.fields[].key: "tcpSAA"
additional.fields[].value.string_value: tcpSAA
Valor extraído diretamente do campo tcpSAA se não estiver vazio ou for "0".
tcpSSA additional.fields[].key: "tcpSSA"
additional.fields[].value.string_value: tcpSSA
Valor extraído diretamente do campo tcpSSA se não estiver vazio ou for "0".
tcpSessCnt additional.fields[].key: "tcpSessCnt"
additional.fields[].value.string_value: tcpSessCnt
Valor extraído diretamente do campo tcpSessCnt.
tcpSessDur network.session_duration.seconds: tcpSessDur Valor extraído diretamente do campo tcpSessDur e convertido em número inteiro.
tcpSynAckReXmit additional.fields[].key: "tcpSynAckReXmit"
additional.fields[].value.string_value: tcpSynAckReXmit
Valor extraído diretamente do campo tcpSynAckReXmit se não estiver vazio ou for "0".
tcpSynReXmit additional.fields[].key: "tcpSynReXmit"
additional.fields[].value.string_value: tcpSynReXmit
Valor extraído diretamente do campo tcpSynReXmit se não estiver vazio ou for "0".
tcpTWHS additional.fields[].key: "tcpTWHS"
additional.fields[].value.string_value: tcpTWHS
Valor extraído diretamente do campo tcpTWHS se não estiver vazio ou for "0".
tenantId principal.resource.attribute.labels[].key: "tenantId"
principal.resource.attribute.labels[].value: tenantId
Valor extraído diretamente do campo tenantId.
tenantName observer.hostname: tenantName Valor extraído diretamente do campo tenantName.
threatType security_result.detection_fields[].key: "threatType"
security_result.detection_fields[].value: threatType
Valor extraído diretamente do campo threatType.
toCountry target.location.country_or_region: toCountry Valor extraído diretamente do campo toCountry.
toZone additional.fields[].key: "toZone"
additional.fields[].value.string_value: toZone
Valor extraído diretamente do campo toZone.
traffType additional.fields[].key: "traffType"
additional.fields[].value.string_value: traffType
Valor extraído diretamente do campo traffType.
ts metadata.event_timestamp: ts Valor extraído diretamente do campo ts e convertido em carimbo de data/hora.
type security_result.action: type Consulte action para ver a lógica.
urlAction security_result.action: urlAction Consulte action para ver a lógica.
urlActionMessage security_result.summary: urlActionMessage Valor extraído diretamente do campo urlActionMessage.
urlCategory principal.resource.attribute.labels[].key: "urlCategory"
principal.resource.attribute.labels[].value: urlCategory
Valor extraído diretamente do campo urlCategory.
urlProfile additional.fields[].key: "urlProfile"
additional.fields[].value.string_value: urlProfile
Valor extraído diretamente do campo urlProfile.
urlReputation security_result.severity_details: urlReputation Valor extraído diretamente do campo urlReputation.
user principal.ip: user Valor extraído diretamente do campo user.
vsnId principal.resource.attribute.labels[].key: "vsnId"
principal.resource.attribute.labels[].value: vsnId
Valor extraído diretamente do campo vsnId. Valor fixado no código. Valor fixado no código.
applianceName event.idm.read_only_udm.intermediary.hostname Mapeado do registro de alterações
postNATSourceIPv4Address event.idm.read_only_udm.principal.nat_ip Mapeado do registro de alterações
postNATDestinationIPv4Address event.idm.read_only_udm.target.nat_ip Mapeado do registro de alterações
postNAPTsourceTransportPort event.idm.read_only_udm.principal.nat_port Mapeado do registro de alterações
postNAPTdestinationTransportPort event.idm.read_only_udm.target.nat_port Mapeado do registro de alterações
natRuleName event.idm.read_only_udm.security_result.rule_name Mapeado do registro de alterações
natEvent event.idm.read_only_udm.metadata.product_event_type Mapeado do registro de alterações
log_type event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
flowCookie event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
flowId event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
sourceNatPoolName event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
destNatPoolName event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
deviceKey event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
deviceName event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
observationTimeMilliseconds event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
threatSeverity event.idm.read_only_udm.security_result.detection_fields Mapeado do registro de alterações
dnsfBadCname event.idm.read_only_udm.security_result.detection_fields Mapeado do registro de alterações
dnsfEvType event.idm.read_only_udm.security_result.detection_fields Mapeado do registro de alterações
dnsfDomain event.idm.read_only_udm.security_result.detection_fields Mapeado do registro de alterações
dnsfMsgType event.idm.read_only_udm.security_result.detection_fields Mapeado do registro de alterações
dnsfProfileName event.idm.read_only_udm.security_result.detection_fields Mapeado do registro de alterações
dnsfIpReputation event.idm.read_only_udm.security_result.category_details Mapeado do registro de alterações
dnsfAction event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
HitCount event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
groupId event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
signatureRev event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
packetTime event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
moduleId event.idm.read_only_udm.additional.fields Mapeado do registro de mudanças
dnsfBadResolvedV4Addr event.idm.read_only_udm.target.ip e event.idm.read_only_udm.target.asset.ip Mapeado do registro de mudanças
dnsfIpGeoLocation event.idm.read_only_udm.target.location.country_or_region Mapeado do registro de alterações
sourceIPv4Address event.idm.read_only_udm.metadata.description Mapeado do registro de alterações
destinationIPv4Address event.idm.read_only_udm.metadata.description Mapeado do registro de alterações
host event.idm.read_only_udm.target.hostname Mapeado do registro de alterações
eipProfileName event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
traffScope event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
srcSGT event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
destSGT event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
ucsBand event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
ucsReason event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
urlLookupSrc event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
protocolInfo event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
ecsBand event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
ecsReason event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
appAuth event.idm.read_only_udm.additional.fields Mapeado do registro de alterações
ucsScore event.idm.read_only_udm.security_result.detection_fields Mapeado do registro de alterações
policyActionName event.idm.read_only_udm.security_result.detection_fields Mapeado do registro de alterações
policyActionModule event.idm.read_only_udm.security_result.detection_fields Mapeado do registro de alterações
ecsScore event.idm.read_only_udm.security_result.detection_fields Mapeado do registro de alterações
applianceId event.idm.read_only_udm.intermediary.asset.product_object_id Mapeado do registro de alterações
inter_hostname event.idm.ready_only_udm.intermediary.hostname Mapeado do registro de mudanças

Registro de alterações

Confira o registro de alterações deste analisador

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