Collecter les journaux DHCP Sophos

Compatible avec :

Ce document explique comment ingérer les journaux DHCP Sophos dans Google Security Operations à l'aide de BindPlane.

L'analyseur extrait les champs des journaux au format syslog DHCP Sophos à l'aide de grok et/ou kv. Il mappe ces valeurs au modèle de données unifié (UDM) et définit des valeurs de métadonnées par défaut pour la source et le type d'événement.

Avant de commencer

Assurez-vous de remplir les conditions suivantes :

  • Une instance Google SecOps.
  • Un hôte Windows 2016 ou version ultérieure, ou Linux avec systemd.
  • Connectivité réseau : si vous exécutez Bindplane derrière un proxy, assurez-vous que les ports de pare-feu sont ouverts conformément aux exigences de l'agent Bindplane.
  • Accès privilégié à l'interface utilisateur de l'administrateur Sophos Firewall/UTM.

Obtenir le fichier d'authentification d'ingestion Google SecOps

  1. Connectez-vous à la console Google SecOps.
  2. Accédez à Paramètres du SIEM > Agent de collecte.
  3. Téléchargez le fichier d'authentification d'ingestion.
    • Enregistrez le fichier de manière sécurisée sur le système sur lequel Bindplane sera installé.

Obtenir l'ID client Google SecOps

  1. Connectez-vous à la console Google SecOps.
  2. Accédez à Paramètres SIEM > Profil.
  3. Copiez et enregistrez le numéro client de la section Informations sur l'organisation.

Installer l'agent Bindplane

Installez l'agent Bindplane sur votre système d'exploitation Windows ou Linux en suivant les instructions ci-dessous.

Installation de fenêtres

  1. Ouvrez l'invite de commandes ou PowerShell en tant qu'administrateur.
  2. Exécutez la commande suivante :

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    

Installation de Linux

  1. Ouvrez un terminal avec les droits root ou sudo.
  2. Exécutez la commande suivante :

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    

Ressources d'installation supplémentaires

Pour plus d'options d'installation, consultez ce guide d'installation.

Configurer l'agent Bindplane pour ingérer Syslog et l'envoyer à Google SecOps

  1. Accédez au fichier de configuration :

    • Trouvez le fichier config.yaml. Il se trouve généralement dans le répertoire /opt/observiq-otel-collector sous Linux ou dans le répertoire d'installation sous Windows.
    • Ouvrez le fichier à l'aide d'un éditeur de texte (par exemple, nano, vi ou le Bloc-notes).
  2. Modifiez le fichier config.yaml comme suit :

    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
    
  • Remplacez le port et l'adresse IP selon les besoins de votre infrastructure.
  • Remplacez <customer_id> par votre numéro client.
  • Remplacez /path/to/ingestion-authentication-file.json par le chemin d'accès au fichier d'authentification que vous avez enregistré à l'étape 1.

Redémarrez l'agent Bindplane pour appliquer les modifications.

  1. Pour redémarrer l'agent Bindplane sous Linux, exécutez la commande suivante :

    /opt/observiq-otel-collector/config.yaml
    
  2. Pour redémarrer l'agent Bindplane sous Windows, vous pouvez utiliser la console Services ou saisir la commande suivante :

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Configurer le transfert Syslog sur Sophos DHCP

  1. Connectez-vous à l'interface utilisateur d'administration Sophos Firewall/UTM avec des droits d'administrateur.
  2. Accédez aux paramètres syslog :
    • Sophos Firewall : Services système > Paramètres de journalisation.
    • Sophos UTM : Journalisation et rapports > Paramètres de journalisation > Serveur Syslog distant.
  3. Cliquez sur Ajouter sous Serveurs Syslog et fournissez les informations suivantes :
    • Nom : nom descriptif (par exemple, GoogleSecOps-BindPlane).
    • Adresse IP/Domaine : adresse IP de l'hôte de l'agent BindPlane.
    • Port : port de l'agent Bindplane (par exemple, 514).
    • Installation : DAEMON.
    • Niveau de gravité : Information (à ajuster en fonction de votre règlement interne).
    • Format : format standard de l'appareil (clé=valeur) pour s'aligner sur SYSLOG + KV.
  4. Cliquez sur Save/Apply (Enregistrer/Appliquer) pour commencer à transférer les journaux liés au protocole DHCP.

Table de mappage UDM

