Recolha registos do Palo Alto Prisma SD-WAN

Compatível com:

Este documento explica como carregar registos do Palo Alto Prisma SD-WAN (anteriormente Cloudgenix SD-WAN) para o Google Security Operations através do Bindplane. O analisador extrai campos dos registos do sistema e dos registos de fluxo, mapeando-os para o modelo de dados unificado (UDM). Processa mensagens syslog estruturadas e não estruturadas, realizando a análise de chave-valor e a correspondência Grok para extrair informações relevantes, como IPs de origem/destino, nomes de anfitriões, tipos de eventos e detalhes de segurança, e preenche os campos UDM em conformidade. O analisador também processa registos de fluxo, extraindo informações de rede e mapeando-as para os esquemas de rede, principal, destino, intermediário e resultado de segurança do UDM.

Antes de começar

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

  • Instância do Google SecOps
  • Windows 2016 ou posterior, ou um anfitrião Linux com systemd
  • Se estiver a ser executado através de um proxy, certifique-se de que as portas da firewall estão abertas
  • Acesso privilegiado ao Palo Alto Prisma SD-WAN (anteriormente Cloudgenix SD-WAN)

Obtenha o ficheiro de autenticação de carregamento do Google SecOps

  1. Inicie sessão na consola Google SecOps.
  2. Aceda a Definições do SIEM > Agentes de recolha.
  3. Transfira o ficheiro de autenticação de carregamento. Guarde o ficheiro de forma segura no sistema onde o Bindplane vai ser instalado.

Obtenha o ID de cliente do Google SecOps

  1. Inicie sessão na consola Google SecOps.
  2. Aceda a Definições do SIEM > Perfil.
  3. Copie e guarde o ID do cliente da secção Detalhes da organização.

Instale o agente do Bindplane

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

Instalação do Windows

  1. Abra a Linha de comandos ou o PowerShell como administrador.
  2. Execute o seguinte comando:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Instalação do Linux

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

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

Recursos de instalação adicionais

Para ver opções de instalação adicionais, consulte o guia de instalação.

Configure o agente Bindplane para carregar o Syslog e enviá-lo para o Google SecOps

  1. Aceda ao ficheiro de configuração:
    • Localize o ficheiro config.yaml. Normalmente, encontra-se no diretório /etc/bindplane-agent/ no Linux ou no diretório de instalação no Windows.
    • Abra o ficheiro com um editor de texto (por exemplo, nano, vi ou Bloco de notas).
  2. Edite o ficheiro config.yaml da seguinte forma:

    ```yaml
    receivers:
        udplog:
            # Replace the port and IP address as required
            listen_address: "0.0.0.0:514"
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the path to the credentials file you downloaded in Step 1
            creds_file_path: '/path/to/ingestion-authentication-file.json'
            # Replace with your actual customer ID from Step 2
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # Add optional ingestion labels for better organization
            log_type: 'CLOUDGENIX_SDWAN'
            raw_log_field: body
            ingestion_labels:
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    ```
    

Reinicie o agente do Bindplane para aplicar as alterações

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

    sudo systemctl restart bindplane-agent
    
  • Para reiniciar o agente Bindplane no Windows, pode usar a consola Serviços ou introduzir o seguinte comando:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Configure o perfil Syslog do Prisma SD-WAN

  1. Inicie sessão no Prisma SD-WAN.
  2. Aceda a Gerir > Recursos > Perfis de configuração.
  3. Selecione Syslog.
  4. Clique em Criar perfil Syslog.
  5. Indique os seguintes detalhes de configuração:
    • Nome: introduza um nome para este perfil.
    • Selecione a caixa de verificação Ativar registo de fluxo.
    • Gravidade: selecione o nível de gravidade Crítico, Grave ou Menor.
    • Protocolo: selecione o tipo de protocolo como UDP ou TCP, consoante a configuração do agente Bindplane.
    • Selecione o botão de opção IP do servidor.
    • Introduza o endereço IP do agente do Bindplane.
    • Porta do servidor: introduza o número da porta do agente do Bindplane.
  6. Clique em Guardar.

Tabela de mapeamento da UDM

