Coletar registros do Symantec Endpoint Protection

Compatível com:

Este documento explica como ingerir registros do Symantec Endpoint Protection no Google Security Operations usando o Bindplane. O analisador processa registros no formato SYSLOG ou KV, primeiro extraindo carimbos de data/hora de vários formatos nos dados de registro. Em seguida, ele usa um arquivo de configuração separado (sep_pt2.include) para realizar mais análises e estruturação dos eventos de registro, garantindo o sucesso do processamento somente se a extração inicial do carimbo de data/hora for bem-sucedida.

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 à plataforma Symantec Endpoint Protection.

Receber o arquivo de autenticação de ingestão do Google SecOps

  1. Faça login no console do Google SecOps.
  2. Acesse Configurações do SIEM > Agentes de coleta.
  3. 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

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

Instalar o agente do Bindplane

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
    

Instalação do Linux

  1. Abra um terminal com privilégios de root 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
    

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

  1. 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).
  2. 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: 'CES'
                raw_log_field: body
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. Substitua a porta e o endereço IP conforme necessário na sua infraestrutura.

  4. Substitua <customer_id> pelo ID do cliente real.

  5. 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 Endpoint Protection

  1. Faça login na UI da Web do Symantec Endpoint Protection Manager.
  2. Clique no ícone Administrador.
  3. Localize a seção Ver servidores e clique em Servidores.
  4. Clique em Site local > Configurar registro externo.
  5. Marque a caixa de seleção Ativar a transmissão de registros para um servidor Syslog.
  6. Informe os seguintes detalhes de configuração:
    • Servidor Syslog: insira o endereço IP do Bindplane.
    • Porta de destino UDP: insira o número da porta do Bindplane (por exemplo, 514 para UDP).
    • Instalação de registro: insira Local6.
    • Marque a caixa de seleção Registros de auditoria.
    • Marque a caixa de seleção Registros de segurança.
    • Marque a caixa de seleção Riscos.
  7. Clique em OK.

Tabela de mapeamento da UDM

