Recolha registos da Symantec DLP

Compatível com:

Este documento explica como recolher registos de DLP da Symantec através do Bindplane. O código do analisador tenta primeiro analisar os dados de registo do Symantec DLP recebidos como XML. Se a análise XML falhar, assume um formato SYSLOG + KV (CEF) e usa 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

  • Certifique-se de que tem uma instância do Google Security Operations.
  • Certifique-se de que está a usar o Windows 2016 ou posterior, ou um anfitrião Linux com systemd.
  • Se estiver a executar o serviço através de um proxy, certifique-se de que as portas da firewall estão abertas.
  • Certifique-se de que tem acesso privilegiado ao Symantec DLP.

Obtenha o ficheiro de autenticação de carregamento do Google SecOps

  1. Inicie sessão na consola Google SecOps.
  2. Aceda a Definições do SIEM > Agentes de recolha.
  3. 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

  1. Inicie sessão na consola Google SecOps.
  2. Aceda a Definições do SIEM > Perfil.
  3. Copie e guarde o ID do cliente da secção Detalhes da organização.

Instale o agente do Bindplane

Instalação do Windows

  1. Abra a Linha de comandos ou o PowerShell como administrador.
  2. Execute o seguinte 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 raiz ou sudo.
  2. 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

Configure o agente Bindplane para carregar o Syslog e enviá-lo para o Google SecOps

  1. Aceda ao ficheiro de configuração:

    1. 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.
    2. Abra o ficheiro com um editor de texto (por exemplo, nano, vi ou Bloco de notas).
  2. Edite o ficheiro 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 de cliente real.

  5. 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 Symantec DLP

  1. Inicie sessão na consola de administração do servidor Symantec.
  2. Selecione Gerir > Políticas > Regras de resposta.
  3. Selecione Configurar regra de resposta e introduza um nome para a regra.
  4. Forneça os seguintes detalhes:

    • Ações: selecione Registar num servidor syslog.
    • Anfitrião: introduza o Bindplane endereço IP.
    • Porta: introduza o Bindplane número da porta.
    • Mensagem: introduza 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 da UDM

Campo de registo Mapeamento do UDM Lógica
agir 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 letras 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-a diretamente após substituir - por : e converter para letras minúsculas.
category1 security_result.detection_fields Crie uma etiqueta com a chave category1 e o valor de category1.
category2 security_result.detection_fields Crie uma etiqueta com a chave category2 e o valor de category2.
category3 security_result.detection_fields Crie uma etiqueta 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 email válido.
descrição 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 uma etiqueta 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 uma etiqueta 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 de gestor com user_display_name a partir 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.
nome de ficheiro target.file.full_path, src.file.full_path Mapeado diretamente para target.file.full_path. Se has_principal for verdadeiro, também mapeie para src.file.full_path e defina event_type como FILE_COPY.
anfitrião 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 uma etiqueta com a chave Incident ID e o valor de incident_id.
localização principal.resource.attribute.labels Crie uma etiqueta com a chave Location e o valor de location.
match_count security_result.detection_fields Crie uma etiqueta com a chave Match Count e o valor de match_count.
monitor_name additional.fields Crie uma etiqueta 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 uma etiqueta com a chave Occurred On e o valor de occurred_on para principal.labels e additional.fields.
policy_name sec_result.detection_fields Crie uma etiqueta 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-o como INFORMATIONAL. Se policy_severity não for um dos valores 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 nem Endpoint, mapeie-o para network.application_protocol depois de o analisar através do ficheiro parse_app_protocol.include. Se Protocol for FTP, mapeie-o 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 email em recipient, mapeie-o 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 uma etiqueta com a chave recipients e o valor de recipients.
reported_on additional.fields Crie uma etiqueta com a chave Reported On e o valor de reported_on.
regras security_result.detection_fields Crie uma etiqueta com a chave Rules e o valor de rules.
remetente network.email.from, target.resource.attribute.labels Se sender for um endereço de email válido, mapeie-o para network.email.from. Além disso, crie uma etiqueta 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.
estado principal.labels, additional.fields Crie uma etiqueta com a chave Status e o valor de status para principal.labels e additional.fields.
assunto target.resource.attribute.labels, network.email.subject Crie uma etiqueta com a chave subject e o valor de subject. Além disso, mapeie subject para network.email.subject.
target_type target.resource.attribute.labels Crie uma etiqueta com a chave Target Type e o valor de target_type.
timestamp metadata.event_timestamp Mapeado diretamente após a análise com o filtro date.
url target.url Mapeado diretamente.
utilizador target.user.userid Mapeado diretamente.
user_id principal.user.userid Mapeado diretamente.
nome de utilizador principal.user.userid Mapeado diretamente.
N/A metadata.product_name Definido como SYMANTEC_DLP.
N/A metadata.vendor_name Definido como SYMANTEC.
N/A metadata.event_type Se event_type não estiver vazio, mapeie-o 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 Definido como SYMANTEC_DLP.

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