Recolha registos de DHCP da Sophos
Este documento explica como carregar registos do Protocolo de Configuração Dinâmica de Anfitriões (DHCP) da Sophos para o Google Security Operations através do Bindplane. O analisador primeiro normaliza as mensagens syslog do DHCP da Sophos numa estrutura de chave-valor e, em seguida, mapeia os campos extraídos para o esquema do modelo de dados unificado (UDM). Processa diferentes tipos de mensagens DHCP (DHCPREQUEST, DHCPACK, DHCPOFFER, DHCPNAK) e extrai informações relevantes, como endereços IP, endereços MAC e opções DHCP.
Antes de começar
Certifique-se de que cumpre os seguintes pré-requisitos:
- Uma instância do Google SecOps.
- Um anfitrião Windows 2016 ou posterior, ou Linux com
systemd. - Se estiver a ser executado através de um proxy, certifique-se de que as portas da firewall estão abertas de acordo com os requisitos do agente do Bindplane.
- Acesso privilegiado à consola de gestão do Sophos UTM ou à consola de administração Web do Sophos Firewall (SFOS).
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.
- Guarde o ficheiro de forma segura no sistema onde o Bindplane vai ser instalado.
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 na secção Detalhes da organização.
Instale o agente do Bindplane
Instale o agente do Bindplane no seu sistema operativo Windows ou Linux de acordo com as seguintes instruções.
Instalação do Windows
- Abra a Linha de comandos ou o PowerShell como administrador.
Execute o seguinte 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 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
- 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,viou Bloco de notas).
- Localize o ficheiro
Edite o ficheiro
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_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: 'SOPHOS_DHCP' 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 de cliente real. - Atualize
/path/to/ingestion-authentication-file.jsonpara 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 BindPlane no Linux, execute o seguinte comando:
sudo systemctl restart observiq-otel-collectorPara reiniciar o agente BindPlane no Windows, pode usar a consola Serviços ou introduzir o seguinte comando:
sc stop observiq-otel-collector && sc start observiq-otel-collector
Opção 2: configure o encaminhamento do Syslog na firewall da Sophos
- Inicie sessão na consola de administração Web da firewall da Sophos.
- Aceda a Configurar > Serviços do sistema > Definições de registo.
- Clique em Adicionar para configurar um servidor Syslog.
- Indique os seguintes detalhes de configuração:
- Nome: introduza um nome exclusivo para o coletor do Google SecOps (por exemplo,
Google SecOps BindPlane DHCP). - Endereço IP/domínio: introduza o endereço IP do BindPlane.
- Porta: introduza o número da porta do BindPlane (por exemplo,
514). - Instalação: selecione DAEMON.
- Nível de gravidade: selecione Informações.
- Formatar: selecione Formato padrão do dispositivo.
- Nome: introduza um nome exclusivo para o coletor do Google SecOps (por exemplo,
- Clique em Guardar.
- Regresse à página Definições de registo e selecione os tipos de registos específicos a encaminhar para o servidor syslog.
- Selecione as categorias de registo adequadas que incluem eventos DHCP. Os registos DHCP são gerados pelo serviço dhcpd e fazem parte dos registos de rede ou do sistema que são encaminhados quando as categorias de registos correspondentes estão ativadas.
- Clique em Aplicar para guardar a configuração.
Opção 1: configure o encaminhamento do Syslog no Sophos UTM
- Inicie sessão na Sophos UTM Management Console.
- Aceda a Registo e relatórios > Definições de registo > Servidor Syslog remoto.
- Clique no botão de ativação/desativação para ativar o Syslog remoto. A área Definições de Syslog remoto torna-se editável.
- No campo Servidores Syslog, clique em + Adicionar servidor Syslog.
- Na caixa de diálogo Adicionar servidor Syslog, indique os seguintes detalhes de configuração:
- Nome: introduza um nome descritivo (por exemplo,
Google SecOps BindPlane DHCP). - Servidor: clique no ícone + (mais) junto ao campo Servidor. Crie ou selecione um Anfitrião nas Definições de rede com o endereço IP do agente BindPlane e clique em Guardar.
- Porta: clique no ícone + (mais) junto ao campo Porta. Crie ou selecione uma definição de serviço com o protocolo e a porta adequados (por exemplo, UDP/514) e clique em Guardar.
- Nome: introduza um nome descritivo (por exemplo,
- Clique em Guardar na caixa de diálogo Adicionar servidor Syslog.
- Clique em Aplicar na secção Definições de Syslog remoto.
- Opcional: ajuste a definição Buffer de Syslog remoto (o valor predefinido é 1000 linhas) e clique em Aplicar.
- Na secção Seleção de registos Syslog remotos, selecione Servidor DHCP e as categorias de registos necessárias.
- Clique em Aplicar para guardar as definições de seleção de registos.
Tabela de mapeamento do UDM
| Campo de registo | Mapeamento do UDM | Lógica |
|---|---|---|
| ação | event.idm.read_only_udm.security_result.action_details | |
| attr_address | event.idm.read_only_udm.target.ip | |
| attr_addresses | event.idm.read_only_udm.target.ip | |
| chamada | event.idm.read_only_udm.security_result.summary | |
| cliente | event.idm.read_only_udm.principal.hostname | |
| cliente | event1.idm.read_only_udm.principal.hostname | |
| dados | ||
| dstip | event.idm.read_only_udm.target.ip | |
| dstmac | event.idm.read_only_udm.target.mac | |
| dstport | event.idm.read_only_udm.target.port | |
| fwrule | event.idm.read_only_udm.security_result.rule_id | |
| id | event.idm.read_only_udm.metadata.product_event_type | Concatenado com ulogd - |
| id | event1.idm.read_only_udm.metadata.product_event_type | Concatenado com ID - |
| informação | event.idm.read_only_udm.security_result.description | |
| initf | event.idm.read_only_udm.security_result.about.labels.value | A chave está codificada como In Interface |
| msg | event.idm.read_only_udm.metadata.description | Quando process_type não é confd nem ulogd |
| nome | event.idm.read_only_udm.security_result.description | |
| objname | event.idm.read_only_udm.principal.resource.name | |
| oldattr_address | event.idm.read_only_udm.principal.ip | |
| oldattr_addresses | event.idm.read_only_udm.principal.ip | |
| outitf | event.idm.read_only_udm.security_result.about.labels.value | A chave está codificada como Out Interface |
| pid | event.idm.read_only_udm.principal.process.pid | |
| proto | event.idm.read_only_udm.network.ip_protocol | |
| gravidade | event.idm.read_only_udm.security_result.severity | Se a gravidade for info ou debug, security_result.severity é INFORMATIONAL. Se a gravidade for warn, então security_result.severity é MEDIUM |
| gravidade | event1.idm.read_only_udm.security_result.severity | Se a gravidade for info ou debug, security_result.severity é INFORMATIONAL. Se a gravidade for warn, então security_result.severity é MEDIUM |
| sid | event.idm.read_only_udm.security_result.about.labels.value | A chave está codificada como sid |
| src_host | event.idm.read_only_udm.principal.hostname | Quando process_type é dhcpd e dhcp_type é DHCPREQUEST, DHCPACK ou DHCPOFFER |
| src_host | event.idm.read_only_udm.observer.hostname | Quando process_type é dhcpd e dhcp_type é DHCPREQUEST |
| src_host | event.idm.read_only_udm.network.dhcp.client_hostname | Quando process_type é dhcpd e dhcp_type é DHCPACK ou DHCPOFFER |
| src_ip | event.idm.read_only_udm.network.dhcp.ciaddr | Quando process_type é dhcpd e dhcp_type é DHCPREQUEST |
| src_ip | event.idm.read_only_udm.network.dhcp.yiaddr | Quando process_type é dhcpd e dhcp_type é DHCPACK, DHCPOFFER ou DHCPNAK |
| src_ip | event.idm.read_only_udm.principal.ip | Quando process_type é dhcpd e dhcp_type é DHCPREQUEST, DHCPACK, DHCPOFFER ou DHCPNAK |
| src_ip | event.idm.read_only_udm.observer.ip | Quando process_type é dhcpd e dhcp_type é DHCPREQUEST, DHCPACK ou DHCPOFFER |
| src_mac | event.idm.read_only_udm.network.dhcp.chaddr | Quando process_type é dhcpd e dhcp_type é DHCPREQUEST, DHCPACK, DHCPOFFER ou DHCPNAK |
| src_mac | event.idm.read_only_udm.principal.mac | Quando process_type é dhcpd e dhcp_type é DHCPREQUEST, DHCPACK, DHCPOFFER ou DHCPNAK |
| srcip | event.idm.read_only_udm.principal.ip | |
| srcip | event1.idm.read_only_udm.principal.ip | |
| srcmac | event.idm.read_only_udm.principal.mac | |
| srcport | event.idm.read_only_udm.principal.port | |
| sub | event.idm.read_only_udm.metadata.description | |
| sub | event1.idm.read_only_udm.metadata.description | |
| tcpflags | event.idm.read_only_udm.security_result.about.labels.value | A chave está codificada como TCP Flags |
| utilizador | event.idm.read_only_udm.principal.user.userid | |
| utilizador | event1.idm.read_only_udm.principal.user.userid | |
| event.idm.read_only_udm.metadata.event_type | GENERIC_EVENT se não estiver definido nenhum outro event_type. NETWORK_CONNECTION se srcip e dstip não estiverem vazios. RESOURCE_WRITTEN se o nome for object changed. NETWORK_DHCP se process_type for dhcpd |
|
| event.idm.read_only_udm.metadata.log_type | Codificado nos SOPHOS_DHCP |
|
| event.idm.read_only_udm.metadata.product_name | Codificado nos SOPHOS_DHCP |
|
| event.idm.read_only_udm.metadata.vendor_name | Codificado nos SOPHOS |
|
| event.idm.read_only_udm.network.application_protocol | Codificado como DHCP quando process_type é dhcpd |
|
| event.idm.read_only_udm.network.dhcp.opcode | Codificado de forma rígida como BOOTREQUEST quando process_type é dhcpd e dhcp_type é DHCPREQUEST. Codificado de forma rígida para BOOTREPLY quando process_type é dhcpd e dhcp_type é DHCPACK, DHCPOFFER ou DHCPNAK |
|
| event.idm.read_only_udm.network.dhcp.type | REQUEST quando process_type é dhcpd e dhcp_type é DHCPREQUEST. ACK quando process_type é dhcpd e dhcp_type é DHCPACK. OFFER quando process_type é dhcpd e dhcp_type é DHCPOFFER. NAK quando process_type é dhcpd e dhcp_type é DHCPNAK |
|
| event1.idm.read_only_udm.metadata.event_type | Codificado nos GENERIC_EVENT |
|
| event1.idm.read_only_udm.metadata.log_type | Codificado nos SOPHOS_DHCP |
|
| event1.idm.read_only_udm.metadata.product_name | Codificado nos SOPHOS_DHCP |
|
| event1.idm.read_only_udm.metadata.vendor_name | Codificado nos SOPHOS |
Precisa de mais ajuda? Receba respostas de membros da comunidade e profissionais da Google SecOps.