Coletar registros do Symantec DLP

Compatível com:

Este documento explica como coletar registros da DLP da Symantec usando o Bindplane. Primeiro, o código do analisador tenta analisar os dados de registro do DLP da Symantec recebidos como XML. Se a análise XML falhar, ela vai assumir um formato SYSLOG + KV (CEF) e usar uma combinação de filtros grok e kv para extrair pares de chave-valor e mapeá-los para o modelo de dados unificado (UDM).

Antes de começar

  • Verifique se você tem uma instância do Google Security Operations.
  • Use o Windows 2016 ou uma versão 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.
  • Verifique se você tem acesso privilegiado ao Symantec DLP.

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

Configurar o agente do Bindplane para ingerir o Syslog e enviar ao Google SecOps

  1. Acesse o arquivo de configuração:

    1. 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.
    2. 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:
        tcplog:
            # Replace the port and IP address as required
            listen_address: "0.0.0.0:54525"
    
    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: SYSLOG
                namespace: symantec_dlp
                raw_log_field: body
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - tcplog
                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 DLP da Symantec

  1. Faça login no console de administração do servidor da Symantec.
  2. Selecione Gerenciar > Políticas > Regras de resposta.
  3. Selecione Configurar regra de resposta e insira um nome para a regra.
  4. Forneça os seguintes detalhes:

    • Ações: selecione Registrar em um servidor syslog.
    • Host: insira o endereço IP Bindplane.
    • Porta: digite o número da porta Bindplane.
    • Mensagem: insira a seguinte mensagem:

          |symcdlpsys|APPLICATION_NAME|$APPLICATION_NAME$|APPLICATION_USER|$APPLICATION_USER$|ATTACHMENT_FILENAME|$ATTACHMENT_FILENAME$|BLOCKED|$BLOCKED$|DATAOWNER_NAME|$DATAOWNER_NAME$|DATAOWNER_EMAIL|$DATAOWNER_EMAIL$|DESTINATION_IP|$DESTINATION_IP$|ENDPOINT_DEVICE_ID|$ENDPOINT_DEVICE_ID$|ENDPOINT_LOCATION|$ENDPOINT_LOCATION$|ENDPOINT_MACHINE|$ENDPOINT_MACHINE$|ENDPOINT_USERNAME|$ENDPOINT_USERNAME$|PATH|$PATH$|FILE_NAME|$FILE_NAME$|PARENT_PATH|$PARENT_PATH$|INCIDENT_ID|$INCIDENT_ID$|INCIDENT_SNAPSHOT|$INCIDENT_SNAPSHOT$|MACHINE_IP|$MACHINE_IP$|MATCH_COUNT|$MATCH_COUNT$|OCCURRED_ON|$OCCURRED_ON$|POLICY|$POLICY$|RULES|$RULES$|PROTOCOL|$PROTOCOL$|QUARANTINE_PARENT_PATH|$QUARANTINE_PARENT_PATH$|RECIPIENTS|$RECIPIENTS$|REPORTED_ON|$REPORTED_ON$|SCAN|$SCAN$|SENDER|$SENDER$|MONITOR_NAME|$MONITOR_NAME$|SEVERITY|$SEVERITY$|STATUS|$STATUS$|SUBJECT|$SUBJECT$|TARGET|$TARGET$|URL|$URL$|USER_JUSTIFICATION|$USER_JUSTIFICATION$|
      
    • Depuração: selecione Nível 4.

  5. Clique em Aplicar.

Tabela de mapeamento do UDM

