BlueCat DDI-Logs erfassen

Unterstützt in:

Dieser Parser verarbeitet sowohl LEEF- als auch Nicht-LEEF-formatierte Syslog-Nachrichten von Bluecat DDI (DNS, DHCP, IPAM). Felder werden 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.

Hinweise

  • Prüfen Sie, ob Sie eine Google Security Operations-Instanz haben.
  • Achten Sie darauf, dass Sie Windows 2016 oder höher oder einen Linux-Host mit systemd verwenden.
  • Wenn Sie einen Proxy verwenden, müssen die Firewallports geöffnet sein.
  • Prüfen Sie, ob Sie privilegierten Zugriff auf Bluecat haben.

Authentifizierungsdatei für die Aufnahme in Google SecOps abrufen

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie SIEM-Einstellungen > Collection Agents auf.
  3. Laden Sie die Authentifizierungsdatei für die Aufnahme herunter.

Google SecOps-Kundennummer abrufen

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie die SIEM-Einstellungen > „Profil“ auf.
  3. Kopieren und speichern Sie die Kunden-ID aus dem Bereich Organisationsdetails.

BindPlane-Agent installieren

  1. Führen Sie für die Windows-Installation das folgende Skript 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 Skript 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 dieser Installationsanleitung.

Bindplane-Agent so konfigurieren, dass Syslog-Daten aufgenommen und an Google SecOps gesendet werden

  1. Greifen Sie auf den Computer zu, 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 zu übernehmen:

    sudo systemctl restart bindplane
    

Syslog auf 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 Service Configuration (Dienstkonfiguration) aus.
  8. Klicken Sie auf Diensttyp> Syslog. Der Address Manager 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 (Bindplane).
    • Syslog-Port: Der Port Ihres Syslog-Servers (Bindplane).
    • Syslog-Transport: Wählen Sie entweder TCP oder UDP aus (je nach Bindplane-Konfiguration).
  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 nach dem 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 aus (basierend auf Ihrer Syslog-Konfiguration).
    • 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 die entsprechende Stufe entsprechend Ihren Anforderungen 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 wichtige Ereignisse
    • Info: Mitteilungen
    • Debug: Detaillierte Debugging-Informationen
  7. Optional: Fügen Sie eine benutzerdefinierte Syslog-Einrichtung hinzu, um Logs zu kategorisieren, z. B. local0 oder local1.
  8. Speichern Sie die Konfiguration.

Syslog-Einstellungen auf DDI-Appliances anwenden

  1. Gehen Sie zu 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 Syslog-Server aus, den Sie zuvor konfiguriert haben.
    • 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 Aus der DHCPREQUEST-Nachricht extrahiert. Wird nur für DHCPREQUEST-Nachrichten ausgefüllt.
client_mac principal.mac Aus DHCP-Nachrichten extrahiert (DHCPDISCOVER, DHCPREQUEST, DHCPRELEASE).
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-Logs extrahiert. Kaufmännische Und-Zeichen und Leerzeichen werden entfernt.
description metadata.description Aus verschiedenen Logtypen extrahiert, um zusätzlichen Kontext zu liefern.
description metadata.description Aus syslog-ng-Logs extrahiert, um zusätzlichen Kontext bereitzustellen.
file_path target.file.full_path Aus verschiedenen Logtypen extrahiert, die den vollständigen Pfad zu einer Datei darstellen.
file_path target.process.file.full_path Aus agetty-Logs extrahiert und stellt den vollständigen Pfad zu einer Datei dar, die mit einem Prozess verknüpft ist.
inner_message metadata.description Wird als Beschreibung für GENERIC_EVENTs verwendet, wenn der Vorgangstyp nicht definiert ist, und für MEM-MON-Logs.
metadata.event_type Wird vom Parser basierend auf dem Logtyp und ‑inhalt bestimmt. Mögliche Werte sind: 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 Wird aus dem geparsten Zeitstempel des Logeintrags kopiert.
network.protocol Auf „DNS“ für DNS-Logs und auf „DHCP“ für DHCP-Logs festlegen.
network.dns.answers Ein Array mit Antwortdatensätzen. Das Feld data in answers wird mit dem target_ip ausgefüllt, falls vorhanden.
network.dns.questions Ein Array mit Frage-Datensätzen. Das Feld name wird mit dem target_host gefü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-Abfragelogs extrahiert und mithilfe der Datei dns_query_class_mapping.include einem Ganzzahlwert zugeordnet.
query_type network.dns.questions.type Aus DNS-Abfragelogs extrahiert und mithilfe der Datei dhcp_qtype_mapping.include einem Ganzzahlwert zugeordnet.
relay_ip intermediary.ip Aus DNS- und DHCP-Protokollen extrahiert. Stellt die IP-Adresse eines Relay- oder Zwischenservers dar.
server_host target.hostname Aus verschiedenen Logtypen extrahiert, die den Hostnamen des Servers darstellen.
server_host network.dhcp.sname Aus DHCP-Logs extrahiert und repräsentiert den Hostnamen des Servers.
server_host principal.hostname Aus systemd, agetty und einigen Audit-Logs extrahiert, die den Hostnamen des Hauptkontos darstellen.
server_ip target.ip Aus Logs im LEEF-Format extrahiert und stellt die IP-Adresse des Servers dar.
src_ip principal.ip Aus verschiedenen Logtypen extrahiert, die die Quell-IP-Adresse darstellen.
src_ip network.dhcp.yiaddr Wird in DHCPINFORM-Nachrichten verwendet, um das Feld „yiaddr“ auszufüllen.
src_port principal.port Aus verschiedenen Logtypen extrahiert, die den Quellport darstellen.
src_user principal.user.userid Aus CRON- und Audit-Logs extrahiert und stellt die Nutzer-ID dar.
target_host target.hostname Aus verschiedenen Logtypen extrahiert, die den Zielhostnamen darstellen.
target_host network.dns.questions.name Wird in DNS-Logs verwendet, um den Namen der Frage einzufügen.
target_ip target.ip Aus verschiedenen Logtypen extrahiert und stellt die Ziel-IP-Adresse dar.
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-Logs extrahiert und stellt den Zielport dar.

Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten