Recolha registos de DDI do BlueCat
Este analisador processa mensagens syslog formatadas em LEEF e não LEEF do Bluecat DDI (DNS, DHCP, IPAM). Extrai campos de vários tipos de registos (por exemplo, named, dhcpd, audit e CRON) através de padrões grok e lógica condicional, mapeando-os para o UDM com base no tipo de registo e preenchendo os campos relacionados com DNS, DHCP ou utilizadores em conformidade.
Antes de começar
- Certifique-se de que tem uma instância do Google Security Operations.
- Certifique-se de que está a usar o Windows 2016 ou posterior, ou um anfitrião Linux com systemd.
- Se estiver a executar o serviço através de um proxy, certifique-se de que as portas da firewall estão abertas.
- Certifique-se de que tem acesso privilegiado ao Bluecat.
Obtenha o ficheiro de autenticação de carregamento do Google SecOps
- Inicie sessão na consola Google SecOps.
- Aceda a Definições do SIEM > Agentes de recolha.
- Transfira o ficheiro de autenticação de carregamento.
Obtenha o ID de cliente do Google SecOps
- Inicie sessão na consola Google SecOps.
- Aceda a Definições do SIEM > Perfil.
- Copie e guarde o ID do cliente da secção Detalhes da organização.
Instale o agente do Bindplane
- Para a instalação do Windows, execute o seguinte script:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
- Para a instalação do 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
- Pode encontrar opções de instalação adicionais neste guia de instalação.
Configure o agente Bindplane para carregar o Syslog e enviá-lo para o Google SecOps
- Aceda à máquina onde o Bindplane está instalado.
Edite o ficheiro
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: bluceat_ddi raw_log_field: body service: pipelines: logs/source0__chronicle_w_labels-0: receivers: - tcplog exporters: - chronicle/chronicle_w_labels
Reinicie o agente do Bindplane para aplicar as alterações:
sudo systemctl restart bindplane
Configure o Syslog no Bluecat DDI
- Inicie sessão no Bluecat Address Manager (BAM).
- No menu de configuração, selecione uma configuração.
- Selecione o separador Servidores.
- Em Servidores, clique no nome de um BDDS.
- O separador Detalhes do servidor deve ser aberto.
- Clique no menu Nome do servidor.
- Selecione Configuração do serviço.
- Clique em Tipo de serviço > Syslog (o Address Manager consulta o servidor e devolve os valores atuais).
- Em Geral, defina os seguintes valores:
- Servidor Syslog: o endereço IP do seu servidor Syslog (Bindplane).
- Porta Syslog: a porta do seu servidor Syslog (Bindplane).
- Transporte Syslog: selecione TCP ou UDP (consoante a configuração do Bindplane).
- Clique em Adicionar.
- O servidor Syslog recém-adicionado é apresentado na lista.
- Clique em Atualizar.
Configure as definições do Syslog no BlueCat DDI
- Inicie sessão no BlueCat Address Manager.
- Aceda a Configuração > Definições do sistema > Registo.
- Nas Definições de registo, localize a secção Servidores Syslog.
- Clique em Adicionar servidor Syslog.
- Indique os valores necessários:
- Nome do servidor: um nome exclusivo para o servidor syslog (por exemplo, BindplaneServer).
- Endereço IP: o endereço IP ou o nome de anfitrião do servidor syslog.
- Protocolo: selecione TCP, UDP (predefinição) ou TLS (com base na configuração do syslog).
- Porta: especifique a porta para a comunicação syslog (predefinição: 514 para UDP/TCP, 6514 para TLS).
- Configure o Nível de registo. Escolha o nível adequado com base nas suas necessidades. As opções incluem:
- Emergência: problemas críticos que requerem atenção imediata
- Alerta: alertas que requerem uma ação imediata
- Crítico: condições críticas
- Erro: eventos de erro
- Aviso: eventos de aviso
- Aviso: eventos normais, mas significativos
- Informações: mensagens informativas
- Depuração: informações de depuração detalhadas
- Opcional: adicione uma funcionalidade Syslog personalizada para categorizar registos (por exemplo, local0 ou local1).
- Guarde a configuração.
Aplique as definições do Syslog aos dispositivos DDI
- Navegue para Servidores > Gerir servidores.
- Selecione os servidores DNS/DHCP onde o syslog deve ser ativado.
- Clique em Editar servidor.
- Na secção Registo:
- Selecione o servidor Syslog que configurou anteriormente.
- Ativar o registo para serviços específicos (por exemplo, consultas DNS ou concessões DHCP).
- Guarde as alterações.
Tabela de mapeamento da UDM
Campo de registo | Mapeamento do UDM | Lógica |
---|---|---|
client_ip |
network.dhcp.ciaddr |
Extraído da mensagem DHCPREQUEST. Preenchido apenas para mensagens DHCPREQUEST. |
client_mac |
principal.mac |
Extraído de mensagens DHCP (DHCPDISCOVER, DHCPREQUEST, DHCPRELEASE). |
client_mac |
target.mac |
Extraído de mensagens DHCP (DHCPOFFER, DHCPNAK). |
client_mac |
network.dhcp.chaddr |
Extraído de mensagens DHCP (DHCPREQUEST, DHCPOFFER, DHCPACK, DHCPNAK e DHCPRELEASE). |
cmd |
target.process.command_line |
Extraído dos registos CRON. Os sinais & e os espaços são removidos. |
description |
metadata.description |
Extraídos de vários tipos de registos, fornecendo contexto adicional. |
description |
metadata.description |
Extraído dos registos do syslog-ng, o que fornece contexto adicional. |
file_path |
target.file.full_path |
Extraído de vários tipos de registos, representando o caminho completo para um ficheiro. |
file_path |
target.process.file.full_path |
Extraído dos registos agetty, que representa o caminho completo para um ficheiro relacionado com um processo. |
inner_message |
metadata.description |
Usado como a descrição para GENERIC_EVENTs quando o tipo de operação não está definido e para registos MEM-MON. |
metadata.event_type |
Determinado pelo analisador com base no tipo de registo e no conteúdo. Os valores possíveis incluem: NETWORK_DNS, NETWORK_DHCP, USER_LOGIN, USER_LOGOUT, USER_UNCATEGORIZED, GENERIC_EVENT, STATUS_UPDATE e NETWORK_CONNECTION. Sempre "BLUECAT_DDI". | |
metadata.vendor_name |
Sempre "Bluecat Networks". | |
metadata.product_name |
Sempre "Bluecat DDI". | |
metadata.event_timestamp |
Copiado da data/hora analisada da entrada do registo. | |
network.protocol |
Definido como "DNS" para registos de DNS e "DHCP" para registos de DHCP. | |
network.dns.answers |
Uma matriz que contém registos de respostas. O campo data em answers é preenchido com target_ip , se estiver presente. |
|
network.dns.questions |
Uma matriz que contém registos de perguntas. O campo name é preenchido com o campo target_host , o campo type é derivado dos campos query_type ou question_type , e o campo class é derivado do campo qclass . |
|
network.dns.recursive |
Definido como "true" se o rec_flag for "+". |
|
qclass |
network.dns.questions.class |
Extraído dos registos de consultas de DNS e mapeado para um valor inteiro através do ficheiro dns_query_class_mapping.include . |
query_type |
network.dns.questions.type |
Extraído dos registos de consultas de DNS e mapeado para um valor inteiro através do ficheiro dhcp_qtype_mapping.include . |
relay_ip |
intermediary.ip |
Extraído dos registos de DNS e DHCP, representando o endereço IP de um servidor de retransmissão ou intermediário. |
server_host |
target.hostname |
Extraído de vários tipos de registos, que representam o nome de anfitrião do servidor. |
server_host |
network.dhcp.sname |
Extraído dos registos DHCP, representando o nome do anfitrião do servidor. |
server_host |
principal.hostname |
Extraído do systemd, agetty e alguns registos de auditoria, que representam o nome do anfitrião do principal. |
server_ip |
target.ip |
Extraído de registos formatados LEEF, que representam o endereço IP do servidor. |
src_ip |
principal.ip |
Extraído de vários tipos de registos, representando o endereço IP de origem. |
src_ip |
network.dhcp.yiaddr |
Usado em mensagens DHCPINFORM para preencher o campo yiaddr. |
src_port |
principal.port |
Extraído de vários tipos de registos, representando a porta de origem. |
src_user |
principal.user.userid |
Extraído dos registos CRON e de auditoria, que representam o ID do utilizador. |
target_host |
target.hostname |
Extraído de vários tipos de registos, representando o nome do anfitrião de destino. |
target_host |
network.dns.questions.name |
Usado nos registos DNS para preencher o nome da pergunta. |
target_ip |
target.ip |
Extraído de vários tipos de registos, representando o endereço IP de destino. |
target_ip |
network.dhcp.ciaddr |
Usado em mensagens BOOTREQUEST para preencher o campo ciaddr. |
target_ip |
network.dns.answers.data |
Usado nos registos de DNS para preencher os dados de resposta. |
tgt_port |
target.port |
Extraído dos registos syslog-ng, que representam a porta de destino. |
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.