Coletar registros de acesso da Web do Symantec SiteMinder da Broadcom

Compatível com:

Este documento explica como coletar registros de acesso da Web do SiteMinder da Broadcom Symantec para as operações de segurança do Google usando um agente do Bindplane. O analisador transforma registros brutos formatados em JSON em um modelo de dados unificado (UDM) estruturado. Ele extrai campos das mensagens de registro bruto usando padrões grok, renomeia e os mapeia para o esquema do UDM, processa diferentes tipos de eventos e formatos de usuário e, por fim, enriquece os dados para análise de segurança.

Antes de começar

  • Verifique se você tem uma instância do Google SecOps.
  • Verifique se você está usando o Windows 2016 ou uma versão mais recente ou um host Linux com systemd.
  • Se estiver executando por trás de um proxy, verifique se as portas do firewall estão abertas.
  • Verifique se você tem acesso privilegiado ao Symantec SiteMinder.

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. Faça o download do arquivo de autenticação de transferência. 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

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
    

Instalação do Linux

  1. Abra um terminal com privilégios de raiz 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
    

Outros recursos de instalação

Configurar o agente do Bindplane para processar o Syslog e enviar ao Google SecOps

  1. Acesse o arquivo de configuração:

    1. Localize o arquivo config.yaml. Normalmente, ele está no diretório /etc/bindplane-agent/ no Linux ou no diretório de instalação no Windows.
    2. Abra o arquivo usando um editor de texto (por exemplo, nano, vi ou Notepad).
  2. Edite o arquivo 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: CA_SSO_WEB
                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 real do cliente.

  5. Atualize /path/to/ingestion-authentication-file.json para o caminho em que o arquivo de autenticação foi salvo na seção Receber o arquivo de autenticação de transferência do Google SecOps.

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 bindplane-agent
    
  • Para reiniciar o agente do Bindplane no Windows, use o console Services ou digite o seguinte comando:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Configurar o Syslog no Symantec SiteMinder: 12.8

  1. Verifique se um servidor X-windows está em execução no seu sistema.
  2. Abra uma janela de terminal.
  3. Defina a variável DISPLAY com o seguinte comando:

    export DISPLAY=<IP_ADDRESS>:0.0
    
    • Substitua <IP_ADDRESS> pelo endereço IP do sistema em que você está se conectando ao console. Por exemplo, 192.168.1.100.
  4. Faça login no sistema que hospeda o console.

  5. Acesse o diretório <installation_directory>/siteminder/bin.

    • Substitua <installation_directory> pelo local no sistema de arquivos em que o Policy Server está instalado. Por exemplo, /opt/CA/siteminder.
  6. Abra o console executando o seguinte comando:

    ./smconsole
    
  7. Clique na guia Dados.

  8. Clique na lista suspensa Banco de dados e selecione Registros de auditoria.

  9. Clique na lista suspensa Armazenamento e selecione Syslog.

  10. Selecione o valor LOG_INFO no campo Priority.

  11. Selecione o valor LOG_LOCAL0 no campo Facility.

  12. Clique em OK.

Reinicie o servidor de políticas do UNIX.

  1. Faça login no sistema que hospeda o servidor de políticas com a mesma conta de usuário que instalou o servidor de políticas originalmente.
  2. Abra o Console de Gerenciamento.
  3. Clique na guia Status e nos botões Parar.
  4. Aguarde a interrupção de todos os serviços.
  5. Na mesma guia Status, clique nos botões Start.

Tabela de mapeamento do UDM

Campo de registro Mapeamento do UDM Lógica
Ação event1.idm.read_only_udm.network.http.method Se o campo Action não estiver vazio, ele será associado a event1.idm.read_only_udm.network.http.method. Se o valor for Visit, ele será substituído por GET.
AgentName event1.idm.read_only_udm.target.hostname Mapeado diretamente do campo AgentName.
ClientIp event1.idm.read_only_udm.principal.ip Extraídos do campo ClientIp usando um padrão grok para extrair o endereço IP.
DomainName event1.idm.read_only_udm.target.administrative_domain Mapeado diretamente do campo DomainName.
Evento event1.idm.read_only_udm.metadata.product_event_type Mapeado diretamente do campo Event.
Recurso event1.idm.read_only_udm.target.url Mapeado diretamente do campo Resource.
SessionId event1.idm.read_only_udm.network.session_id Mapeado diretamente do campo SessionId.
Hora event1.idm.read_only_udm.metadata.event_timestamp Analisado do campo Time usando filtros de data para extrair o carimbo de data/hora.
Nome de usuário event1.idm.read_only_udm.target.user.userid A lógica lida com diferentes formatos do campo UserName e extrai o ID do usuário.
Nome de usuário event1.idm.read_only_udm.target.user.email_addresses A lógica lida com diferentes formatos do campo UserName e extrai o endereço de e-mail do usuário.
Nome de usuário event1.idm.read_only_udm.target.user.group_identifiers A lógica processa diferentes formatos do campo UserName e extrai os identificadores de grupo.
event1.idm.read_only_udm.extensions.auth.type Definido como SSO no código do analisador.
event1.idm.read_only_udm.intermediary.hostname Mapeado de logstash.process.host.
event1.idm.read_only_udm.metadata.description Definir como o valor do campo message em condições específicas relacionadas aos campos Event e AgentName.
event1.idm.read_only_udm.metadata.event_type Determinado com base no valor do campo Event. Valores possíveis: USER_LOGIN, USER_LOGOUT, USER_UNCATEGORIZED, GENERIC_EVENT
event1.idm.read_only_udm.metadata.log_type Definido como CA_SSO_WEB no código do analisador.
event1.idm.read_only_udm.metadata.product_name Definido como Web Access Management no código do analisador.
event1.idm.read_only_udm.metadata.vendor_name Definido como Siteminder no código do analisador.
event1.idm.read_only_udm.observer.hostname Defina como o valor de logstash.collect.host.
event1.idm.read_only_udm.security_result.action Determinado com base no valor do campo Event. Valores possíveis: PERMITIR, BLOQUEAR

Alterações

2024-06-25

Melhoria:

  • Foi adicionado um padrão Grok para analisar o formato de syslog recém-ingerido.

2022-08-08

Melhoria:

  • O cabeçalho foi adicionado.
  • Adição de verificação condicional e padrão de grok para o campo "ClientIp" mapeado para "principal.ip".
  • Foram adicionadas verificações condicionais para os campos :
  • "Ação" mapeada para "network.http.method".
  • "AgentName" mapeado para "target.hostname".
  • "sm_user" mapeado para "target.user.email_addresses"
  • "sm_group" mapeado para "target.user.group_identifiers".

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