Coletar registros da SD-WAN do Prisma da Palo Alto
Este documento explica como ingerir registros do Palo Alto Prisma SD-WAN (antigo Cloudgenix SD-WAN) no Google Security Operations usando o Bindplane. O analisador extrai campos dos registros do syslog e de fluxo, mapeando-os para o modelo de dados unificado (UDM). Ele 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 host, tipos de eventos e detalhes de segurança, e preenche os campos do UDM de acordo. O analisador também processa registros de fluxo, extraindo informações de rede e mapeando-as para os esquemas de rede, principal, destino, intermediário e resultado de segurança da UDM.
Antes de começar
Verifique se você tem os pré-requisitos a seguir:
- Instância do Google SecOps
- Windows 2016 ou mais recente ou um host Linux com
systemd
- Se você estiver executando por trás de um proxy, verifique se as portas do firewall estão abertas.
- Acesso privilegiado à SD-WAN do Prisma da Palo Alto (antiga SD-WAN da Cloudgenix)
Receber o arquivo de autenticação de ingestão do Google SecOps
- Faça login no console do Google SecOps.
- Acesse Configurações do SIEM > Agentes de coleta.
- Baixe o arquivo de autenticação de ingestão. Salve o arquivo de forma segura no sistema em que o Bindplane será instalado.
Receber o ID do cliente do Google SecOps
- Faça login no console do Google SecOps.
- Acesse Configurações do SIEM > Perfil.
- Copie e salve o ID do cliente na seção Detalhes da organização.
Instalar o agente do Bindplane
Instale o agente do Bindplane no sistema operacional Windows ou Linux de acordo com as instruções a seguir.
Instalação do Windows
- Abra o Prompt de Comando ou o PowerShell como administrador.
Execute este comando:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Instalação do Linux
- Abra um terminal com privilégios de root ou sudo.
Execute este comando:
sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
Outros recursos de instalação
Para mais opções de instalação, consulte o guia de instalação.
Configurar o agente do Bindplane para ingerir o Syslog e enviar ao Google SecOps
- Acesse o arquivo de configuração:
- Localize o arquivo
config.yaml
. Normalmente, ele fica no diretório/etc/bindplane-agent/
no Linux ou no diretório de instalação no Windows. - Abra o arquivo usando um editor de texto (por exemplo,
nano
,vi
ou Bloco de Notas).
- Localize o arquivo
Edite o arquivo
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 ```
- Substitua a porta e o endereço IP conforme necessário na sua infraestrutura.
- Substitua
<customer_id>
pelo ID do cliente real. - Atualize
/path/to/ingestion-authentication-file.json
para o caminho em que o arquivo de autenticação foi salvo na seção Receber arquivo de autenticação de ingestão do Google SecOps.
Reinicie o agente do Bindplane para aplicar as mudanças
Para reiniciar o agente do Bindplane em Linux, execute o seguinte comando:
sudo systemctl restart bindplane-agent
Para reiniciar o agente do Bindplane no Windows, use o console Serviços ou insira o seguinte comando:
net stop BindPlaneAgent && net start BindPlaneAgent
Configurar o perfil Syslog do Prisma SD-WAN
- Faça login no Prisma SD-WAN.
- Acesse Gerenciar > Recursos > Perfis de configuração.
- Selecione Syslog.
- Clique em Criar perfil do Syslog.
- Informe os seguintes detalhes de configuração:
- Nome: insira um nome para o perfil.
- Marque a caixa de seleção Ativar o registro de fluxo.
- Gravidade: selecione o nível de gravidade entre "Crítica", "Grave" ou "Leve".
- Protocolo: selecione o tipo de protocolo como UDP ou TCP, dependendo da configuração do agente do Bindplane.
- Selecione o botão de opção IP do servidor.
- Insira o endereço IP do agente do Bindplane.
- Porta do servidor: digite o número da porta do agente do Bindplane.
- Clique em Salvar.
Tabela de mapeamento do UDM
Campo de registro | Mapeamento do 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, o padrão será "UNKNOWN_ACTION" do início do analisador. |
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 para número inteiro sem sinal. |
BYTES_SENT |
network.sent_bytes |
Mapeado diretamente, convertido para número inteiro sem sinal. |
CLOUDGENIX_HOST |
principal.hostname |
Mapeado diretamente se o campo NAME estiver vazio. Usado como nome de host 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 será definido como "STATUS_SHUTDOWN"). |
DESTINATION_ZONE_NAME |
about.labels |
Mapeado diretamente como um rótulo com a chave "DESTINATION_ZONE_NAME". |
DEVICE_TIME |
metadata.event_timestamp |
Mapeado diretamente após ser analisado como uma 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 um rótulo com a chave "ELEMENT_ID". |
EVENT_TIME |
metadata.event_timestamp |
Mapeado diretamente após ser analisado como uma 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 um rótulo 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 correspondência de regex para determinar metadata.event_type e extrair target.ip . |
NAME |
principal.hostname |
Mapeado diretamente. Se presente, CLOUDGENIX_HOST se torna o intermediary.hostname . |
PROCESS_NAME |
principal.process.file.full_path |
Mapeado diretamente. |
PROTOCOL_NAME |
network.ip_protocol |
Mapeado diretamente e convertido em 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 será definido como "LOW". |
SOURCE_ZONE_NAME |
about.labels |
Mapeado diretamente como um rótulo 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 |
Defina como "true" se log_type for "alert" ou "alarm". |
(Lógica do analisador) | is_significant |
Defina como "true" se log_type for "alert" ou "alarm". |
(Lógica do analisador) | metadata.event_type |
Determinado por uma série de instruções condicionais com base nos valores de CODE , MSG , src_ip e dest_ip . O padrão é "GENERIC_EVENT". |
(Lógica do analisador) | metadata.log_type |
Defina como "CLOUDGENIX_SDWAN". |
(Lógica do analisador) | metadata.product_event_type |
O padrão é a concatenação de CODE e FACILITY . Defina como "cgxFlowLogV1" para registros de fluxo. |
(Lógica do analisador) | metadata.product_name |
Definido como "CloudGenix SD-WAN". |
(Lógica do analisador) | metadata.vendor_name |
Defina como "Palo Alto Networks". |
(Lógica do analisador) | principal.process.pid |
Definido como o valor de pid do registro bruto para registros de fluxo. |
(Lógica do analisador) | security_result.action |
O padrão é "UNKNOWN_ACTION". |
(Lógica do analisador) | security_result.severity |
O padrão é "UNKNOWN_SEVERITY". Definido com base no valor de SEVERITY . Defina como "INFORMATIVO" para registros de fluxo. |
(Lógica do analisador) | security_result.summary |
Definido com base no valor de CODE para mensagens do syslog. Definido como uma string descritiva, incluindo FLOW_EVENT , SRC_IP e DST_IP para registros de fluxo. |
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.