Coletar registros de autenticação preventiva

Compatível com:

Este documento explica como ingerir registros de autenticação preventiva no Google Security Operations usando o agente Bindplane.

O Preempt Auth é uma solução de monitoramento de eventos de autenticação que gera registros detalhados para ambientes do Active Directory. Ele captura eventos de login bem-sucedidos e com falha, pesquisas LDAP, acesso a serviços e tipos de autenticação em todos os endpoints.

Antes de começar

Verifique se você tem os pré-requisitos a seguir:

  • Uma instância do Google SecOps
  • Windows Server 2016 ou mais recente ou host Linux com systemd
  • Conectividade de rede entre o agente do Bindplane e o servidor Preempt
  • Se você estiver executando por trás de um proxy, verifique se as portas do firewall estão abertas de acordo com os requisitos do agente do Bindplane.
  • Acesso privilegiado à autenticação preventiva (proteção de identidade do CrowdStrike) com permissões de administrador

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.
  4. Salve o arquivo com segurança no sistema em que o Bindplane será instalado.

Receber o ID de 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

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

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
    
  3. Aguarde a conclusão da instalação.

  4. Execute o seguinte comando para confirmar a instalação:

    sc query observiq-otel-collector
    

    O serviço vai aparecer como EM EXECUÇÃO.

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
    
  3. Aguarde a conclusão da instalação.

  4. Execute o seguinte comando para confirmar a instalação:

    sudo systemctl status observiq-otel-collector
    

    O serviço vai aparecer como ativo (em execução).

Outros recursos de instalação

Para mais opções de instalação e solução de problemas, consulte o guia de instalação do agente do Bindplane.

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

Localizar o arquivo de configuração

  • Linux:

    sudo nano /opt/observiq-otel-collector/config.yaml
    
  • Windows:

    notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
    

Editar o arquivo de configuração

  • Substitua todo o conteúdo de config.yaml pela seguinte configuração:

    receivers:
        tcplog:
            listen_address: "0.0.0.0:514"
    
    exporters:
        chronicle/preempt_auth:
            compression: gzip
            creds_file_path: '<CREDS_FILE_PATH>'
            customer_id: '<CUSTOMER_ID>'
            endpoint: <REGION_ENDPOINT>
            log_type: PREEMPT_AUTH
            raw_log_field: body
            ingestion_labels:
                env: production
    
    service:
        pipelines:
            logs/preempt_auth_to_chronicle:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/preempt_auth
    

Parâmetros de configuração

Substitua os seguintes marcadores de posição:

  • Configuração do receptor:

    • tcplog: recebe syslog por TCP. Use udplog se a implantação do Preempt encaminhar por UDP.
    • 0.0.0.0:514: detecta todas as interfaces na porta 514. Mude a porta se necessário (por exemplo, 1514 para Linux não root).
  • Configuração do exportador:

    • <CREDS_FILE_PATH>: caminho completo para o arquivo de autenticação de ingestão:
      • Linux: /etc/bindplane-agent/ingestion-auth.json
      • Windows: C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
    • <CUSTOMER_ID>: ID do cliente da etapa Receber ID do cliente do Google SecOps.
    • <REGION_ENDPOINT>: URL do endpoint regional:
      • EUA: malachiteingestion-pa.googleapis.com
      • Europa: europe-malachiteingestion-pa.googleapis.com
      • Ásia: asia-southeast1-malachiteingestion-pa.googleapis.com
      • Consulte a lista completa em Endpoints regionais.

Salvar o arquivo de configuração

  • Depois de editar, salve o arquivo:
    • Linux: pressione Ctrl+O, Enter e Ctrl+X.
    • Windows: clique em Arquivo > Salvar.

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 observiq-otel-collector
    
    1. Verifique se o serviço está em execução:

      sudo systemctl status observiq-otel-collector
      
    2. Verifique se há erros nos registros:

      sudo journalctl -u observiq-otel-collector -f
      
  • Para reiniciar o agente do Bindplane em Windows, escolha uma das seguintes opções:

    • Prompt de comando ou PowerShell como administrador:

      net stop observiq-otel-collector && net start observiq-otel-collector
      
    • Console de serviços:

      1. Pressione Win+R, digite services.msc e pressione Enter.
      2. Localize o Coletor do OpenTelemetry da observIQ.
      3. Clique com o botão direito do mouse e selecione Reiniciar.
      4. Verifique se o serviço está em execução:

        sc query observiq-otel-collector
        
      5. Verifique se há erros nos registros:

        type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
        

