Recolha registos do FireEye HX

Suportado em:

Este documento explica como recolher registos do FireEye Endpoint Security (HX) para o Google Security Operations através do Bindplane. O analisador tenta processar a mensagem de entrada como JSON. Se a mensagem não estiver no formato JSON, usa padrões grok para extrair campos e, em seguida, realiza o mapeamento UDM condicional com base no tipo de evento extraído e noutros critérios.

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 FireEye Endpoint Security.

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 de janelas

  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:
        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: 'FIREEYE_HX'
                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 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 Bindplane no Windows, pode usar a consola Serviços ou introduzir o seguinte comando:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Configure o syslog do FireEye HX Event Streamer através da IU

  1. Inicie sessão na consola de gestão do FireEye HX.
  2. Aceda a Event Streamer.
  3. Selecione Ativar Event Streamer no anfitrião.
  4. Guarde as alterações à política.
  5. Aceda a Destinos > Definições do servidor > Adicionar destino syslog.
  6. Forneça os seguintes detalhes de configuração:
    • Nome: introduza um nome exclusivo para etiquetar o coletor de registos do Google SecOps.
    • Endereço IP: introduza o endereço IP do agente Bindplane.
    • Porta: introduza o número da porta do agente do Bindplane.
  7. Guarde as alterações para as aplicar.

Configure o syslog do FireEye HX Event Streamer através da CLI

  1. Inicie sessão no dispositivo FireEye HX através da interface de linhas de comando (CLI).
  2. Execute o seguinte comando para ativar o modo de configuração:

    enable
    configure terminal
    
  3. Execute o seguinte comando para adicionar um destino de servidor syslog remoto:

    logging BINDPLANE_IP_ADDRESS port PORT_NUMBER port
    
    • Substitua o seguinte:
      • BINDPLANE_IP_ADDRESS: o endereço IP do encaminhador do Google SecOps
      • PORT_NUMBER: o número da porta
  4. Execute o seguinte comando para guardar os detalhes da configuração:

    write mem
    

Tabela de mapeamento da UDM

