BlueCat-DDI-Protokolle erfassen

Unterstützt in:

Dieser Parser verarbeitet sowohl LEEF- als auch nicht LEEF-formatierte Syslog-Nachrichten von Bluecat DDI (DNS, DHCP, IPAM). Es werden Felder aus verschiedenen Protokolltypen (z. B. named, dhcpd, audit und CRON) mithilfe von Grok-Mustern und bedingter Logik extrahiert, basierend auf dem Protokolltyp dem UDM zugeordnet und DNS-, DHCP- oder nutzerbezogene Felder entsprechend ausgefüllt.

Hinweis

  • Sie benötigen eine Google Security Operations-Instanz.
  • Sie müssen Windows 2016 oder höher oder einen Linux-Host mit systemd verwenden.
  • Wenn die Ausführung hinter einem Proxy erfolgt, müssen die Firewallports geöffnet sein.
  • Sie benötigen Lese- und Schreibzugriff auf Bluecat.

Authentifizierungsdatei für die Aufnahme in Google SecOps abrufen

  1. Melden Sie sich in der Google SecOps Console an.
  2. Gehen Sie zu SIEM-Einstellungen > Erfassungsagenten.
  3. Lade die Datei zur Authentifizierung der Datenaufnahme herunter.

Google SecOps-Kundennummer abrufen

  1. Melden Sie sich in der Google SecOps Console an.
  2. Gehen Sie zu SIEM-Einstellungen > Profil.
  3. Kopieren und speichern Sie die Kundennummer aus dem Bereich Organisationsdetails.

BindPlane-Agent installieren

  1. Führen Sie für die Windows-Installation das folgende Script aus:
    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
  2. Führen Sie für die Linux-Installation das folgende Script aus:
    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
  3. Weitere Installationsoptionen finden Sie in diesem Installationsleitfaden.

BindPlane-Agent so konfigurieren, dass er Syslog-Protokolle aufnimmt und an Google SecOps sendet

  1. Rufen Sie den Computer auf, auf dem BindPlane installiert ist.
  2. Bearbeiten Sie die Datei config.yamlso:

    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
    
  3. Starten Sie den BindPlane-Agent neu, um die Änderungen anzuwenden:

    sudo systemctl restart bindplane
    

Syslog in Bluecat DDI konfigurieren

  1. Melden Sie sich im Bluecat Address Manager (BAM) an.
  2. Wählen Sie im Menü Konfiguration eine Konfiguration aus.
  3. Wählen Sie den Tab Server aus.
  4. Klicken Sie unter Server auf den Namen eines BDDS.
  5. Der Tab Details für den Server sollte geöffnet werden.
  6. Klicken Sie auf das Menü Servername.
  7. Wählen Sie Dienstkonfiguration aus.
  8. Klicken Sie auf Diensttyp > Syslog. Der Adressmanager fragt den Server ab und gibt die aktuellen Werte zurück.
  9. Legen Sie unter Allgemein die folgenden Werte fest:
    • Syslog-Server: Die IP-Adresse Ihres Syslog-Servers (Bindebene).
    • Syslog-Port: Der Port Ihres Syslog-Servers (BindPlane).
    • Syslog-Transport: Wählen Sie je nach Bindplane-Konfiguration entweder TCP oder UDP aus.
  10. Klicken Sie auf Hinzufügen.
    • Der neu hinzugefügte syslog-Server wird in der Liste angezeigt.
  11. Klicken Sie auf Aktualisieren.

