Recolha registos do antivírus Kaspersky

Compatível com:

Este documento explica como carregar registos do Kaspersky Antivirus para o Google Security Operations através do Bindplane. O código do analisador tenta primeiro analisar a mensagem de registo não processada como JSON. Se falhar, usa expressões regulares (padrões grok) para extrair campos da mensagem com base em formatos de registo comuns do AV da Kaspersky.

Antes de começar

Certifique-se de que tem os seguintes pré-requisitos:

  • Instância do Google SecOps
  • Windows 2016 ou posterior, ou anfitrião Linux com systemd
  • Se estiver a ser executado através de um proxy, as portas da firewall estão abertas
  • Acesso privilegiado ao Kaspersky Antivirus

Obtenha o ficheiro de autenticação de carregamento do Google SecOps

  1. Inicie sessão na consola Google SecOps.
  2. Aceda a Definições do SIEM > Agentes de recolha.
  3. Transfira o ficheiro de autenticação de carregamento. Guarde o ficheiro de forma segura no sistema onde o Bindplane vai ser instalado.

Obtenha o ID de cliente do Google SecOps

  1. Inicie sessão na consola Google SecOps.
  2. Aceda a Definições do SIEM > Perfil.
  3. Copie e guarde o ID do cliente da secção Detalhes da organização.

Instale o agente do Bindplane

Instalação do Windows

  1. Abra a Linha de comandos ou o PowerShell como administrador.
  2. Execute o seguinte 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 o seguinte comando:

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

Recursos de instalação adicionais

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

Configure o agente Bindplane para carregar o Syslog e enviá-lo para o Google SecOps

  1. Aceda ao ficheiro de configuração:

    • Localize o ficheiro config.yaml. Normalmente, encontra-se no diretório /etc/bindplane-agent/ no Linux ou no diretório de instalação no Windows.
    • Abra o ficheiro com um editor de texto (por exemplo, nano, vi ou Bloco de notas).
  2. Edite o ficheiro 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: KASPERSKY_AV
                    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 de cliente real.

  5. Atualize /path/to/ingestion-authentication-file.json para o caminho onde o ficheiro de autenticação foi guardado na secção Obtenha o ficheiro de autenticação de carregamento do Google SecOps.

Reinicie o agente do Bindplane para aplicar as alterações

  • 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, pode usar a consola Services ou introduzir o seguinte comando:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Configure a exportação de eventos no Kaspersky AV

  1. Inicie sessão na consola do Kaspersky Security Center.
  2. Selecione o servidor de administração cujos eventos quer exportar.
  3. No espaço de trabalho Servidor de administração, clique no separador Eventos.
  4. Clique no link Configurar notificações e exportação de eventos.
  5. Selecione Configurar exportação para o sistema SIEM na lista.
  6. Indique os seguintes detalhes de configuração:
    • Sistema SIEM: selecione Arcsight (formato CEF).
    • Endereço do servidor do sistema SIEM: introduza o endereço IP do agente Bindplane.
    • Porta do servidor do sistema SIEM: introduza o número da porta do agente Bindplane (por exemplo, 514 para UDP).
    • Protocolo: selecione UDP.
  7. Clique em OK.

Tabela de mapeamento do UDM

