Recolha registos do Trellix ePO
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
- 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
Instale o agente do Bindplane no seu sistema operativo Windows ou Linux de acordo com as seguintes instruções.
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: 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
- 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 servidor Syslog do McAfee ePO (Trellix)
- Inicie sessão no (Trellix) McAfee EPO.
- Aceda a Menu > Configuração > Servidores registados.
- Clique em Novo servidor.
- Selecione Servidor Syslog, especifique um nome exclusivo e, de seguida, clique em Seguinte.
- 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.
- 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.