Coletar registros do SecureAuth Identity Platform

Compatível com:

Este documento explica como ingerir os registros do SecureAuth Identity Platform para as operações de segurança do Google usando o Bindplane. O analisador extrai campos de vários formatos de registro (SYSLOG, XML, pares de chave-valor) usando filtros grok e xml. Em seguida, ele mapeia os campos extraídos para os atributos correspondentes do modelo de dados unificado (UDM, na sigla em inglês), enriquecendo os dados com o contexto do evento de segurança e padronizando a saída para análise posterior.

Antes de começar

  • Verifique se você tem uma instância do Google Security Operations.
  • 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 SecureAuth.

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: SECUREAUTH_SSO
                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 SecureAuth Identity Platform

  1. Faça login no console da SecureAuth Identity.
  2. Selecione Registros.
  3. Informe os seguintes detalhes de configuração na seção Opções de registro:
    • ID da instância de registro: insira o ID da instância de registro, o nome do aplicativo ou do domínio, por exemplo, SecureAuth1.
    • Registros de auditoria: marque a caixa de seleção Syslog.
    • Registros de erros: marque a caixa de seleção Syslog.
    • Servidor Syslog: insira o endereço IP do seu agente do Bindplane.
    • Porta Syslog: insira o número da porta do agente do Bindplane. Por exemplo, 514.
    • Especificação do RFC do Syslog: selecione RFC 5424.
  4. Clique em Salvar.

Tabela de mapeamento do UDM

Campo de registro Mapeamento de UDM Lógica
action_msg read_only_udm.target.process.command_line Valor do campo action_msg
Dispositivo read_only_udm.principal.domain.name Valor do campo Appliance
Dispositivo read_only_udm.target.administrative_domain Valor do campo Appliance
BrowserSession read_only_udm.network.session_id Valor do campo BrowserSession
gato read_only_udm.metadata.product_event_type Valor do campo cat
Categoria read_only_udm.metadata.product_event_type Valor do campo Category
cn1 security_result.severity Mapeado com base no valor de cn1 quando cn1Label é "Prioridade": 1 - ALTO, 2 - MÉDIO, 3 ou 4 - BAIXO
Empresa read_only_udm.additional.fields.value.string_value Valor do campo Company
cs1 read_only_udm.network.session_id Valor do campo cs1 quando cs1Label é "BrowserSession"
cs3 read_only_udm.additional.fields.value.string_value Valor do campo cs3 quando cs3Label é 'CompanyName'
dst read_only_udm.target.ip Valor do campo dst
domínio read_only_udm.principal.domain.name Valor do campo domain
dvc read_only_udm.intermediary.ip Valor do campo dvc
EventID read_only_udm.metadata.product_log_id Valor do campo EventID
HostName read_only_udm.principal.hostname Valor do campo HostName quando o grok não corresponde ao endereço IP
HostName read_only_udm.principal.ip Valor do campo HostName quando o grok corresponde ao endereço IP
ip read_only_udm.principal.ip Valor do campo ip
Mensagem read_only_udm.metadata.description Valor do campo Message
Mensagem security_result.description Valor do campo Message
nat_ip read_only_udm.principal.nat_ip Valor do campo nat_ip
Prioridade security_result.severity Mapeado com base no valor de Priority: 1 - ALTO, 2 - MÉDIO, 3 ou 4 - BAIXO
SAMLConsumerURL read_only_udm.target.url Valor do campo SAMLConsumerURL
sec_msg security_result.description Valor do campo sec_msg
SecureAuthIdPAppliance read_only_udm.target.administrative_domain Valor do campo SecureAuthIdPAppliance
SecureAuthIdPApplianceMachineName read_only_udm.target.hostname Valor do campo SecureAuthIdPApplianceMachineName
SecureAuthIdPDestinationSiteUrl read_only_udm.target.url Valor do campo SecureAuthIdPDestinationSiteUrl
SecureAuthIdPProductType read_only_udm.additional.fields.value.string_value Valor do campo SecureAuthIdPProductType
sessão read_only_udm.network.session_id Valor do campo session
spid read_only_udm.target.process.pid Valor do campo spid
src read_only_udm.principal.ip Valor do campo src
suser read_only_udm.target.user.userid Valor do campo suser
UserAgent read_only_udm.network.http.user_agent Valor do campo UserAgent
UserHostAddress read_only_udm.principal.nat_ip Valor do campo UserHostAddress
UserHostAddress read_only_udm.target.ip Valor do campo UserHostAddress
UserID read_only_udm.principal.user.userid Valor do campo UserID
Versão read_only_udm.metadata.product_version Valor do campo Version
read_only_udm.additional.fields.key Valor fixado: "CompanyName"
read_only_udm.additional.fields.key Valor fixado: "Company"
read_only_udm.additional.fields.key Valor fixado no código: "SecureAuthIdPProductType"
read_only_udm.extensions.auth.type Valor fixado: "SSO"
read_only_udm.metadata.event_type 'USER_LOGIN' se SecureAuthIdPAuthGuiMode == 0 e auth_result == Success, 'USER_CHANGE_PERMISSIONS' se SecureAuthIdPAuthGuiMode == 0 e auth_result ==WS-Trust success., 'USER_LOGOUT' se SecureAuthIdPAuthGuiMode == 0 e auth_result == Session Aborted, 'NETWORK_CONNECTION' se UserHostAddress != and `HostName` !=, 'STATUS_UPDATE' se ip != or `HostName` !=, 'USER_UNCATEGORIZED' se UserHostAddress != and `HostName` == e UserID != ``, caso contrário, 'GENERIC_EVENT'
read_only_udm.metadata.log_type Valor fixado: 'SECUREAUTH_SSO'
read_only_udm.metadata.product_name Valor fixado: 'SECUREAUTH_SSO'
read_only_udm.metadata.vendor_name Valor fixado: 'SECUREAUTH_SSO'
read_only_udm.target.user.email_addresses Valor do campo user_email quando not_email é falso
security_result.severity "HIGH" se cn1Label == Priority e cn1 == 1, "MEDIUM" se cn1Label == Priority e cn1 == 2, "LOW" se cn1Label == Priority e cn1 em [3, 4], "HIGH" se Priority == 1, "MEDIUM" se Priority == 2, "LOW" se Priority em [3, 4]

Alterações

2023-07-09

  • Inclusão de suporte a um novo formato de registro: SYSLOG + KV.
  • Foi adicionado um padrão Grok para analisar os novos registros.

2022-04-25

  • Parser recém-criado: a versão específica do cliente foi atualizada e convertida para o padrão.

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