Recolha registos do Symantec Endpoint Protection
Este documento explica como carregar registos do Symantec Endpoint Protection para o
Google Security Operations através do Bindplane. O analisador processa registos no formato SYSLOG ou KV, extraindo primeiro as datas/horas de vários formatos nos dados de registo.
Em seguida, utiliza um ficheiro de configuração separado (sep_pt2.include
) para realizar
uma análise e uma estruturação adicionais dos eventos de registo, garantindo o sucesso
do processamento apenas se a extração da data/hora inicial for bem-sucedida.
Antes de começar
Certifique-se de que tem os seguintes pré-requisitos:
- Instância do Google SecOps
- Windows 2016 ou posterior, ou anfitrião Linux com systemd
- Se estiver a ser executado através de um proxy, as portas da firewall estão abertas
- Acesso privilegiado à plataforma Symantec Endpoint Protection
Obtenha o ficheiro de autenticação de carregamento do Google SecOps
- Inicie sessão na consola Google SecOps.
- Aceda a Definições do SIEM > Agentes de recolha.
- 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
- Inicie sessão na consola Google SecOps.
- Aceda a Definições do SIEM > Perfil.
- Copie e guarde o ID do cliente da secção Detalhes da organização.
Instale o agente do Bindplane
Instalação do Windows
- Abra a Linha de comandos ou o PowerShell como administrador.
Execute o seguinte 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 raiz ou sudo.
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
- 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).
- Localize o ficheiro
Edite o ficheiro
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: 'CES' 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 de cliente real.Atualize
/path/to/ingestion-authentication-file.json
para o caminho onde o ficheiro de autenticação foi guardado na secção Obtenha o ficheiro de autenticação de carregamento do Google SecOps.
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 do Bindplane no Windows, pode usar a consola Services ou introduzir o seguinte comando:
net stop BindPlaneAgent && net start BindPlaneAgent
Configure o Syslog no Symantec Endpoint Protection
- Inicie sessão na IU Web do Symantec Endpoint Protection Manager.
- Clique no ícone Administração.
- Localize a secção Ver servidores e clique em Servidores.
- Clique em Site local > Configurar registo externo.
- Selecione a caixa de verificação Ativar a transmissão de registos para um servidor Syslog.
- Indique os seguintes detalhes de configuração:
- Servidor Syslog: introduza o endereço IP do Bindplane.
- Porta de destino UDP: introduza o número da porta do Bindplane (por exemplo,
514
para UDP). - Log Facility: introduza Local6.
- Selecione a caixa de verificação Registos de auditoria.
- Selecione a caixa de verificação Registos de segurança.
- Selecione a caixa de verificação Riscos.
- Clique em OK.
Tabela de mapeamento do UDM
Campo de registo | Mapeamento do UDM | Lógica |
---|---|---|
Ação | security_result.action | O valor é retirado do campo Action no registo não processado e mapeado para uma ação da UDM. |
Tipo de ação | security_result.action_details | O valor é retirado do campo Action Type no registo não processado. |
Administrador | ||
Motivo da aplicação permitida | security_result.action_details | O valor é retirado do campo Allowed application reason no registo não processado. |
Aplicação | principal.process.command_line | O valor é retirado do campo Application no registo não processado. |
Hash da aplicação | target.file.sha256 | O valor é retirado do campo Application hash no registo não processado. |
Nome da aplicação | target.application | O valor é retirado do campo Application name no registo não processado. |
Tipo de aplicação | target.resource.attribute.labels.value | O valor é retirado do campo Application type no registo não processado. A chave está codificada como Application Type . |
Versão da aplicação | target.application.version | O valor é retirado do campo Application version no registo não processado. |
Começar | ||
Hora de início | extensions.vulns.vulnerabilities.scan_start_time | O valor é retirado do campo Begin Time no registo não processado. |
Início: | extensions.vulns.vulnerabilities.scan_start_time | O valor é retirado do campo Begin: no registo não processado. |
Categoria | principal.resource.attribute.labels.value | O valor é retirado do campo Category no registo não processado. A chave está codificada como Category . |
Categoria definida | security_result.category | O valor é retirado do campo Category set no registo não processado e mapeado para uma categoria da UDM. |
Tipo de categoria | security_result.category_details | O valor é retirado do campo Category type no registo não processado. |
ID da assinatura do CIDS | ||
String de assinatura CIDS | security_result.summary | O valor é retirado do campo CIDS Signature string no registo não processado. |
CIDS Signature SubID | ||
Política de Cliente | ||
Comando | ||
Computador | target.hostname | O valor é retirado do campo Computer no registo não processado. |
Nome do computador | principal.hostname | O valor é retirado do campo Computer name no registo não processado. |
Confiança | security_result.confidence_details | O valor é retirado do campo Confidence no registo não processado. |
dados | ||
Descrição | security_result.action_details | O valor é retirado do campo Description no registo não processado. |
Descrição: | security_result.action_details | O valor é retirado do campo Description: no registo não processado. |
Pontuação de deteção | ||
Envios de deteção: não | ||
Tipo de deteção | security_result.summary | O valor é retirado do campo Detection type no registo não processado. |
ID do dispositivo | target.asset.hostname | O valor é retirado do campo Device ID no registo não processado. |
Disposição | security_result.action | O valor é retirado do campo Disposition no registo não processado e mapeado para uma ação da UDM. |
Domínio | principal.administrative_domain | O valor é retirado do campo Domain no registo não processado. |
Nome do Domínio | principal.administrative_domain | O valor é retirado do campo Domain Name no registo não processado. |
Nome do domínio: | principal.administrative_domain | O valor é retirado do campo Domain Name: no registo não processado. |
Transferido por | principal.process.file.full_path | O valor é retirado do campo Downloaded by no registo não processado. |
Site de transferências | ||
Duração (segundos) | extensions.vulns.vulnerabilities.scan_end_time | O valor é retirado do campo Duration (seconds) no registo não processado e adicionado à hora de início da análise. |
End | ||
Hora de fim | extensions.vulns.vulnerabilities.scan_end_time | O valor é retirado do campo End Time no registo não processado. |
Hora de fim: | extensions.vulns.vulnerabilities.scan_end_time | O valor é retirado do campo End Time: no registo não processado. |
Fim: | extensions.vulns.vulnerabilities.scan_end_time | O valor é retirado do campo End: no registo não processado. |
Descrição do Evento | metadata.description | O valor é retirado do campo Event Description no registo não processado. |
Descrição do evento: | metadata.description | O valor é retirado do campo Event Description: no registo não processado. |
Hora de inserção do evento | ||
Tempo do evento | metadata.event_timestamp | O valor é retirado do campo Event time no registo não processado. |
Hora do evento: | metadata.event_timestamp | O valor é retirado do campo Event time: no registo não processado. |
Tipo de evento | metadata.product_event_type | O valor é retirado do campo Event Type no registo não processado. |
Tipo de evento: | metadata.product_event_type | O valor é retirado do campo Event Type: no registo não processado. |
Caminho do ficheiro | target.file.full_path | O valor é retirado do campo File path no registo não processado. |
Caminho do ficheiro: | target.file.full_path | O valor é retirado do campo File path: no registo não processado. |
Tamanho do ficheiro (bytes) | target.file.size | O valor é retirado do campo File size (bytes) no registo não processado. |
Visto pela primeira vez | security_result.action_details | O valor é retirado do campo First Seen no registo não processado. |
Visto pela primeira vez: | security_result.action_details | O valor é retirado do campo First Seen: no registo não processado. |
Grupo | principal.group.group_display_name | O valor é retirado do campo Group no registo não processado. |
Nome do grupo | principal.group.group_display_name | O valor é retirado do campo Group Name no registo não processado. |
Nome do grupo: | principal.group.group_display_name | O valor é retirado do campo Group Name: no registo não processado. |
Tipo de hash | target.resource.attribute.labels.value | O valor é retirado do campo Hash type no registo não processado. A chave está codificada como Hash Type . |
Nível de proteção intensivo | ||
ID de intrusão | ||
URL de payload de intrusão | ||
URL de intrusão | ||
Endereço IP | principal.ip | O valor é retirado do campo IP Address no registo não processado. |
Endereço IP: | principal.ip | O valor é retirado do campo IP Address: no registo não processado. |
Hora da última atualização | ||
Anfitrião local | principal.ip | O valor é retirado do campo Local Host no registo não processado. |
IP do anfitrião local | principal.ip | O valor é retirado do campo Local Host IP no registo não processado. |
MAC do anfitrião local | principal.mac | O valor é retirado do campo Local Host MAC no registo não processado. |
Porta local | principal.port | O valor é retirado do campo Local Port no registo não processado. |
Location | ||
MD-5 | ||
Ocorrências | security_result.about.resource.attribute.labels.value | O valor é retirado do campo Occurrences no registo não processado. A chave está codificada como Occurrences . |
Motivo da aplicação permitida | security_result.action_details | O valor é retirado do campo Permitted application reason no registo não processado. |
Prevalência | security_result.description | O valor é retirado do campo Prevalence no registo não processado. |
Caminho remoto | target.file.full_path | O valor é retirado do campo Remote file path no registo não processado. |
IP do anfitrião remoto | target.ip | O valor é retirado do campo Remote Host IP no registo não processado. |
MAC do anfitrião remoto | target.mac | O valor é retirado do campo Remote Host MAC no registo não processado. |
Nome do anfitrião remoto | target.hostname | O valor é retirado do campo Remote Host Name no registo não processado. |
Porta remota | target.port | O valor é retirado do campo Remote Port no registo não processado. |
Ação pedida | security_result.action | O valor é retirado do campo Requested action no registo não processado e mapeado para uma ação da UDM. |
Nível de risco | security_result.severity | O valor é retirado do campo Risk Level no registo não processado e mapeado para uma gravidade da UDM. |
Nome do risco | security_result.threat_name | O valor é retirado do campo Risk name no registo não processado. |
Tipo de risco | security_result.detection_fields.value | O valor é retirado do campo Risk type no registo não processado. A chave está codificada como Risk Type . |
Regra | principal.resource.name | O valor é retirado do campo Rule no registo não processado. |
Regra: | principal.resource.name | O valor é retirado do campo Rule: no registo não processado. |
ID da análise | extensions.vulns.vulnerabilities.name | O valor é retirado do campo Scan ID no registo não processado. |
ID da análise: | extensions.vulns.vulnerabilities.name | O valor é retirado do campo Scan ID: no registo não processado. |
Tipo de análise | ||
Ação secundária | target.resource.attribute.labels.value | O valor é retirado do campo Secondary action no registo não processado. A chave está codificada como Secondary action . |
Risco de segurança encontrado | metadata.description | O valor é retirado do campo Security risk found no registo não processado. |
Servidor | intermediary.hostname | O valor é retirado do campo Server no registo não processado. |
Nome do servidor | intermediary.hostname | O valor é retirado do campo Server Name no registo não processado. |
Nome do servidor: | intermediary.hostname | O valor é retirado do campo Server Name: no registo não processado. |
SHA-256 | principal.process.file.sha256 | O valor é retirado do campo SHA-256 no registo não processado. |
Site | additional.fields.value.string_value | O valor é retirado do campo Site no registo não processado. A chave está codificada como Site Name . |
Nome do site | additional.fields.value.string_value | O valor é retirado do campo Site Name no registo não processado. A chave está codificada como Site Name . |
Site: | additional.fields.value.string_value | O valor é retirado do campo Site: no registo não processado. A chave está codificada como Site Name . |
Origem | metadata.product_event_type | O valor é retirado do campo Source no registo não processado e anexado à string codificada Security risk found - . |
Computador de origem | ||
Computador de origem: | ||
IP da fonte | ||
IP de origem: | ||
Origem: | metadata.product_event_type | O valor é retirado do campo Source: no registo não processado e anexado à string codificada Security risk found - . |
ts | metadata.event_timestamp | O valor é retirado do campo ts no registo não processado. |
Estado do acompanhamento de URLs | ||
Utilizador | principal.user.userid | O valor é retirado do campo User no registo não processado. |
Nome de utilizador | principal.user.userid | O valor é retirado do campo User Name no registo não processado. |
Nome de Utilizador: | principal.user.userid | O valor é retirado do campo User Name: no registo não processado. |
Domínio Web | ||
metadata.description | Se o registo não processado contiver a string The client has downloaded , a descrição é definida como The client has downloaded {target file name} . Se o registo não processado contiver a string The management server received , a descrição é definida como The management server received the client log successfully . Caso contrário, a descrição é definida como o valor do campo Event Description no registo não processado. |
|
metadata.event_type | O tipo de evento é determinado pela lógica do analisador com base no conteúdo do registo não processado. | |
metadata.log_type | O tipo de registo está codificado como SEP . |
|
metadata.product_name | O nome do produto está codificado como SEP . |
|
metadata.vendor_name | O nome do fornecedor está codificado como Symantec . |
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.