Campo de registo Mapeamento da UDM Lógica
alert.agent._id principal.asset.asset_id O ID do agente do registo não processado, com o prefixo AGENT ID:
alert.agent.url principal.labels.value O URL do agente do registo não processado.
alert.condition._id additional.fields.value.string_value O ID da condição do registo não processado, com = carateres removidos.
alert.condition.url additional.fields.value.string_value O URL da condição do registo não processado, com = carateres removidos.
alert.decorators[].data.fireeye_report.indicator_verdict.malware_families.0 security_result.threat_name A família de software malicioso do relatório da FireEye no campo decorators do registo não processado.
alert.decorators[].data.fireeye_report.risk_summary security_result.description O resumo de risco do relatório da FireEye no campo decorators do registo não processado.
alert.decorators[].data.fireeye_verdict security_result.severity_details O veredito do FireEye do campo de decoradores do registo não processado.
alert.event_at read_only_udm.metadata.event_timestamp A data/hora do evento do registo não processado.
alert.event_id read_only_udm.metadata.product_log_id O ID do evento do registo não processado.
alert.event_type read_only_udm.metadata.product_event_type O tipo de evento do registo não processado.
alert.event_values.fileWriteEvent/fullPath target.file.full_path O caminho completo do ficheiro escrito a partir do registo não processado.
alert.event_values.fileWriteEvent/md5 target.file.md5 O hash MD5 do ficheiro escrito a partir do registo não processado.
alert.event_values.fileWriteEvent/pid principal.process.pid O ID do processo que escreveu o ficheiro a partir do registo não processado.
alert.event_values.fileWriteEvent/processPath principal.process.file.full_path O caminho do processo que escreveu o ficheiro a partir do registo não processado. Combinado com alert.event_values.fileWriteEvent/process para criar o caminho completo se o SO for o Windows.
alert.event_values.fileWriteEvent/size target.file.size O tamanho do ficheiro escrito a partir do registo não processado.
alert.event_values.fileWriteEvent/username principal.user.userid O utilizador que escreveu o ficheiro a partir do registo não processado.
alert.event_values.ipv4NetworkEvent/localIP principal.ip O endereço IP local do registo não processado.
alert.event_values.ipv4NetworkEvent/localPort principal.port A porta local do registo não processado.
alert.event_values.ipv4NetworkEvent/pid principal.process.pid O ID do processo do registo não processado.
alert.event_values.ipv4NetworkEvent/process principal.process.file.full_path O nome do processo do registo não processado. Combinado com alert.event_values.ipv4NetworkEvent/processPath para criar o caminho completo se o SO for o Windows.
alert.event_values.ipv4NetworkEvent/processPath principal.process.file.full_path O caminho do processo a partir do registo não processado. Combinado com alert.event_values.ipv4NetworkEvent/process para criar o caminho completo se o SO for o Windows.
alert.event_values.ipv4NetworkEvent/protocol network.ip_protocol O protocolo de rede do registo não processado.
alert.event_values.ipv4NetworkEvent/remoteIP target.ip O endereço IP remoto do registo não processado.
alert.event_values.ipv4NetworkEvent/remotePort target.port A porta remota do registo não processado.
alert.event_values.ipv4NetworkEvent/timestamp read_only_udm.metadata.event_timestamp A data/hora do evento do registo não processado.
alert.event_values.ipv4NetworkEvent/username principal.user.userid O utilizador do registo não processado.
alert.event_values.processEvent/md5 target.process.file.md5 O hash MD5 do processo do registo não processado.
alert.event_values.processEvent/parentPid principal.process.pid O ID do processo principal do registo não processado.
alert.event_values.processEvent/parentProcess principal.process.file.full_path O nome do processo principal do registo não processado.
alert.event_values.processEvent/parentProcessPath principal.process.file.full_path O caminho do processo principal a partir do registo não processado.
alert.event_values.processEvent/pid target.process.pid O ID do processo do registo não processado.
alert.event_values.processEvent/process target.process.file.full_path O nome do processo do registo não processado.
alert.event_values.processEvent/processCmdLine target.process.command_line A linha de comandos do processo a partir do registo não processado.
alert.event_values.processEvent/processPath target.process.file.full_path O caminho do processo a partir do registo não processado.
alert.event_values.processEvent/timestamp read_only_udm.metadata.event_timestamp A data/hora do evento do registo não processado.
alert.event_values.processEvent/username principal.user.userid O utilizador do registo não processado.
alert.event_values.urlMonitorEvent/hostname target.hostname O nome do anfitrião do registo não processado.
alert.event_values.urlMonitorEvent/localPort principal.port A porta local do registo não processado.
alert.event_values.urlMonitorEvent/pid principal.process.pid O ID do processo do registo não processado.
alert.event_values.urlMonitorEvent/process principal.process.file.full_path O nome do processo do registo não processado. Combinado com alert.event_values.urlMonitorEvent/processPath para criar o caminho completo se o SO for o Windows.
alert.event_values.urlMonitorEvent/processPath principal.process.file.full_path O caminho do processo a partir do registo não processado. Combinado com alert.event_values.urlMonitorEvent/process para criar o caminho completo se o SO for o Windows.
alert.event_values.urlMonitorEvent/remoteIpAddress target.ip O endereço IP remoto do registo não processado.
alert.event_values.urlMonitorEvent/remotePort target.port A porta remota do registo não processado.
alert.event_values.urlMonitorEvent/requestUrl target.url O URL pedido a partir do registo não processado.
alert.event_values.urlMonitorEvent/timestamp read_only_udm.metadata.event_timestamp A data/hora do evento do registo não processado.
alert.event_values.urlMonitorEvent/urlMethod network.http.method O método HTTP do registo não processado.
alert.event_values.urlMonitorEvent/userAgent network.http.user_agent O agente do utilizador do registo não processado.
alert.event_values.urlMonitorEvent/username principal.user.userid O utilizador do registo não processado.
alert.indicator._id security_result.about.labels.value O ID do indicador do registo não processado.
alert.indicator.name read_only_udm.security_result.summary O nome do indicador do registo não processado.
alert.indicator.url security_result.about.labels.value O URL do indicador do registo não processado.
alert.multiple_match read_only_udm.metadata.description A mensagem de várias correspondências do registo não processado.
alert.source additional.fields.value.string_value A origem do alerta a partir do registo não processado.
authmethod extensions.auth.mechanism O método de autenticação do registo não processado. Definido como LOCAL se o valor for local ou LOCAL. Caso contrário, é definido como MECHANISM_OTHER.
authsubmethod extensions.auth.auth_details O submétodo de autenticação do registo não processado, convertido em maiúsculas.
cliente principal.ip O endereço IP do cliente do registo não processado.
conditions.data.tests[].token security_result.detection_fields.key O token dos testes de condições no registo não processado.
conditions.data.tests[].value security_result.detection_fields.value O valor dos testes de condições no registo não processado.
descrição read_only_udm.metadata.description A descrição do registo não processado.
host.agent_version read_only_udm.metadata.product_version A versão do agente do registo não processado.
host.containment_state read_only_udm.principal.containment_state O estado de contenção do registo não processado.
host.domain read_only_udm.principal.administrative_domain O domínio do registo não processado.
host.hostname read_only_udm.principal.hostname O nome do anfitrião do registo não processado.
host.os.platform read_only_udm.principal.platform A plataforma do sistema operativo a partir do registo não processado.
host.os.product_name read_only_udm.principal.platform_version O nome do produto do sistema operativo do registo não processado.
host.primary_ip_address read_only_udm.principal.ip O endereço IP principal do registo não processado.
host.primary_mac read_only_udm.principal.mac O endereço MAC principal do registo não processado, com - carateres substituídos por :.
host_ principal.hostname O nome do anfitrião do registo não processado.
host_details.data.agent_version read_only_udm.metadata.product_version A versão do agente do registo não processado.
host_details.data.containment_state read_only_udm.security_result.severity_details O estado de contenção do registo não processado.
host_details.data.domain read_only_udm.principal.administrative_domain O domínio do registo não processado.
host_details.data.hostname read_only_udm.principal.hostname O nome do anfitrião do registo não processado.
host_details.data.os.platform read_only_udm.principal.platform A plataforma do sistema operativo a partir do registo não processado.
host_details.data.os.product_name read_only_udm.principal.platform_version O nome do produto do sistema operativo do registo não processado.
host_details.data.primary_ip_address read_only_udm.principal.ip O endereço IP principal do registo não processado.
host_details.data.primary_mac read_only_udm.principal.mac O endereço MAC principal do registo não processado, com - carateres substituídos por :.
indicators.data.description read_only_udm.metadata.description A descrição do indicador do registo não processado.
linha target.application A linha do registo não processado.
localusername target.user.user_display_name O nome de utilizador local do registo não processado.
principal_ip principal.ip O endereço IP principal do registo não processado.
processar read_only_udm.principal.application O nome do processo do registo não processado.
process_id read_only_udm.principal.process.pid O ID do processo do registo não processado.
referenciador network.http.referral_url O URL de referência do registo não processado.
remoteaddress principal.ip O endereço remoto do registo não processado.
pedido additional.fields.value.string_value O pedido do registo não processado.
função target.user.role_name A função do registo não processado.
servidor target.resource.attribute.labels.value O servidor do registo não processado.
sessionID network.session_id O ID da sessão do registo não processado.
gravidade security_result.severity Definido como LOW, MEDIUM ou HIGH com base na gravidade do registo não processado.
target_host read_only_udm.target.hostname O nome do anfitrião de destino do registo não processado.
target_ip target.ip O endereço IP de destino do registo não processado.
target_ip1 target.ip O endereço IPv6 de destino do registo não processado.
timestamp timestamp A data/hora do registo não processado.
upstream target.url O URL a montante do registo não processado.
nome de utilizador target.user.userid O nome de utilizador do registo não processado.

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