Syslog-Einstellungen in BlueCat DDI konfigurieren

  1. Melden Sie sich im BlueCat Address Manager an.
  2. Gehen Sie zu Konfiguration > Systemeinstellungen > Protokollierung.
  3. Suchen Sie in den Einstellungen für die Protokollierung den Abschnitt Syslog-Server.
  4. Klicken Sie auf Syslog-Server hinzufügen.
  5. Geben Sie die erforderlichen Werte an:
    • Servername: Ein eindeutiger Name für den syslog-Server (z. B. BindplaneServer).
    • IP-Adresse: Die IP-Adresse oder der Hostname des syslog-Servers.
    • Protokoll: Wählen Sie TCP, UDP (Standard) oder TLS (je nach syslog-Konfiguration) aus.
    • Port: Geben Sie den Port für die syslog-Kommunikation an (Standard: 514 für UDP/TCP, 6514 für TLS).
  6. Konfigurieren Sie die Protokollierungsebene. Wählen Sie je nach Bedarf die passende Stufe aus. Folgende Optionen sind verfügbar:
    • Notfall: Kritische Probleme, die sofort behoben werden müssen
    • Warnung: Warnungen, die sofortige Maßnahmen erfordern
    • Kritisch: kritische Bedingungen
    • Fehler: Fehlerereignisse
    • Warnung: Ereignisse vom Typ „Warnung“
    • Hinweis: Normale, aber signifikante Ereignisse
    • Info: Mitteilungen
    • Debug: Detaillierte Informationen zur Fehlerbehebung
  7. Optional: Fügen Sie eine benutzerdefinierte Syslog-Einrichtung hinzu, um Protokolle zu kategorisieren (z. B. local0 oder local1).
  8. Speichern Sie die Konfiguration.

Syslog-Einstellungen auf DDI-Appliances anwenden

  1. Klicken Sie auf Server > Server verwalten.
  2. Wählen Sie die DNS-/DHCP-Server aus, auf denen das syslog aktiviert werden soll.
  3. Klicken Sie auf Server bearbeiten.
  4. Im Bereich Logging:
    • Wählen Sie den zuvor konfigurierten syslog-Server aus.
    • Aktivieren Sie das Logging für bestimmte Dienste, z. B. DNS-Abfragen oder DHCP-Leases.
    • Speichern Sie die Änderungen.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