Campo de registro Mapeamento da UDM Lógica
Ação security_result.action O valor é extraído do campo Action no registro bruto e mapeado para uma ação da UDM.
Tipo de ação security_result.action_details O valor é extraído do campo Action Type no registro bruto.
Administrador
Motivo da permissão do aplicativo security_result.action_details O valor é extraído do campo Allowed application reason no registro bruto.
Aplicativo principal.process.command_line O valor é extraído do campo Application no registro bruto.
Hash do aplicativo target.file.sha256 O valor é extraído do campo Application hash no registro bruto.
Nome do aplicativo target.application O valor é extraído do campo Application name no registro bruto.
Tipo de aplicativo target.resource.attribute.labels.value O valor é extraído do campo Application type no registro bruto. A chave está fixada no código como Application Type.
Versão do aplicativo target.application.version O valor é extraído do campo Application version no registro bruto.
Iniciar
Horário de início extensions.vulns.vulnerabilities.scan_start_time O valor é extraído do campo Begin Time no registro bruto.
Início: extensions.vulns.vulnerabilities.scan_start_time O valor é extraído do campo Begin: no registro bruto.
Categoria principal.resource.attribute.labels.value O valor é extraído do campo Category no registro bruto. A chave está fixada no código como Category.
Conjunto de categorias security_result.category O valor é extraído do campo Category set no registro bruto e mapeado para uma categoria da UDM.
Tipo de categoria security_result.category_details O valor é extraído do campo Category type no registro bruto.
ID da assinatura do CIDS
String de assinatura do CIDS. security_result.summary O valor é extraído do campo CIDS Signature string no registro bruto.
CIDS Signature SubID
Política de cliente
Comando
Computador target.hostname O valor é extraído do campo Computer no registro bruto.
Nome do computador principal.hostname O valor é extraído do campo Computer name no registro bruto.
Confiança security_result.confidence_details O valor é extraído do campo Confidence no registro bruto.
dados
Descrição security_result.action_details O valor é extraído do campo Description no registro bruto.
Descrição: security_result.action_details O valor é extraído do campo Description: no registro bruto.
Pontuação de detecção
Envios de detecção: não
Tipo de detecção security_result.summary O valor é extraído do campo Detection type no registro bruto.
ID do dispositivo target.asset.hostname O valor é extraído do campo Device ID no registro bruto.
Disposição security_result.action O valor é extraído do campo Disposition no registro bruto e mapeado para uma ação da UDM.
Domínio principal.administrative_domain O valor é extraído do campo Domain no registro bruto.
Nome do domínio principal.administrative_domain O valor é extraído do campo Domain Name no registro bruto.
Nome do domínio: principal.administrative_domain O valor é extraído do campo Domain Name: no registro bruto.
Download feito por principal.process.file.full_path O valor é extraído do campo Downloaded by no registro bruto.
Site de download
Duração (segundos) extensions.vulns.vulnerabilities.scan_end_time O valor é extraído do campo Duration (seconds) no registro bruto e adicionado ao horário de início da verificação.
Fim
Horário de término extensions.vulns.vulnerabilities.scan_end_time O valor é extraído do campo End Time no registro bruto.
Horário de término: extensions.vulns.vulnerabilities.scan_end_time O valor é extraído do campo End Time: no registro bruto.
Final: extensions.vulns.vulnerabilities.scan_end_time O valor é extraído do campo End: no registro bruto.
Descrição do evento metadata.description O valor é extraído do campo Event Description no registro bruto.
Descrição do evento: metadata.description O valor é extraído do campo Event Description: no registro bruto.
Horário de inserção do evento
Horário do evento metadata.event_timestamp O valor é extraído do campo Event time no registro bruto.
Horário do evento: metadata.event_timestamp O valor é extraído do campo Event time: no registro bruto.
Tipo de evento metadata.product_event_type O valor é extraído do campo Event Type no registro bruto.
Tipo de evento: metadata.product_event_type O valor é extraído do campo Event Type: no registro bruto.
Caminho do arquivo target.file.full_path O valor é extraído do campo File path no registro bruto.
Caminho do arquivo: target.file.full_path O valor é extraído do campo File path: no registro bruto.
Tamanho do arquivo (bytes) target.file.size O valor é extraído do campo File size (bytes) no registro bruto.
Visto pela primeira vez security_result.action_details O valor é extraído do campo First Seen no registro bruto.
Visto pela primeira vez: security_result.action_details O valor é extraído do campo First Seen: no registro bruto.
Grupo principal.group.group_display_name O valor é extraído do campo Group no registro bruto.
Nome do grupo principal.group.group_display_name O valor é extraído do campo Group Name no registro bruto.
Nome do grupo: principal.group.group_display_name O valor é extraído do campo Group Name: no registro bruto.
Tipo de hash target.resource.attribute.labels.value O valor é extraído do campo Hash type no registro bruto. A chave está fixada no código como Hash Type.
Nível de proteção intensiva
ID da intrusão
URL de payload de intrusão
URL de intrusão
Endereço IP principal.ip O valor é extraído do campo IP Address no registro bruto.
Endereço IP: principal.ip O valor é extraído do campo IP Address: no registro bruto.
Hora da última atualização
Host local principal.ip O valor é extraído do campo Local Host no registro bruto.
IP do host local principal.ip O valor é extraído do campo Local Host IP no registro bruto.
MAC do host local principal.mac O valor é extraído do campo Local Host MAC no registro bruto.
Porta local principal.port O valor é extraído do campo Local Port no registro bruto.
Local
MD-5
Ocorrências security_result.about.resource.attribute.labels.value O valor é extraído do campo Occurrences no registro bruto. A chave está fixada no código como Occurrences.
Motivo da permissão do aplicativo security_result.action_details O valor é extraído do campo Permitted application reason no registro bruto.
Prevalência security_result.description O valor é extraído do campo Prevalence no registro bruto.
Caminho remoto target.file.full_path O valor é extraído do campo Remote file path no registro bruto.
IP do host remoto target.ip O valor é extraído do campo Remote Host IP no registro bruto.
MAC do host remoto target.mac O valor é extraído do campo Remote Host MAC no registro bruto.
Nome do host remoto target.hostname O valor é extraído do campo Remote Host Name no registro bruto.
Porta remota target.port O valor é extraído do campo Remote Port no registro bruto.
Ação solicitada security_result.action O valor é extraído do campo Requested action no registro bruto e mapeado para uma ação da UDM.
Nível de risco security_result.severity O valor é extraído do campo Risk Level no registro bruto e mapeado para uma gravidade da UDM.
Nome do risco security_result.threat_name O valor é extraído do campo Risk name no registro bruto.
Tipo de risco security_result.detection_fields.value O valor é extraído do campo Risk type no registro bruto. A chave está fixada no código como Risk Type.
Regra principal.resource.name O valor é extraído do campo Rule no registro bruto.
Regra: principal.resource.name O valor é extraído do campo Rule: no registro bruto.
ID de verificação extensions.vulns.vulnerabilities.name O valor é extraído do campo Scan ID no registro bruto.
ID de verificação: extensions.vulns.vulnerabilities.name O valor é extraído do campo Scan ID: no registro bruto.
Tipo de verificação
Ação secundária target.resource.attribute.labels.value O valor é extraído do campo Secondary action no registro bruto. A chave está fixada no código como Secondary action.
Risco de segurança encontrado metadata.description O valor é extraído do campo Security risk found no registro bruto.
Servidor intermediary.hostname O valor é extraído do campo Server no registro bruto.
Nome do servidor intermediary.hostname O valor é extraído do campo Server Name no registro bruto.
Nome do servidor: intermediary.hostname O valor é extraído do campo Server Name: no registro bruto.
SHA-256 principal.process.file.sha256 O valor é extraído do campo SHA-256 no registro bruto.
Site additional.fields.value.string_value O valor é extraído do campo Site no registro bruto. A chave está fixada no código como Site Name.
Nome do site additional.fields.value.string_value O valor é extraído do campo Site Name no registro bruto. A chave está fixada no código como Site Name.
Site: additional.fields.value.string_value O valor é extraído do campo Site: no registro bruto. A chave está fixada no código como Site Name.
Origem metadata.product_event_type O valor é extraído do campo Source no registro bruto e anexado à string codificada Security risk found -.
Computador de origem
Computador de origem:
IP de origem
IP de origem:
Fonte: metadata.product_event_type O valor é extraído do campo Source: no registro bruto e anexado à string codificada Security risk found -.
ts metadata.event_timestamp O valor é extraído do campo ts no registro bruto.
Status do rastreamento de URL
Usuário principal.user.userid O valor é extraído do campo User no registro bruto.
Nome do usuário principal.user.userid O valor é extraído do campo User Name no registro bruto.
Nome de usuário: principal.user.userid O valor é extraído do campo User Name: no registro bruto.
Domínio da Web
metadata.description Se o log bruto contiver a string The client has downloaded, a descrição será definida como The client has downloaded {target file name}. Se o log bruto contiver a string The management server received, a descrição será definida como The management server received the client log successfully. Caso contrário, a descrição será definida como o valor do campo Event Description no registro bruto.
metadata.event_type O tipo de evento é determinado pela lógica do analisador com base no conteúdo do registro bruto.
metadata.log_type O tipo de registro está fixado no código como SEP.
metadata.product_name O nome do produto está fixado no código como SEP.
metadata.vendor_name O nome do fornecedor é codificado como Symantec.

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