Coletar registros do Nutanix Prism

Compatível com:

Visão geral

Esse analisador processa registros do Nutanix Prism, lidando com formatos JSON e syslog. Ele extrai campos de várias estruturas de registros, normaliza-os no UDM e enriquece os dados com contexto adicional, como informações do usuário, detalhes da rede e gravidade da segurança. O analisador também realiza ações específicas com base no método HTTP e no nível de registro, categorizando eventos em tipos de eventos da UDM, como USER_LOGIN, STATUS_UPDATE e GENERIC_EVENT.

Antes de começar

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

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.

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

  1. Para instalação no Windows, execute o seguinte script: msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet.
  2. Para instalação no Linux, execute o seguinte script: sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh.
  3. Outras opções de instalação estão disponíveis neste guia de instalação.

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

  1. Acesse a máquina em que o agente do Bindplane está instalado.
  2. Edite o arquivo config.yaml da seguinte forma:

    receivers:
      tcplog:
        # Replace the below port <54525> and IP (0.0.0.0) with your specific values
        listen_address: "0.0.0.0:54525" 
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the creds location below according the placement of the credentials file you downloaded
            creds: '{ json file for creds }'
            # Replace <customer_id> below with your actual ID that you copied
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # You can apply ingestion labels below as preferred
            ingestion_labels:
            log_type: SYSLOG
            namespace: Namespace
            raw_log_field: body
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. Reinicie o agente do Bindplane para aplicar as mudanças usando o seguinte comando: sudo systemctl bindplane restart

Exportar Syslog do Nutanix Prism

  1. Faça login no Prism Central usando uma conta privilegiada.
  2. Selecione Configurações do Prism Central no menu.
  3. Acesse Servidor Syslog.
  4. Clique em + Configurar servidor Syslog.
  5. Especifique valores para os parâmetros de entrada na caixa de diálogo Servidores Syslog:
    • Nome do servidor: insira um nome para o servidor (por exemplo, Servidor do Bindplane SecOps do Google).
    • Endereço IP: insira o IP do seu agente do Bindplane.
    • Porta: insira a porta em que o Bindplane Agent está detectando.
    • Protocolo de transporte: selecione TCP.
    • Clique em Configurar.
  6. Clique em + Editar na opção Origens de dados.
  7. Especifique valores para os parâmetros de entrada na caixa de diálogo Fontes de dados e nível de gravidade respectivo:
    • Selecione Auditoria de API, Auditoria e Fluxo.
    • Defina o nível de gravidade de cada um como 6: informativo.
    • Clique em Salvar.

Tabela de mapeamento do UDM

Campo de registro Mapeamento do UDM Lógica
@timestamp metadata.event_timestamp O carimbo de data/hora do evento é analisado no campo @timestamp. Os formatos yyyy-MM-dd HH:mm:ss.SSS, yyyy-MM-ddTHH:mm:ssZ e ISO8601 são aceitos.
agent.id observer.asset_id Combinado com agent.type para formar o ID do recurso observador no formato "agent.type:agent.id".
agent.type observer.application O aplicativo usado para observação.
agent.version observer.platform_version A versão do aplicativo observador.
alertUid security_result.detection_fields.value O valor do UID do alerta é mapeado para o campo value em detection_fields. O key está definido como "Alert Uid".
api_version metadata.product_version A versão da API.
clientIp principal.ip, principal.asset.ip Endereço IP do cliente.
client_type principal.labels.value O valor do tipo de cliente. O key é definido como "client_type".
defaultMsg metadata.description A mensagem padrão.
entity_uuid metadata.product_log_id UUID da entidade.
http_method network.http.method O método HTTP. Convertido para maiúsculas.
host.architecture principal.asset.hardware.cpu_platform A arquitetura do host.
host.id principal.asset_id Com o prefixo "NUTANIX:" para criar o ID do recurso principal.
host.ip principal.ip, principal.asset.ip Endereço IP do host.
host.mac principal.mac Endereço MAC do host.
host.os.kernel principal.platform_patch_level A versão do kernel do sistema operacional do host.
host.os.platform principal.platform A plataforma do sistema operacional do host. Mapeado para LINUX, WINDOWS, MAC ou UNKNOWN_PLATFORM.
host.os.version principal.platform_version A versão do sistema operacional do host.
input.type network.ip_protocol O protocolo de rede. Mapeado para "UDP" ou "TCP".
log.source.address principal.ip, principal.asset.ip, principal.port Analisado para extrair o IP e a porta de origem.
logstash.collect.host observer.ip O endereço IP do coletor do Logstash.
logstash.collect.timestamp metadata.collected_timestamp O carimbo de data/hora em que o registro foi coletado.
logstash.ingest.host intermediary.hostname O nome do host do servidor de ingestão do Logstash.
logstash.ingest.timestamp metadata.ingested_timestamp O carimbo de data/hora em que o registro foi ingerido.
logstash.irm_environment principal.labels.value O valor do ambiente do IRM. O key está definido como "irm_environment".
logstash.irm_region principal.labels.value O valor da região do IRM. O key é definido como "irm_region".
logstash.irm_site principal.labels.value O valor do site do IRM. O key é definido como "irm_site".
logstash.process.host intermediary.hostname O nome do host do servidor de processamento do logstash.
operationType metadata.product_event_type O tipo de operação.
originatingClusterUuid additional.fields.value.string_value O UUID do cluster de origem. O key é definido como "Originating Cluster Uuid".
params.mac_address target.mac O endereço MAC dos parâmetros.
params.requested_ip_address target.ip, target.asset.ip O endereço IP solicitado dos parâmetros.
params.vm_name target.resource.name O nome da VM nos parâmetros.
program metadata.product_event_type O nome do programa.
rest_endpoint target.url O endpoint REST.
sessionId additional.fields.value.string_value O ID da sessão. O key está definido como "ID da sessão".
syslog_host principal.hostname, principal.asset.hostname Host do Syslog.
timestamp metadata.event_timestamp O carimbo de data/hora do evento.
username principal.user.user_display_name ou principal.user.userid Nome de usuário. Usado como ID do usuário se http_method for "POST".
uuid metadata.product_log_id UUID.
N/A metadata.vendor_name Codificado como "Nutanix_Prism".
N/A metadata.product_name Codificado como "Nutanix_Prism".
N/A metadata.event_type Determinado pela lógica do analisador com base nos valores de has_principal, has_target, audit_log, network_set e http_method. Pode ser GENERIC_EVENT, USER_LOGIN, STATUS_UPDATE, USER_RESOURCE_ACCESS, RESOURCE_CREATION, USER_RESOURCE_UPDATE_CONTENT ou USER_RESOURCE_DELETION.
N/A metadata.log_type Codificado como "NUTANIX_PRISM".
N/A extensions.auth.type Defina como "AUTHTYPE_UNSPECIFIED" se metadata.event_type for USER_LOGIN.
N/A security_result.severity Determinado pela lógica do analisador com base em log_level e syslog_pri. Pode ser CRITICAL, ERROR, HIGH, MEDIUM ou INFORMATIONAL.

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