Configurar o encaminhamento do syslog da autenticação preventiva

  1. Faça login no console de gerenciamento do Preempt.
  2. Acesse Configurações > Integração do SIEM.
  3. Ative o encaminhamento de syslog para eventos de autenticação.
  4. Informe os seguintes detalhes de configuração:
    • Protocolo: selecione TCP (precisa corresponder à configuração do receptor do agente Bindplane).
    • Endereço do servidor Syslog: insira o endereço IP do host do agente Bindplane (por exemplo, 192.168.1.100).
    • Porta: insira 514 (precisa corresponder à porta do receptor do agente do Bindplane).
  5. Selecione os tipos de eventos de autenticação a serem encaminhados:
    • Eventos de autenticação bem-sucedidos
    • Eventos de falha na autenticação
    • Pesquisas LDAP
    • Eventos de acesso ao serviço
  6. Clique em Salvar ou Aplicar.
  7. Verifique se os registros estão sendo enviados conferindo os registros do agente do Bindplane.

Tabela de mapeamento de UDM

Campo de registro Mapeamento do UDM Lógica
authenticationType extensions.auth.type Definido como "SSO" se authenticationType corresponder a SSO_LOGIN ou LDAP_AUTHENTICATION; "MACHINE" se DOMAIN_LOGIN; "AUTHTYPE_UNSPECIFIED" se NTLM_AUTHENTICATION
extensions.auth.mechanism Definido como "MECHANISM_UNSPECIFIED"
inter_ip intermediary.hostname Definido se inter_ip não for um endereço IP válido.
inter_ip intermediary.ip Definido se inter_ip for um endereço IP válido
eventLabel metadata.description Valor copiado diretamente
eventType metadata.event_type Definido como "USER_LOGIN" se eventType for SUCCESSFUL_AUTHENTICATION ou FAILED_AUTHENTICATION; "SERVICE_UNSPECIFIED" se SERVICE_ACCESS ou LDAP_SEARCH e principal_host_set for verdadeiro
eventType metadata.product_event_type Valor copiado diretamente
endpointDisplayName, ipAddress principal.hostname Definido como "true" se endpointDisplayName != ipAddress e endpointDisplayName != ""
ipAddress, inter_ip principal.ip Valor de ipAddress se ipAddress != inter_ip, caso contrário, de inter_ip
networkType principal.resource.name Valor copiado diretamente
principal.resource.type Definido como "Tipo de rede"
userDisplayName principal.user.email_addresses Definido se userDisplayName corresponder à regex de e-mail
userDisplayName principal.user.user_display_name Valor copiado diretamente
userEntity.secondaryDisplayName, userDisplayName principal.user.userid Valor de userEntity.secondaryDisplayName se não estiver vazio. Caso contrário, de userDisplayName se userEntity.secondaryDisplayName estiver vazio.
eventType security_result.action Definido como "ALLOW" se SUCCESSFUL_AUTHENTICATION, "BLOCK" se FAILED_AUTHENTICATION
eventSeverity security_result.severity_details Valor copiado diretamente
authenticationType security_result.summary Valor copiado diretamente
targetEntity.primaryDisplayName, targetServiceIdentifier, eventType, targetEntity.type target.application Valor de targetEntity.primaryDisplayName se targetEntity.type == "CLOUD_SERVICE"; caso contrário, de targetServiceIdentifier se targetServiceIdentifier != "" e não definido anteriormente; caso contrário, "LDAP" se eventType == "LDAP_SEARCH" e não definido anteriormente
targetEntity.primaryDisplayName, targetEntity.type target.hostname Definido se targetEntity.type == "ENDPOINT"
targetServiceType target.resource.name Definido se targetServiceType != "" e != "UNKNOWN"
targetServiceType target.resource.type Definido como "Tipo de serviço" se targetServiceType != "" e != "UNKNOWN"
targetEntity.primaryDisplayName, targetEntity.type target.user.user_display_name Definido se targetEntity.type == "USER"
targetEntity.secondaryDisplayName, targetEntity.type target.user.userid Definido se targetEntity.type == "USER"
metadata.product_name Definido como "PREEMPT_AUTH"
metadata.vendor_name Definido como "Preempt"

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