Coletar registros do Archer IRM

Compatível com:

Este documento explica como ingerir registros do Archer IRM (Integrated Risk Management) no Google Security Operations usando o Bindplane. Primeiro, o analisador tenta estruturar os dados do SYSLOG usando um padrão Grok específico. Se o padrão não corresponder, ele vai assumir um formato de chave-valor, extrair campos e mapeá-los para o Modelo Unificado de Dados (UDM, na sigla em inglês), processando diferentes tipos de eventos e informações de recursos de banco de dados ao longo do caminho.

Antes de começar

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

  • Instância do Google SecOps
  • Um host Windows 2016 ou mais recente ou Linux com systemd
  • Se estiver executando por trás de um proxy, as portas do firewall estarão abertas.
  • Instância local do Archer IRM 6.x com o recurso Geração de registros de auditoria licenciado
  • Acesso administrativo ao Painel de controle do Archer

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. Salve o arquivo de forma segura no sistema em que o Bindplane será instalado.

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

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
    

Outros recursos de instalação

Para mais opções de instalação, consulte o guia de instalação.

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

  1. Acesse o arquivo de configuração:
    • Localize o arquivo config.yaml. Normalmente, ele fica no diretório /etc/bindplane-agent/ no Linux ou no diretório de instalação no Windows.
    • Abra o arquivo usando um editor de texto (por exemplo, nano, vi ou Bloco de Notas).
  2. Edite o arquivo 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
            log_type: 'ARCHER_IRM'
            raw_log_field: body
            ingestion_labels:
    
    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 do cliente real.
    • Atualize /path/to/ingestion-authentication-file.json para o caminho em que o arquivo de autenticação foi salvo na seção Receber arquivo de autenticação de ingestão do Google SecOps.

Reinicie o agente do Bindplane para aplicar as mudanças

  • Para reiniciar o agente do Bindplane em Linux, execute o seguinte comando:

    sudo systemctl restart bindplane-agent
    
  • Para reiniciar o agente do Bindplane no Windows, use o console Serviços ou insira o seguinte comando:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Configurar o Syslog para o registro de auditoria do Archer IRM

  1. Abra o Painel de controle do Archer no servidor de aplicativos.
  2. Acesse Gerenciamento de instâncias > Todas as instâncias e clique duas vezes na instância de destino.
  3. Na guia Geral, encontre a seção Auditoria e marque a caixa de seleção Ativar o registro de auditoria para esta instância.
  4. Informe os seguintes detalhes de configuração:
    • Nome do host ou endereço IP: insira o endereço IP do agente do Bindplane.
    • Porta: insira o número da porta do agente do Bindplane, por exemplo, 6514.
    • Versão IP: selecione IPv4.
    • Método de tráfego IP: selecione TCP.
  5. Clique em Testar conexão (disponível apenas quando o TCP está selecionado) para verificar a conectividade.
  6. Clique em Salvar.

Tabela de mapeamento da UDM

Campo de registro Mapeamento do UDM Lógica
ArcherInstance additional.fields.ArcherInstance.string_value Extraído do campo ArcherInstance na mensagem de registro bruta.
ArcherLog Esse campo é analisado, e os dados dele são mapeados para outros campos da UDM.
ArcherVersion additional.fields.ArcherVersion.string_value Extraído do campo ArcherVersion na mensagem de registro bruta.
InputParameter additional.fields.InputParameter.string_value Extraído do campo InputParameter na mensagem de registro bruta.
LogSourceIdentifier Esse campo é analisado, e os dados dele são mapeados para outros campos da UDM.
MethodName additional.fields.MethodName.string_value Extraído do campo MethodName na mensagem de registro bruta.
OutputValues additional.fields.OutputValue.string_value Extraído do campo OutputValues na mensagem de registro bruta.
Sucesso security_result.summary O valor é definido como Success: concatenado com o valor do campo Success na mensagem de registro bruta.
UserId principal.user.userid Extraído do campo UserId na mensagem de registro bruta.
Nome de usuário principal.user.user_display_name Extraído do campo UserName na mensagem de registro bruta.
DB_DRIVER target.resource.attribute.labels.db_driver.value Extraído do campo DB_DRIVER na mensagem de registro bruta.
DB_HOST target.resource.attribute.labels.db_host.value Extraído do campo DB_HOST na mensagem de registro bruta.
DB_NAME target.resource.attribute.labels.db_name.value Extraído do campo DB_NAME na mensagem de registro bruta.
DB_PORT target.resource.attribute.labels.db_port.value Extraído do campo DB_PORT na mensagem de registro bruta.
DB_URL target.resource.attribute.labels.db_url.value Extraído do campo DB_URL na mensagem de registro bruta.
company_security_event_id metadata.product_log_id Extraído do campo company_security_event_id na mensagem de registro bruta.
create_date metadata.event_timestamp Convertido para carimbo de data/hora do formato UNIX_MS.
databasename target.resource.attribute.labels.db_name.value Extraído do campo databasename na mensagem de registro bruta se DB_NAME não estiver presente.
criptografar security_result.detection_fields.encrypt.value Extraído do campo encrypt na mensagem de registro bruta.
eventid metadata.product_event_type Extraído do campo eventid na mensagem de registro bruta.
eventtime metadata.event_timestamp Convertido para carimbo de data/hora de vários formatos.
integratedSecurity security_result.detection_fields.integratedSecurity.value Extraído do campo integratedSecurity na mensagem de registro bruta.
N/A extensions.auth.type Definido como AUTHTYPE_UNSPECIFIED para eventos USER_LOGIN e USER_LOGOUT.
N/A metadata.event_type Defina como USER_RESOURCE_ACCESS se o registro for analisado pelo padrão grok. Defina como USER_LOGIN se security_event_name for User Login. Defina como USER_LOGOUT se security_event_name for User Logout. Defina como USER_RESOURCE_ACCESS se security_event_name contiver Security Events. Caso contrário, defina como GENERIC_EVENT.
N/A metadata.log_type Defina como ARCHER_IRM.
N/A metadata.product_name Defina como Archer se o registro for analisado pelo padrão grok. Caso contrário, defina como RSA.
N/A metadata.vendor_name Defina como RSA se o registro for analisado pelo padrão grok. Caso contrário, defina como Archer.
N/A principal.ip Defina como 1.2.3.4 se o registro for analisado pelo padrão grok.
N/A principal.port Definido como o valor extraído de LogSourceIdentifier se o registro for analisado pelo padrão grok.
N/A security_result.action Defina como ALLOW se Success for True. Caso contrário, defina como BLOCK.
N/A target.resource.resource_type Defina como DATABASE se houver campos relacionados ao banco de dados.
source_user principal.user.userid Extraído do campo source_user na mensagem de registro bruta.
target_user target.user.userid Extraído do campo target_user na mensagem de registro bruta.
trustServerCertificate security_result.detection_fields.trustServerCertificate.value Extraído do campo trustServerCertificate na mensagem de registro bruta.
version metadata.product_version Extraído do campo version na mensagem de registro bruta.

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