Campo de registro Mapeamento da UDM Lógica
age security_result.action Se act for Passed, defina como ALLOW. Se act for Modified, defina como ALLOW_WITH_MODIFICATION. Se act for Blocked, defina como BLOCK. Caso contrário, defina como UNKNOWN_ACTION.
application_name target.application Mapeado diretamente.
asset_ip principal.ip, principal.asset.ip Mapeado diretamente.
asset_name principal.hostname, principal.asset.hostname Mapeado diretamente.
attachment_name security_result.about.file.full_path Mapeado diretamente.
bloqueado security_result.action_details Mapeado diretamente.
calling_station_id principal.mac, principal.asset.mac Se calling_station_id for um endereço MAC, mapeie-o diretamente depois de substituir - por : e converter para minúsculas.
called_station_id target.mac, target.asset.mac Se called_station_id for um endereço MAC, extraia a parte do endereço MAC antes de : e mapeie diretamente depois de substituir - por : e converter para minúsculas.
category1 security_result.detection_fields Crie um marcador com a chave category1 e o valor de category1.
category2 security_result.detection_fields Crie um marcador com a chave category2 e o valor de category2.
category3 security_result.detection_fields Crie um marcador com a chave category3 e o valor de category3.
client_friendly_name target.user.userid Mapeado diretamente.
dataowner_mail principal.user.email_addresses Mapeado diretamente se for um endereço de e-mail válido.
description metadata.description Mapeado diretamente.
dest_location target.location.country_or_region Mapeado diretamente se não for RED.
deviceId target.asset_id Mapeado como ID:%{deviceId}.
device_version metadata.product_version Mapeado diretamente.
dhost network.http.referral_url Mapeado diretamente.
dlp_type security_result.detection_fields Crie um marcador com a chave dlp_type e o valor de dlp_type.
DLP_EP_Incident_ID security_result.threat_id, security_result.detection_fields Mapeado diretamente para threat_id. Além disso, crie um rótulo com a chave Incident ID e o valor de DLP_EP_Incident_ID.
domínio principal.administrative_domain Mapeado diretamente.
dst target.ip, target.asset.ip Mapeado diretamente se for um endereço IP válido.
endpoint_machine target.ip, target.asset.ip Mapeado diretamente se for um endereço IP válido.
endpoint_user_department target.user.department Mapeado diretamente.
endpoint_user_email target.user.email_addresses Mapeado diretamente.
endpoint_user_manager target.user.managers Crie um objeto gerenciador com user_display_name de endpoint_user_manager.
endpoint_user_name target.user.user_display_name Mapeado diretamente.
endpoint_user_title target.user.title Mapeado diretamente.
event_description metadata.description Mapeado diretamente.
event_id metadata.product_log_id Mapeado diretamente.
event_source target.application Mapeado diretamente.
event_timestamp metadata.event_timestamp Mapeado diretamente.
file_name security_result.about.file.full_path Mapeado diretamente.
filename target.file.full_path, src.file.full_path Mapeado diretamente para target.file.full_path. Se has_principal for verdadeiro, mapeie também para src.file.full_path e defina event_type como FILE_COPY.
host src.hostname, principal.hostname, principal.asset.hostname Se cef_data contiver CEF, mapeie para todos os três campos. Caso contrário, mapeie para principal.hostname e principal.asset.hostname.
incident_id security_result.threat_id, security_result.detection_fields Mapeado diretamente para threat_id. Além disso, crie um rótulo com a chave Incident ID e o valor de incident_id.
local principal.resource.attribute.labels Crie um marcador com a chave Location e o valor de location.
match_count security_result.detection_fields Crie um marcador com a chave Match Count e o valor de match_count.
monitor_name additional.fields Crie um marcador com a chave Monitor Name e o valor de monitor_name.
nas_id target.hostname, target.asset.hostname Mapeado diretamente.
occurred_on principal.labels, additional.fields Crie um rótulo com a chave Occurred On e o valor de occurred_on para principal.labels e additional.fields.
policy_name sec_result.detection_fields Crie um marcador com a chave policy_name e o valor de policy_name.
policy_rule security_result.rule_name Mapeado diretamente.
policy_severity security_result.severity Mapeado para severity após a conversão para maiúsculas. Se policy_severity for INFO, mapeie como INFORMATIONAL. Se policy_severity não for HIGH, MEDIUM, LOW ou INFORMATIONAL, defina severity como UNKNOWN_SEVERITY.
policy_violated security_result.summary Mapeado diretamente.
Protocolo network.application_protocol, target.application, sec_result.description Se Protocol não for FTP ou Endpoint, mapeie para network.application_protocol depois de analisar usando o arquivo parse_app_protocol.include. Se Protocol for FTP, mapeie para target.application. Se Protocol for Endpoint, defina sec_result.description como Protocol=%{Protocol}.
destinatário target.user.email_addresses, about.user.email_addresses Para cada endereço de e-mail em recipient, mapeie para target.user.email_addresses e about.user.email_addresses.
destinatários network.http.referral_url, target.resource.attribute.labels Mapeado diretamente para network.http.referral_url. Além disso, crie um rótulo com a chave recipients e o valor de recipients.
reported_on additional.fields Crie um marcador com a chave Reported On e o valor de reported_on.
regras security_result.detection_fields Crie um marcador com a chave Rules e o valor de rules.
sender network.email.from, target.resource.attribute.labels Se sender for um endereço de e-mail válido, mapeie-o para network.email.from. Além disso, crie um rótulo com a chave sender e o valor de sender.
servidor target.application Mapeado diretamente.
Gravidade security_result.severity Consulte policy_severity para ver a lógica de mapeamento.
src principal.ip, principal.asset.ip Mapeado diretamente se for um endereço IP válido.
status principal.labels, additional.fields Crie um rótulo com a chave Status e o valor de status para principal.labels e additional.fields.
subject target.resource.attribute.labels, network.email.subject Crie um marcador com a chave subject e o valor de subject. Mapeie também subject para network.email.subject.
target_type target.resource.attribute.labels Crie um marcador com a chave Target Type e o valor de target_type.
timestamp metadata.event_timestamp Mapeado diretamente após a análise usando o filtro date.
url target.url Mapeado diretamente.
usuário target.user.userid Mapeado diretamente.
user_id principal.user.userid Mapeado diretamente.
nome de usuário principal.user.userid Mapeado diretamente.
N/A metadata.product_name Defina como SYMANTEC_DLP.
N/A metadata.vendor_name Defina como SYMANTEC.
N/A metadata.event_type Se event_type não estiver vazio, mapeie diretamente. Caso contrário, se host não estiver vazio e has_principal for verdadeiro, defina como SCAN_NETWORK. Caso contrário, defina como GENERIC_EVENT.
N/A metadata.product_event_type Se policy_violated contiver -NM- ou data contiver DLP NM, defina como Network Monitor. Se policy_violated contiver -EP- ou data contiver DLP EP, defina como Endpoint.
N/A metadata.log_type Defina como SYMANTEC_DLP.

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