Coletar registros do Symantec VIP Enterprise Gateway
Este documento explica como ingerir registros do Symantec VIP Enterprise Gateway no Google Security Operations usando o Bindplane. O código do analisador primeiro tenta processar a mensagem de registro de entrada como um objeto JSON. Se isso falhar, ele vai assumir um formato syslog e usar expressões regulares (padrões grok) para extrair campos relevantes, como carimbos de data/hora, endereços IP, nomes de usuário e descrições de eventos. Por fim, ele mapeia as informações extraídas para os campos do modelo de dados unificado (UDM) para uma representação padronizada de ocorrência de segurança.
Antes de começar
Verifique se você atende aos seguintes pré-requisitos:
- Instância do Google SecOps
- Host Windows 2016 ou mais recente ou Linux com systemd
- Se estiver executando por trás de um proxy, as portas do firewall estarão abertas.
- Acesso privilegiado ao Symantec VIP Enterprise Gateway.
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
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: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: '/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 ingestion_labels: log_type: 'SYMANTEC_VIP' raw_log_field: body 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 no 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 Syslog no Symantec VIP Enterprise Gateway
- Faça login na UI da Web do Symantec VIP Gateway.
- Acesse Registros > Configuração do Syslog.
- Se você estiver configurando o Syslog pela primeira vez, será solicitado que você configure as definições dele. Selecione Sim
- Se você já tiver configurado o Syslog, clique em Editar na parte de baixo da página.
- Informe os seguintes detalhes de configuração:
- Facilidade do Syslog: selecione LOG_LOCAL0.
- Host syslog: insira o endereço IP do agente do Bindplane.
- Porta do Syslog: insira o número da porta do agente Bindplane (por exemplo,
514
para UDP).
- Clique em Salvar.
- Acesse Configurações > Configurações do console.
- Informe os seguintes detalhes de configuração:
- Nível de registro: selecione Informações.
- Enable Syslog: selecione Yes.
- Clique em Enviar.
- Acesse Configurações > Configurações de verificação de integridade.
- Selecione Sim para ativar o serviço de verificação de integridade.
- Informe os seguintes detalhes de configuração:
- Nível de registro: selecione Informações.
- Enable Syslog: selecione Yes.
- Clique em Enviar.
- Acesse Repositório de usuários > Sincronização de diretório LDAP.
- Edite os seguintes detalhes de configuração:
- Nível do registro: selecione Informações.
- Enable Syslog: selecione Yes.
- Clique em Enviar.
Tabela de mapeamento da UDM
Campo de registro | Mapeamento da UDM | Lógica |
---|---|---|
aplicativo | read_only_udm.principal.application | Valor extraído do campo application pelo filtro json. |
comando | read_only_udm.target.process.command_line | Valor extraído do campo command pelo padrão grok. |
credentialType | Esse campo não é mapeado diretamente para o UDM. Usado para derivar o valor de read_only_udm.extensions.auth.mechanism. | |
dados | Esse campo não é mapeado diretamente para o UDM. Ele é analisado para extrair outros campos. | |
data2 | Esse campo não é mapeado diretamente para o UDM. Ele é analisado para extrair outros campos. | |
datetime | read_only_udm.metadata.event_timestamp.seconds read_only_udm.metadata.event_timestamp.nanos |
Segundos e nanossegundos desde o início da era Unix extraídos do campo datetime . |
desc | read_only_udm.metadata.description | Valor extraído do campo desc pelo filtro json. |
description | read_only_udm.security_result.description | Valor extraído do campo description pelo filtro json. |
filename | read_only_udm.target.process.file.full_path | Valor extraído do campo filename pelo padrão grok. |
nome do host | read_only_udm.principal.hostname | Valor extraído do campo hostname pelo filtro json. |
host_name | read_only_udm.intermediary.hostname | Valor extraído do campo host_name pelo filtro json. |
log_level | Esse campo não é mapeado diretamente para o UDM. Usado para derivar o valor de read_only_udm.security_result.severity. | |
log_type | read_only_udm.metadata.product_event_type | Valor extraído do campo log_type pelo filtro json. |
msg | Esse campo não é mapeado diretamente para o UDM. Ele é analisado para extrair outros campos. | |
operação | read_only_udm.security_result.summary | Valor extraído do campo operation pelo padrão grok. |
processid | read_only_udm.target.process.pid | Valor extraído do campo processid pelo padrão grok. |
produto | read_only_udm.metadata.product_name | Valor extraído do campo product pelo filtro json. |
reason | read_only_udm.metadata.description | Valor extraído do campo reason pelo padrão grok. |
request_id | read_only_udm.target.resource.id | Valor extraído do campo request_id pelo padrão grok. |
src_ip | read_only_udm.principal.ip | Valor extraído do campo src_ip pelo padrão grok. |
status | read_only_udm.metadata.description | Valor extraído do campo status pelo padrão grok. |
resumo | read_only_udm.security_result.summary | Valor extraído do campo summary pelo filtro json. |
timestamp.nanos | read_only_udm.metadata.event_timestamp.nanos | Nanossegundos do carimbo de data/hora do registro original. |
timestamp.seconds | read_only_udm.metadata.event_timestamp.seconds | Segundos do carimbo de data/hora do registro original. |
tempo | Esse campo não é mapeado diretamente para o UDM. Ele é usado para derivar os valores de read_only_udm.metadata.event_timestamp.seconds e read_only_udm.metadata.event_timestamp.nanos. | |
usuário | read_only_udm.target.user.userid | Valor extraído do campo user pelo filtro JSON ou pelo padrão grok. |
fornecedor | read_only_udm.metadata.vendor_name | Valor extraído do campo vendor pelo filtro json. |
read_only_udm.extensions.auth.mechanism | Determinado pelo campo credentialType . Se credentialType for SMS_OTP ou STANDARD_OTP , OTP será usado. Se credentialType corresponder à expressão regular PASSWORD , USERNAME_PASSWORD será usado. |
|
read_only_udm.extensions.auth.type | Se o campo reason corresponder à expressão regular LDAP , SSO será usado. Caso contrário, AUTHTYPE_UNSPECIFIED será usado. |
|
read_only_udm.metadata.event_type | Determinado pela presença de determinados campos. Se user ou processid não estiverem vazios, USER_LOGIN será usado. Se user estiver vazio e src_ip não estiver vazio ou for 0.0.0.0 , STATUS_UPDATE será usado. Caso contrário, GENERIC_EVENT será usado. |
|
read_only_udm.metadata.log_type | Fixado no código como SYMANTEC_VIP . |
|
read_only_udm.security_result.action | Determinado pelo campo status . Se status for Authentication Success , GRANTED , Authentication Completed , After Services Authenticate call ou CHALLENGED , ALLOW será usado. Se status for DENIED , Acces-Reject , Unknown Error , Service Unavailable ou FAILED , BLOCK será usado. Se status for PUSH request sent for user ou Trying to fetch attribute , QUARANTINE será usado. |
|
read_only_udm.security_result.severity | Determinado pelo campo log_level . Se log_level for DEBUG , INFO ou AUDIT , INFORMATIONAL será usado. Se log_level for ERROR , ERROR será usado. Se log_level for WARNING , MEDIUM será usado. |
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.