Recolha registos do Trellix ePO

Compatível com:

Este documento explica como carregar registos do Trellix (anteriormente McAfee) ePolicy (ePO) Orchestrator para o Google Security Operations através do Bindplane. O analisador usa padrões grok e filtragem XML para extrair campos de registos formatados em XML e CSV, normaliza os endereços IP e MAC e mapeia os dados extraídos para o modelo de dados unificado (UDM). O analisador também processa tipos de eventos específicos e ações de segurança, definindo campos UDM adequados com base no conteúdo do registo.

Antes de começar

Certifique-se de que tem os seguintes pré-requisitos:

  • Instância do Google SecOps
  • Windows 2016 ou posterior, ou um anfitrião Linux com systemd
  • Se estiver a ser executado através de um proxy, as portas da firewall estão abertas
  • Acesso privilegiado ao McAfee EPO

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

Instale o agente do Bindplane no seu sistema operativo Windows ou Linux de acordo com as seguintes instruções.

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

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

  1. 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).
  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:6514"
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the path to the credentials file you downloaded in Step 1
            creds_file_path: '/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: 'MCAFEE_EPO'
                raw_log_field: body
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/chronicle_w_labels
    

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 servidor Syslog do McAfee ePO (Trellix)

  1. Inicie sessão no (Trellix) McAfee EPO.
  2. Aceda a Menu > Configuração > Servidores registados.
  3. Clique em Novo servidor.
  4. Selecione Servidor Syslog, especifique um nome exclusivo e, de seguida, clique em Seguinte.
  5. Indique os seguintes detalhes de configuração:
    • Nome do servidor: introduza o endereço IP do agente do Bindplane.
    • Número da porta TCP: introduza a porta TCP do agente Bindplane (a predefinição é 6514).
    • Ativar encaminhamento de eventos: selecione esta opção para ativar o encaminhamento de eventos do Agent Handler para este servidor syslog.
    • Clique em Testar ligação para validar a ligação ao Bindplane.
  6. Clique em Guardar.

Tabela de mapeamento do UDM