Champ de journal Mappage UDM Logique
msg metadata.description Mappé directement
sub metadata.description Mappé directement
log_date metadata.event_timestamp Analysé en tant que yyyy:MM:dd-HH:mm:ss
log_date_inner metadata.event_timestamp Analysé en tant que MMM dd HH:mm:ss
event_type metadata.event_type Mappé directement
msg metadata.event_type Mappé : call=newGENERIC_EVENT
process_type metadata.event_type Mappé : "confd","ulogd" → GENERIC_EVENT, dhcpd → GENERIC_EVENT, dhcpd → `NETWORK_D...
id metadata.product_event_type Mappé directement
process_type metadata.product_event_type Mappé directement
msg metadata.product_name Mappé : call=newSOPHOS_DHCP
process_type metadata.product_name Mappé : "confd","ulogd"SOPHOS_DHCP
msg metadata.vendor_name Mappé : call=newSOPHOS
process_type metadata.vendor_name Mappé : "confd","ulogd"SOPHOS
process_type network.application_protocol Mappé : dhcpdDHCP
src_mac network.dhcp.chaddr Mappé directement
src_ip network.dhcp.ciaddr Mappé directement
src_host network.dhcp.client_hostname Mappé directement
dhcp_type network.dhcp.opcode Mappé : DHCPREQUEST → BOOTREQUEST, DHCPACK → BOOTREPLY, DHCPOFFER → BOOTREPLY, `...
process_type network.dhcp.opcode Mappé : dhcpd → BOOTREQUEST, dhcpd → BOOTREPLY
dhcp_type network.dhcp.type Mappé : DHCPREQUEST → REQUEST, DHCPACK → ACK, DHCPOFFER → OFFER, DHCPNAK → NAK
process_type network.dhcp.type Mappé : dhcpd → REQUEST, dhcpd → ACK, dhcpd → OFFER, dhcpd → NAK
src_ip network.dhcp.yiaddr Mappé directement
ip_protocol_out network.ip_protocol Mappé directement
src_host observer.hostname Mappé directement
dhcp_type observer.ip Mappé : DHCPREQUESTsrc_ip
process_type observer.ip Mappé : dhcpdsrc_ip
src_ip observer.ip Fusionné
client principal.hostname Mappé directement
src_host principal.hostname Mappé directement
dhcp_type principal.ip Mappé : DHCPREQUEST → src_ip, DHCPNAK → src_ip
ip principal.ip Fusionné
msg principal.ip Mappé : call=newsrcip
oldattr_address principal.ip Fusionné
process_type principal.ip Mappé : "confd","ulogd"srcip, "confd","ulogd"oldattr_address, "confd","ulogd"...
src_ip principal.ip Fusionné
srcip principal.ip Fusionné
dhcp_type principal.mac Mappé : DHCPREQUEST → src_mac, DHCPNAK → src_mac
process_type principal.mac Mappé : "confd","ulogd" → srcmac, dhcpd → src_mac
src_mac principal.mac Fusionné
srcmac principal.mac Fusionné
srcport principal.port Mappé directement
pid principal.process.pid Mappé directement
objname principal.resource.name Mappé directement
user principal.user.userid Mappé directement
msg security_result Mappé : call=newsec_result
process_type security_result Mappé : "confd","ulogd" → sec_result, "confd","ulogd" → security_result
sec_result security_result Fusionné
initf_label security_result.about.labels Fusionné
outitf_label security_result.about.labels Fusionné
process_type security_result.about.labels Mappé : "confd","ulogd"initf_label, "confd","ulogd"outitf_label, "confd","ulo...
sid_label security_result.about.labels Fusionné
tcpflags_label security_result.about.labels Fusionné
action security_result.action_details Mappé directement
action security_result.category Mappé : portscancategory
category security_result.category Fusionné
process_type security_result.category Mappé : "confd","ulogd"category
info security_result.description Mappé directement
name security_result.description Mappé directement
fwrule security_result.rule_id Mappé directement
process_type security_result.severity Mappé : "confd","ulogd" → INFORMATIONAL, "confd","ulogd" → MEDIUM
severity security_result.severity Mappé : "info","debug" → INFORMATIONAL, warn → MEDIUM
call security_result.summary Mappé directement
attr_address target.ip Fusionné
dstip target.ip Fusionné
ip target.ip Fusionné
process_type target.ip Mappé : "confd","ulogd" → dstip, "confd","ulogd" → attr_address, "confd","ulogd" →…
dstmac target.mac Fusionné
process_type target.mac Mappé : "confd","ulogd"dstmac
dstport target.port Mappé directement
N/A metadata.event_type Constante : GENERIC_EVENT
N/A metadata.product_name Constante : SOPHOS_DHCP
N/A metadata.vendor_name Constante : SOPHOS
N/A network.application_protocol Constante : DHCP
N/A network.dhcp.opcode Constante : BOOTREQUEST
N/A network.dhcp.type Constante : REQUEST
N/A security_result.severity Constante : INFORMATIONAL

Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.