Recolha registos de DHCP da Sophos

Compatível com:

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

  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 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

  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_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
    

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-collector
    
  • Para 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

  1. Inicie sessão na consola de administração Web da firewall da Sophos.
  2. Aceda a Configurar > Serviços do sistema > Definições de registo.
  3. Clique em Adicionar para configurar um servidor Syslog.
  4. 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.
  5. Clique em Guardar.
  6. Regresse à página Definições de registo e selecione os tipos de registos específicos a encaminhar para o servidor syslog.
  7. 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.
  8. Clique em Aplicar para guardar a configuração.

Opção 1: configure o encaminhamento do Syslog no Sophos UTM

  1. Inicie sessão na Sophos UTM Management Console.
  2. Aceda a Registo e relatórios > Definições de registo > Servidor Syslog remoto.
  3. 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.
  4. No campo Servidores Syslog, clique em + Adicionar servidor Syslog.
  5. 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.
  6. Clique em Guardar na caixa de diálogo Adicionar servidor Syslog.
  7. Clique em Aplicar na secção Definições de Syslog remoto.
  1. Opcional: ajuste a definição Buffer de Syslog remoto (o valor predefinido é 1000 linhas) e clique em Aplicar.
  2. Na secção Seleção de registos Syslog remotos, selecione Servidor DHCP e as categorias de registos necessárias.
  3. 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.