Campo de registo Mapeamento de UDM Lógica
AgentGUID principal.asset.id O GUID do agente é mapeado diretamente para o ID do recurso no UDM.
Analyzer idm.read_only_udm.security_result.detection_fields.value O valor do analisador está mapeado como um campo de deteção com a chave "DetectingProductID".
AnalyzerContentCreationDate idm.read_only_udm.additional.fields.value.string_value A data de criação do conteúdo do analisador é mapeada para campos adicionais com a chave "Data de criação do conteúdo do analisador".
AnalyzerContentVersion idm.read_only_udm.additional.fields.value.string_value A versão do conteúdo do analisador é mapeada para campos adicionais com a chave "Versão do conteúdo do analisador".
AnalyzerDATVersion idm.read_only_udm.security_result.detection_fields.value A versão DAT do analisador é mapeada como um campo de deteção com a chave "datversion".
AnalyzerDetectionMethod idm.read_only_udm.security_result.detection_fields.value O método de deteção do analisador é mapeado como um campo de deteção com a chave "scantype".
AnalyzerEngineVersion idm.read_only_udm.security_result.detection_fields.value A versão do motor do analisador é mapeada como um campo de deteção com a chave "DetectingAgentVersion".
AnalyzerHostName idm.read_only_udm.intermediary.hostname O nome do anfitrião do analisador está mapeado para o nome do anfitrião intermediário.
AnalyzerName idm.read_only_udm.security_result.detection_fields.value O nome do analisador é mapeado como um campo de deteção com a chave "productname".
AnalyzerRuleID idm.read_only_udm.additional.fields.value.string_value O ID da regra do analisador está mapeado para campos adicionais com a chave "ID da regra do analisador".
AnalyzerRuleName idm.read_only_udm.security_result.rule_name O nome da regra do analisador é mapeado diretamente para o nome da regra do resultado de segurança.
AnalyzerVersion idm.read_only_udm.security_result.detection_fields.value A versão do analisador é mapeada como um campo de deteção com a chave "productversion".
BladeName idm.read_only_udm.additional.fields.value.string_value O nome da lâmina está mapeado para campos adicionais com a chave "BladeName".
DetectedUTC metadata.event_timestamp A hora UTC detetada é analisada e mapeada para a data/hora do evento nos metadados.
DurationBeforeDetection idm.read_only_udm.additional.fields.value.string_value A duração antes da deteção é mapeada para campos adicionais com a chave "DurationBeforeDetection".
EventID idm.read_only_udm.security_result.rule_id O ID do evento está mapeado para o ID da regra do resultado de segurança.
GMTTime metadata.event_timestamp A hora GMT é analisada e mapeada para a data/hora do evento nos metadados.
IPAddress principal.ip O endereço IP está diretamente mapeado para o IP principal.
MachineName principal.hostname O nome do computador está mapeado diretamente para o nome do anfitrião principal.
NaturalLangDescription idm.read_only_udm.additional.fields.value.string_value A descrição em linguagem natural é mapeada para campos adicionais com a chave "NaturalLangDescription".
OSName principal.platform O nome do SO é normalizado e mapeado para a plataforma principal (WINDOWS, MAC, LINUX ou UNKNOWN_PLATFORM).
ProductName metadata.product_name O nome do produto é mapeado diretamente para o nome do produto nos metadados.
ProductVersion metadata.product_version A versão do produto é mapeada diretamente para a versão do produto nos metadados.
RawMACAddress principal.mac O endereço MAC não processado é analisado e mapeado para o endereço MAC principal.
Severity idm.read_only_udm.security_result.severity A gravidade é mapeada para a gravidade do resultado de segurança (ALTA, MÉDIA ou BAIXA).
SourceIPV4 idm.read_only_udm.src.ip O endereço IPv4 de origem é mapeado para o IP de origem.
SourceProcessName principal.application O nome do processo de origem está mapeado diretamente para a aplicação principal.
SourceUserName principal.user.user_display_name O nome de utilizador de origem é mapeado diretamente para o nome a apresentar do utilizador principal.
TargetFileName target.process.file.full_path O nome do ficheiro de destino está mapeado para o caminho completo do ficheiro de destino.
TargetHostName target.hostname O nome do anfitrião de destino está mapeado para o nome do anfitrião de destino.
TargetPort target.port A porta de destino está mapeada para a porta de destino.
TargetProtocol network.ip_protocol O protocolo de destino é mapeado para o protocolo IP de rede.
TargetUserName target.user.user_display_name O nome de utilizador de destino está mapeado para o nome a apresentar do utilizador de destino.
ThreatActionTaken security_result.action_details A ação de ameaça tomada é mapeada para os detalhes da ação do resultado de segurança.
ThreatCategory security_result.category_details A categoria de ameaça é mapeada para os detalhes da categoria de resultados de segurança.
ThreatEventID security_result.rule_id O ID do evento de ameaça está mapeado para o ID da regra do resultado de segurança.
ThreatHandled security_result.detection_fields.value O estado de ameaça processada é mapeado como um campo de deteção com a chave "ThreatHandled".
ThreatName security_result.threat_name O nome da ameaça é mapeado diretamente para o nome da ameaça do resultado de segurança.
ThreatSeverity security_result.severity A gravidade da ameaça é mapeada para a gravidade do resultado de segurança (ALTA, MÉDIA ou BAIXA).
ThreatType security_result.threat_id O tipo de ameaça é mapeado para o ID da ameaça do resultado de segurança.
UserName principal.user.user_display_name O nome de utilizador está mapeado para o nome a apresentar do utilizador principal.
collection_time metadata.collected_timestamp A hora de recolha é mapeada para a data/hora recolhida nos metadados.
log_type metadata.log_type O tipo de registo é mapeado diretamente para o tipo de registo de metadados.

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