client_ip network.dhcp.ciaddr Wird aus der DHCPREQUEST-Nachricht extrahiert. Wird nur für DHCPREQUEST-Nachrichten ausgefüllt.
client_mac principal.mac Aus DHCP-Nachrichten (DHCPDISCOVER, DHCPREQUEST, DHCPRELEASE) extrahiert.
client_mac target.mac Aus DHCP-Nachrichten (DHCPOFFER, DHCPNAK) extrahiert.
client_mac network.dhcp.chaddr Aus DHCP-Nachrichten extrahiert (DHCPREQUEST, DHCPOFFER, DHCPACK, DHCPNAK, DHCPRELEASE).
cmd target.process.command_line Aus CRON-Protokollen extrahiert. Und-Zeichen und Leerzeichen werden entfernt.
description metadata.description Aus verschiedenen Protokolltypen extrahiert, um zusätzlichen Kontext zu bieten.
description metadata.description Aus syslog-ng-Protokollen extrahiert, um zusätzlichen Kontext bereitzustellen.
file_path target.file.full_path Aus verschiedenen Protokolltypen extrahiert, stellt den vollständigen Pfad zu einer Datei dar.
file_path target.process.file.full_path Aus agetty-Protokollen extrahiert, der vollständige Pfad zu einer Datei, die sich auf einen Prozess bezieht.
inner_message metadata.description Wird als Beschreibung für GENERIC_EVENTs verwendet, wenn der Vorgangstyp nicht definiert ist, und für MEM-MON-Protokolle.
metadata.event_type Wird vom Parser basierend auf dem Protokolltyp und dem Inhalt bestimmt. Mögliche Werte: NETWORK_DNS, NETWORK_DHCP, USER_LOGIN, USER_LOGOUT, USER_UNCATEGORIZED, GENERIC_EVENT, STATUS_UPDATE, NETWORK_CONNECTION. Immer „BLUECAT_DDI“.
metadata.vendor_name Immer „Bluecat Networks“.
metadata.product_name Immer „Bluecat DDI“.
metadata.event_timestamp Kopiert aus dem geparsten Zeitstempel des Logeintrags.
network.protocol Legen Sie „DNS“ für DNS-Protokolle und „DHCP“ für DHCP-Protokolle fest.
network.dns.answers Ein Array mit Antworteinträgen. Das Feld data in answers wird mit target_ip ausgefüllt, sofern vorhanden.
network.dns.questions Ein Array mit Frageneinträgen. Das Feld name wird mit dem target_host ausgefüllt, das Feld type wird aus den Feldern query_type oder question_type abgeleitet und das Feld class wird aus dem Feld qclass abgeleitet.
network.dns.recursive Wird auf „true“ gesetzt, wenn rec_flag „+“ ist.
qclass network.dns.questions.class Aus DNS-Abfrageprotokollen extrahiert und mithilfe der Datei dns_query_class_mapping.include einem Ganzzahlwert zugeordnet.
query_type network.dns.questions.type Aus DNS-Abfrageprotokollen extrahiert und mithilfe der Datei dhcp_qtype_mapping.include einem Ganzzahlwert zugeordnet.
relay_ip intermediary.ip Aus DNS- und DHCP-Protokollen extrahiert, entspricht der IP-Adresse eines Relay- oder Zwischenservers.
server_host target.hostname Aus verschiedenen Protokolltypen extrahiert, entspricht dem Hostnamen des Servers.
server_host network.dhcp.sname Aus DHCP-Protokollen extrahiert, entspricht dem Server-Hostnamen.
server_host principal.hostname Aus systemd, agetty und einigen Audit-Logs extrahiert, entspricht dem Hostnamen des Hauptkontos.
server_ip target.ip Aus LEEF-formatierten Protokollen extrahiert, entspricht der IP-Adresse des Servers.
src_ip principal.ip Aus verschiedenen Protokolltypen extrahiert, entspricht der Quell-IP-Adresse.
src_ip network.dhcp.yiaddr Wird in DHCPINFORM-Nachrichten verwendet, um das yiaddr-Feld auszufüllen.
src_port principal.port Aus verschiedenen Protokolltypen extrahiert, die den Quellport darstellen.
src_user principal.user.userid Aus CRON- und Audit-Logs extrahiert, entspricht der Nutzer-ID.
target_host target.hostname Aus verschiedenen Protokolltypen extrahiert, die den Ziel-Hostnamen darstellen.
target_host network.dns.questions.name Wird in DNS-Logs verwendet, um den Namen der Anfrage einzugeben.
target_ip target.ip Aus verschiedenen Protokolltypen extrahiert, die die Ziel-IP-Adresse darstellen.
target_ip network.dhcp.ciaddr Wird in BOOTREQUEST-Nachrichten verwendet, um das Feld „ciaddr“ auszufüllen.
target_ip network.dns.answers.data Wird in DNS-Protokollen verwendet, um die Antwortdaten zu füllen.
tgt_port target.port Aus syslog-ng-Protokollen extrahiert, entspricht dem Zielport.

Änderungen

2022-11-08

  • Grok-Regel für neu aufgenommene Protokolle mit dem Log-Typ „agetty“, „syslog-ng“ und „systemd“ hinzugefügt.
  • Grok-Muster für „log_type“ hinzugefügt: „named“, „systemd“, „CRON“, „agetty“, „syslog-ng“ und die entsprechenden Zuordnungen für die Felder im oben genannten „log_type“.

2022-09-01

  • event_type wurde von „GENERIC_EVENT“ in „USER_UNCATEGORIZED“ geändert, um den Prozentsatz der allgemeinen Ereignisse zu reduzieren.

2022-08-16

  • UDM-Zuordnung hinzugefügt
  • metadata.vendor_name zu „Bluecat Networks“
  • metadata.product_name zu „Bluecat DDI“

2022-05-05

  • Es wurden Prüfungen für das Feld query_type hinzugefügt.