Campo de registo Mapeamento do UDM Lógica
Aplicação network.http.user_agent Mapeado diretamente a partir do campo Application no registo não processado.
Caminho da aplicação target.process.file.full_path Usado com o campo Name para construir o caminho completo se Application path estiver presente no registo não processado.
Componente target.resource.name Mapeado diretamente a partir do campo Component no registo não processado.
Categoria de conteúdo security_result.category_details Adicionado ao campo security_result.category_details se Content category estiver presente no registo não processado.
Origem da categoria de conteúdo target.resource.type Se o valor contiver databases, o campo UDM é definido como DATABASE.
Erreur security_result.summary Mapeado diretamente a partir do campo Erreur no registo não processado se o campo summary estiver vazio.
et metadata.product_event_type Mapeado diretamente a partir do campo et no registo não processado se o campo product_event_type estiver vazio.
et security_result.category_details Adicionado ao campo security_result.category_details.
etdn extensions.vulns.vulnerabilities.description Mapeado diretamente a partir do campo etdn no registo não processado.
Hash SHA256 do ficheiro target.process.file.sha256 Mapeado diretamente a partir do campo File SHA256 hash no registo não processado.
gn security_result.about.labels O key está definido como GN e o value está definido como o valor do campo gn.
hdn principal.hostname Mapeado diretamente a partir do campo hdn no registo não processado.
anca principal.ip Mapeado diretamente a partir do campo hip no registo não processado.
host_name principal.hostname Mapeado diretamente a partir do campo host_name no registo não processado.
intermediary_host intermediary.hostname Mapeado diretamente a partir do campo intermediary_host no registo não processado.
intermediary_hostname intermediary.hostname Mapeado diretamente a partir do campo intermediary_hostname no registo não processado.
kv_data1 Este campo é analisado e os respetivos valores são mapeados para outros campos da UDM.
kv_data2 Este campo é analisado e os respetivos valores são mapeados para outros campos da UDM.
etiqueta network.http.user_agent Se o valor for User-Agent, o campo UDM é preenchido com o valor do campo description.
etiqueta principal.hostname Se o valor for Host, o campo UDM é preenchido com o nome do anfitrião extraído do campo description.
etiqueta security_result.description Para outros valores, o campo UDM é preenchido com uma string que contém os campos label e description.
MD5 target.process.file.md5 Mapeado diretamente a partir do campo MD5 no registo não processado após a conversão para letras minúsculas.
Hash MD5 do ficheiro target.process.file.md5 Mapeado diretamente a partir do campo MD5 file hash no registo não processado.
mensagem Este campo é analisado e os respetivos valores são mapeados para outros campos da UDM.
método network.http.method Mapeado diretamente a partir do campo method no registo não processado, se corresponder a uma lista de métodos HTTP.
nome target.file.full_path Mapeado diretamente a partir do campo name no registo não processado.
Nom target.process.file.full_path Usado com o campo application_path para criar o caminho completo.
p1 target.process.file.sha256 Mapeado diretamente a partir do campo p1 no registo não processado após a conversão para letras minúsculas, se o campo SHA256 estiver vazio e o valor for uma string hexadecimal.
p2 target.process.file.full_path Mapeado diretamente a partir do campo p2 no registo não processado.
p5 security_result.rule_name Mapeado diretamente a partir do campo p5 no registo não processado.
p7 principal.user.user_display_name Mapeado diretamente a partir do campo p7 no registo não processado se os campos User e user_name estiverem vazios.
ID do processo principal.process.pid Mapeado diretamente a partir do campo Process ID no registo não processado.
process_id target.process.pid Mapeado diretamente a partir do campo process_id no registo não processado.
protocolo network.application_protocol Se o valor contiver http (não é sensível a maiúsculas e minúsculas), o campo UDM é definido como HTTP.
Motivo security_result.summary Mapeado diretamente a partir do campo Reason no registo não processado.
Página Web pedida target.url Mapeado diretamente a partir do campo Requested web page no registo não processado.
Resultado Se o valor for Allowed, o campo sr_action é definido como ALLOW.
rtid security_result.about.labels O key está definido como rtid e o value está definido como o valor do campo rtid.
Regra security_result.description Mapeado diretamente a partir do campo Rule no registo não processado.
SHA256 target.process.file.sha256 Mapeado diretamente a partir do campo SHA256 no registo não processado após a conversão para letras minúsculas.
sr_action security_result.action Unido no campo security_result.action.
resumo security_result.summary Mapeado diretamente a partir do campo summary no registo não processado.
task_name security_result.about.labels O key está definido como TaskName e o value está definido como o valor do campo task_name.
threat_action_taken Se o valor for blocked, o campo security_action é definido como BLOCK. Se o valor for allowed, o campo security_action é definido como ALLOW.
timestamp metadata.event_timestamp Usado para preencher a data/hora do evento.
Tipo security_result.threat_name Mapeado diretamente a partir do campo Type no registo não processado.
URL network.http.referral_url Mapeado diretamente a partir do campo url no registo não processado.
Utilizador principal.user.user_display_name O nome de utilizador é extraído deste campo e mapeado para o campo UDM.
Utilizador principal.administrative_domain O domínio é extraído deste campo e mapeado para o campo UDM.
user_name principal.user.user_display_name Mapeado diretamente a partir do campo user_name no registo não processado se o campo User estiver vazio.
metadata.event_type Defina como SCAN_VULN_NETWORK se Application path e Name estiverem presentes, STATUS_UNCATEGORIZED se hdn ou host_name estiverem presentes ou GENERIC_EVENT caso contrário.
metadata.vendor_name Está sempre definido como KASPERSKY.
metadata.product_name Está sempre definido como KASPERSKY_AV.
metadata.log_type Está sempre definido como KASPERSKY_AV.

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