Coletar registros do Acalvio
Este documento explica como ingerir registros do Acalvio no Google Security Operations usando o Bindplane. Primeiro, o analisador extrai campos de mensagens syslog brutas usando grok e correspondência de padrões de chave-valor. Depois, ele mapeia esses campos extraídos para o esquema do modelo de dados unificado (UDM) do Google SecOps, categoriza o evento com base em valores específicos e, por fim, enriquece os dados com informações relacionadas à segurança, como gravidade e categoria.
Antes de começar
Verifique se você tem os pré-requisitos a seguir:
- Instância do Google SecOps
- Windows 2016 ou mais recente ou um host Linux com
systemd
- Se estiver executando por trás de um proxy, as portas do firewall estarão abertas.
- Servidor de integração do Acalvio ShadowPlex instalado
- Acesso privilegiado ao serviço e à instância do Acalvio ShadowPlex.
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 de forma segura no sistema em que o Bindplane será instalado.
Receber o ID do cliente do Google SecOps
- Faça login no console do Google SecOps.
- Acesse Configurações do SIEM > Perfil.
- 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
- 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 root 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
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
- 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).
- Localize o arquivo
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_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: 'ACALVIO' raw_log_field: body ingestion_labels: service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - udplog 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 no Acalvio ShadowPlex
- Faça login na UI do servidor de integração do ShadowPlex.
- Acesse Configurações > SIEM.
- Informe os seguintes detalhes de configuração:
- Clique no botão para Ativar.
- Nome do host ou IP: insira o endereço IP do agente do Bindplane.
- Porta: digite o número da porta do agente do Bindplane.
- Protocolo: selecione UDP.
- Sensor: selecione o sensor de onde os dados são transmitidos.
- Clique em Testar e salvar.
Tabela de mapeamento da UDM
Campo de registro | Mapeamento da UDM | Lógica |
---|---|---|
adc_email | read_only_udm.target.user.email_addresses | Valor extraído do campo adc_email . |
app | read_only_udm.principal.application | Valor extraído do campo app . |
gato | read_only_udm.security_result.summary | Valor extraído do campo cat . Se cat for Vulnerability Exploited , o valor será substituído pelo valor do campo Intrusion_method_used . |
customer_id | read_only_udm.metadata.description | O valor é adicionado ao campo de descrição: CustomerId: %{customer_id}, JobId: %{job_id}, InvestigationId: %{investigation_id} |
deviceProduct | read_only_udm.metadata.product_name | Valor extraído do campo deviceProduct . |
deviceVendor | read_only_udm.metadata.vendor_name | Valor extraído do campo deviceVendor . |
deviceVersion | read_only_udm.metadata.product_version | Valor extraído do campo deviceVersion . |
dstHostName | read_only_udm.target.hostname | Valor extraído do campo dstHostName . |
dstIp | read_only_udm.target.ip | Valor extraído do campo dstIp . |
dstMAC | read_only_udm.target.mac | Valor extraído do campo dstMAC . |
dstPort | read_only_udm.target.port | Valor extraído do campo dstPort e convertido em número inteiro. |
incidentid | read_only_udm.metadata.product_log_id | Valor extraído do campo incidentid . |
incidentSubCategory | read_only_udm.metadata.product_event_type, read_only_udm.security_result.description | Valor extraído do campo incidentSubCategory . |
Intrusion_method_used | read_only_udm.security_result.summary | Valor extraído do campo Intrusion_method_used se cat for Vulnerability Exploited . |
investigation_id | read_only_udm.metadata.description | O valor é adicionado ao campo de descrição: CustomerId: %{customer_id}, JobId: %{job_id}, InvestigationId: %{investigation_id} |
job_id | read_only_udm.metadata.description | O valor é adicionado ao campo de descrição: CustomerId: %{customer_id}, JobId: %{job_id}, InvestigationId: %{investigation_id} |
read_only_udm.metadata.event_type | Defina como GENERIC_EVENT se srcIp for Unknown ou estiver vazio. Caso contrário, defina como STATUS_UPDATE . |
|
read_only_udm.principal.resource.type | Fixado no código como scan_type . |
|
read_only_udm.security_result.category | Determinado com base nos valores dos campos cat , incidentSubCategory e sr_category . |
|
read_only_udm.security_result.severity | Definido como HIGH se severity for maior que 7, MEDIUM se severity for maior que 3 e LOW caso contrário. |
|
srcIp | read_only_udm.principal.ip | Valor extraído do campo srcIp . |
startTime | read_only_udm.metadata.event_timestamp | Valor extraído do campo startTime e analisado como um carimbo de data/hora. Se startTime estiver vazio, o valor será definido como %{ts_month} %{ts_day} %{ts_time} . |
userIdsUsed | read_only_udm.principal.user.userid | Valor extraído do campo userIdsUsed . |
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais do Google SecOps.