Coletar registros do Varonis
Este documento explica como ingerir registros do Varonis no Google Security Operations usando o Bindplane. O analisador extrai campos dos registros (SYSLOG + KV (CEF), LEEF) usando padrões grok, processando especificamente CEF, LEEF e outros formatos específicos do Varonis. Em seguida, ele mapeia os campos extraídos para o modelo de dados unificado (UDM), processando vários formatos de dados e casos extremos para garantir uma representação consistente.
Antes de começar
Verifique se você atende os seguintes pré-requisitos:
- Instância do Google SecOps
- Host do Windows 2016 ou mais recente ou do Linux com systemd
- Se estiver em execução por trás de um proxy, as portas de firewall estarão abertas
- Acesso privilegiado ao Varonis
Receber o arquivo de autenticação de ingestão do Google SecOps
- Faça login no console do Google SecOps.
- Acesse Configurações do SIEM > Agentes de coleta.
- Baixe o arquivo de autenticação de ingestão. Salve o arquivo com segurança no sistema em que o Bindplane será instalado.
Receber o ID de cliente do Google SecOps
- Faça login no console do Google SecOps.
- Acesse Configurações do SIEM > Perfil.
- Copie e salve o ID de cliente na seção Detalhes da organização.
Instalar o agente do Bindplane
Instalação do Windows
- Abra o Prompt de comando ou o PowerShell como administrador.
Execute este comando:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
Instalação do Linux
- Abra um terminal com privilégios de raiz ou sudo.
Execute este 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 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
- Acesse o arquivo de configuração:
- 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. - Abra o arquivo usando um editor de texto (por exemplo, "nano", "vi" ou Bloco de Notas).
- Localize o arquivo
Edite o arquivo
config.yamlda 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: 'VARONIS' raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog exporters: - chronicle/chronicle_w_labelsSubstitua a porta e o endereço IP conforme necessário na sua infraestrutura.
Substitua
<customer_id>pelo ID de cliente real.Atualize
/path/to/ingestion-authentication-file.jsonpara o caminho em que o arquivo de autenticação foi salvo na seção Receber o arquivo de autenticação de ingestão do Google SecOps.
Reiniciar 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-agentPara reiniciar o agente do Bindplane no Windows, use o console Serviços ou insira o seguinte comando:
net stop BindPlaneAgent && net start BindPlaneAgent
Configurar a exportação do Syslog no Varonis
- Faça login na UI da Web do Varonis.
- Acesse Ferramentas > DatAlert > Selecionar DatAlert.
- Selecione Configuração.
- Informe os seguintes detalhes de configuração:
- Endereço IP da mensagem do Syslog: insira o endereço IP do agente do Bindplane.
- Porta: insira o número da porta do agente do Bindplane (por exemplo,
514para UDP). - Nome da instalação: selecione uma instalação.
- Clique em Aplicar.
Configurar o formato do Syslog no Varonis
- Acesse Ferramentas > DatAlert > Modelos de alerta.
- Clique em Editar modelo de alerta e selecione Modelo padrão do sistema externo.
- Em Aplicar a métodos de alerta, selecione Mensagem do Syslog na lista.
- Selecione Regras > Método de alerta no menu.
- Selecione Mensagem do Syslog.
- Clique em OK.
Tabela de mapeamento do UDM
| Campo de registro | Mapeamento do UDM | Lógica |
|---|---|---|
act |
security_result.summary |
Valor do campo act na mensagem CEF. |
cn1 |
security_result.rule_id |
Valor do campo cn1 na mensagem CEF. |
cs1 |
network.email.to |
Valor do campo cs1 na mensagem CEF, especificamente o destinatário do e-mail. |
cs2 |
security_result.rule_name |
Valor do campo cs2 na mensagem CEF. |
device_version |
metadata.product_version |
Valor do campo device_version na mensagem CEF. |
dhost |
principal.hostname |
Valor do campo dhost na mensagem CEF, representando o nome do host principal. Se file_server estiver presente e não for "DirectoryServices", ele vai substituir esse valor. |
duser |
target.user.userid |
Valor do campo duser na mensagem CEF. Passa por uma transformação gsub para remover barras invertidas e dividir em target.user.userid e target.administrative_domain. |
dvchost |
target.hostname |
Valor do campo dvchost na mensagem CEF. |
filePath |
target.file.full_path |
Valor do campo filePath na mensagem CEF. |
rt |
metadata.event_timestamp |
Valor do campo rt na mensagem CEF, analisado como um carimbo de data/hora. |
severity |
security_result.severity |
Valor do campo severity na mensagem CEF ou LEEF. Convertido para letras maiúsculas. Mapeado para valores de gravidade do UDM (BAIXA, INFORMATIVA, MÉDIA, ALTA, CRÍTICA) com base no valor numérico ou na palavra-chave. |
Acting Object |
target.user.user_display_name |
Valor do campo Acting Object nos dados de chave-valor. Dividido por "\" para extrair o nome de exibição. |
Acting Object SAM Account Name |
target.user.userid |
Valor do campo Acting Object SAM Account Name nos dados de chave-valor. |
Device hostname |
target.hostname |
Valor do campo Device hostname nos dados de chave-valor. |
Device IP address |
target.ip |
Valor do campo Device IP address nos dados de chave-valor. |
Event Time |
metadata.event_timestamp |
Valor do campo Event Time nos dados de chave-valor, analisado como um carimbo de data/hora. |
Event Type |
target.application, metadata.event_type |
Valor do campo Event Type nos dados de chave-valor. Usado para derivar metadata.event_type (FILE_OPEN, USER_CHANGE_PERMISSIONS, USER_CHANGE_PASSWORD, USER_UNCATEGORIZED). |
File Server/Domain |
principal.hostname |
Valor do campo File Server/Domain nos dados de chave-valor. Se não for "DirectoryServices", ele vai substituir o principal.hostname derivado de dhost. |
Path |
target.file.full_path |
Valor do campo Path nos dados de chave-valor. |
Rule Description |
metadata.description |
Valor do campo Rule Description nos dados de chave-valor. |
Rule ID |
security_result.rule_id |
Valor do campo Rule ID nos dados de chave-valor. |
Rule Name |
security_result.rule_name |
Valor do campo Rule Name nos dados de chave-valor. |
intermediary_host |
intermediary.hostname |
Valor extraído por grok, representando o nome do host intermediário. |
log_type |
metadata.log_type |
Fixado no código como VARONIS. |
metadata.event_type |
metadata.event_type |
Derivado com base nos valores de evt_typ, act e filepath. O padrão é STATUS_UPDATE se event_type for GENERIC_EVENT e principal_hostname estiver presente. |
metadata.product_name |
metadata.product_name |
Fixado no código como VARONIS, mas pode ser substituído pelo campo product_name da mensagem LEEF. |
metadata.vendor_name |
metadata.vendor_name |
Fixado no código como VARONIS, mas pode ser substituído pelo campo vendor da mensagem LEEF. |
prin_host |
principal.hostname |
Valor extraído por grok, representando o nome do host principal. |
product_name |
metadata.product_name |
Valor da mensagem LEEF. |
security_result.action |
security_result.action |
Derivado do campo result ou Event Status. Definido como "ALLOW" se o resultado for Success. Caso contrário, será definido como BLOCK. |
timestamp |
timestamp, metadata.event_timestamp |
O carimbo de data/hora do evento é derivado de vários campos (datetime1, event_time, start_datetime, datetime2) com base na disponibilidade. O create_time do registro bruto é usado como um substituto e mapeado para timestamp e metadata.event_timestamp se nenhum outro campo de carimbo de data/hora estiver disponível. |
vendor |
metadata.vendor_name |
Valor da mensagem LEEF. |
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.