Campo de registo Mapeamento de UDM Lógica
ACTION security_result.action Se ACTION_CODE for "1", defina como "ALLOW". Caso contrário, se ACTION_CODE não estiver vazio, defina como "BLOCK". Caso contrário, a predefinição é "UNKNOWN_ACTION" do início da análise.
ACTION_CODE security_result.action Usado na lógica para determinar security_result.action.
APP_NAME network.http.user_agent Mapeado diretamente.
BYTES_RECVD network.received_bytes Mapeado diretamente, convertido em número inteiro não assinado.
BYTES_SENT network.sent_bytes Mapeado diretamente, convertido em número inteiro não assinado.
CLOUDGENIX_HOST principal.hostname Mapeado diretamente se o campo NAME estiver vazio. Usado como nome de anfitrião intermediário se NAME estiver presente.
CODE metadata.product_event_type Concatenado com FACILITY para formar metadata.product_event_type. Também é usado para determinar metadata.event_type (por exemplo, se CODE contiver "DOWN", metadata.event_type é definido como "STATUS_SHUTDOWN").
DESTINATION_ZONE_NAME about.labels Mapeado diretamente como uma etiqueta com a chave "DESTINATION_ZONE_NAME".
DEVICE_TIME metadata.event_timestamp Mapeado diretamente após a análise como data.
DST_INTERFACE target.hostname Mapeado diretamente.
DST_IP target.ip Mapeado diretamente.
DST_PORT target.port Mapeado diretamente, convertido em número inteiro.
ELEMENT_ID about.labels Mapeado diretamente como uma etiqueta com a chave "ELEMENT_ID".
EVENT_TIME metadata.event_timestamp Mapeado diretamente após a análise como data.
FACILITY metadata.product_event_type Concatenado com CODE para formar metadata.product_event_type.
FLOW_EVENT security_result.summary Usado como parte da string security_result.summary.
IDENTIFIER about.labels Mapeado diretamente como uma etiqueta com a chave "IDENTIFIER".
ION_HOST principal.hostname Mapeado diretamente se os campos CLOUDGENIX_HOST e NAME estiverem vazios.
MSG metadata.description Mapeado diretamente. Também é usado para a correspondência de regex para determinar metadata.event_type e extrair target.ip.
NAME principal.hostname Mapeado diretamente. Se estiver presente, CLOUDGENIX_HOST torna-se intermediary.hostname.
PROCESS_NAME principal.process.file.full_path Mapeado diretamente.
PROTOCOL_NAME network.ip_protocol Mapeado diretamente, convertido em letras maiúsculas.
REMOTE_HOSTNAME target.hostname Mapeado diretamente.
REMOTE_IP target.ip Mapeado diretamente.
RULE_NAME security_result.rule_name Mapeado diretamente.
SEVERITY security_result.severity, security_result.severity_details Mapeado para security_result.severity_details. Também é usado para determinar security_result.severity (por exemplo, se SEVERITY for "minor", security_result.severity é definido como "LOW").
SOURCE_ZONE_NAME about.labels Mapeado diretamente como uma etiqueta com a chave "SOURCE_ZONE_NAME".
SRC_INTERFACE principal.hostname Mapeado diretamente.
SRC_IP principal.ip Mapeado diretamente.
SRC_PORT principal.port Mapeado diretamente, convertido em número inteiro.
VPN_LINK_ID target.resource.id Mapeado diretamente.
(Lógica do analisador) is_alert Definido como verdadeiro se log_type for "alerta" ou "alarme".
(Lógica do analisador) is_significant Definido como verdadeiro se log_type for "alerta" ou "alarme".
(Lógica do analisador) metadata.event_type Determinada por uma série de declarações condicionais com base nos valores de CODE, MSG, src_ip e dest_ip. O valor predefinido é "GENERIC_EVENT".
(Lógica do analisador) metadata.log_type Definido como "CLOUDGENIX_SDWAN".
(Lógica do analisador) metadata.product_event_type A predefinição é a concatenação de CODE e FACILITY. Definido como "cgxFlowLogV1" para registos de fluxo.
(Lógica do analisador) metadata.product_name Definido como "CloudGenix SD-WAN".
(Lógica do analisador) metadata.vendor_name Definido como "Palo Alto Networks".
(Lógica do analisador) principal.process.pid Definido para o valor de pid a partir do registo não processado para registos de fluxo.
(Lógica do analisador) security_result.action A predefinição é "UNKNOWN_ACTION".
(Lógica do analisador) security_result.severity A predefinição é "UNKNOWN_SEVERITY". Definido com base no valor de SEVERITY. Definido como "INFORMATIONAL" para registos de fluxo.
(Lógica do analisador) security_result.summary Definido com base no valor de CODE para mensagens syslog. Definido como uma string descritiva que inclui FLOW_EVENT, SRC_IP e DST_IP para registos de fluxo.

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