McAfee Firewall Enterprise-Logs erfassen

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie McAfee Firewall Enterprise-Logs erfassen können. Der Parsercode extrahiert zuerst Felder mithilfe einer Reihe von Grok-Mustern, wobei sowohl SYSLOG- als auch JSON-Formate verarbeitet werden. Anschließend werden je nach identifizierter Logkategorie bestimmte Grok-Muster und Schlüssel-Wert-Extraktionen angewendet, um die Daten dem UDM-Schema von Google Security Operations zuzuordnen.

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 McAfee ESM 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. Speichern Sie die Datei sicher auf dem System, auf dem der BindPlane-Agent installiert wird.

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

Fenstereinbau

  1. Öffnen Sie die Eingabeaufforderung oder PowerShell als Administrator.
  2. Führen Sie dazu diesen Befehl aus:

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

Linux-Installation

  1. Öffnen Sie ein Terminal mit Root- oder Sudo-Berechtigungen.
  2. Führen Sie dazu diesen Befehl aus:

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

Zusätzliche Installationsressourcen

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

  1. Greifen Sie auf die Konfigurationsdatei zu:

    • Suchen Sie die Datei config.yaml. Normalerweise befindet es sich unter Linux im Verzeichnis /etc/bindplane-agent/ oder unter Windows im Installationsverzeichnis.
    • Öffnen Sie die Datei mit einem Texteditor (z. B. nano, vi oder Notepad).
  2. Bearbeiten Sie die Datei config.yamlso:

    receivers:
      udplog:
        # Replace with your specific IP and port
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/chronicle_w_labels:
        compression: gzip
        # Path to the ingestion authentication file
        creds: '/path/to/your/ingestion-auth.json'
        # Your Chronicle customer ID
        customer_id: 'your_customer_id'
        endpoint: malachiteingestion-pa.googleapis.com
        ingestion_labels:
          log_type: SYSLOG
          namespace: mcafee_esm
          raw_log_field: body
    
    service:
      pipelines:
        logs/source0__chronicle_w_labels-0:
          receivers:
            - udplog
          exporters:
            - chronicle/chronicle_w_labels
    
  3. Ersetzen Sie den Port und die IP-Adresse nach Bedarf in Ihrer Infrastruktur.

  4. Ersetzen Sie <customer_id> durch die tatsächliche Kunden-ID.

  5. Aktualisieren Sie /path/to/ingestion-authentication-file.json auf den Pfad, in dem die Authentifizierungsdatei im Abschnitt Google SecOps-Aufnahmeauthentifizierungsdatei abrufen gespeichert wurde.

Bindplane-Agent neu starten, um die Änderungen zu übernehmen

  • Führen Sie unter Linux den folgenden Befehl aus, um den Bindplane-Agent neu zu starten:

    sudo systemctl restart bindplane-agent
    
  • Unter Windows können Sie den Bindplane-Agent entweder über die Konsole Dienste neu starten oder den folgenden Befehl eingeben:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

McAfee ESM für die Weiterleitung von Syslog konfigurieren

  1. Melden Sie sich in der McAfee ESM-Konsole an.
  2. Rufen Sie die System Properties (Systemeigenschaften) > Event Forwarding (Ereignisweiterleitung) auf.
  3. Klicken Sie auf Hinzufügen, um eine neue Syslog-Weiterleitungsregel zu erstellen.
  4. Legen Sie folgende Einstellungen fest:
    • Name: Geben Sie einen aussagekräftigen Namen ein, z. B. „Google SecOps Forwarding“.
    • Ziel-IP-Adresse: Geben Sie die IP-Adresse Ihres Syslog-Servers (oder BindPlane-Agents) ein.
    • Zielport: Verwenden Sie 514 für UDP. Sie können je nach Syslog-Server-/Bindplane-Konfiguration auch einen anderen Port angeben.
    • Protokoll: Wählen Sie UDP aus. Andere Optionen sind TCP oder TLS, je nach Syslog-Server- oder Bindplane-Konfiguration.
    • Format: Wählen Sie CEF (Common Event Format) oder ASCII aus (empfohlenes Format für McAfee-Logs).
    • Filter: Hier können Sie beispielsweise Ereignistypen definieren, die weitergeleitet werden sollen, z. B. Firewall-Logs, Authentifizierungsereignisse oder Bedrohungserkennungen.
  5. Klicken Sie auf Speichern.
  6. Starten Sie den Dienst McAfee ESM neu, damit die Änderungen wirksam werden.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
handeln security_result.action_details Der Wert wird aus dem Feld „act“ in der geparsten JSON-Nutzlast übernommen.
Katze security_result.category_details Der Wert wird aus dem Feld „cat“ in der geparsten JSON-Nutzlast übernommen.
data.AppID target.application Der Wert wird aus dem Feld „AppID“ in der geparsten JSON-Nutzlast übernommen.
data.Destination_Hostname target.hostname Der Wert wird aus dem Feld „Destination_Hostname“ in der geparsten JSON-Nutzlast übernommen.
data.Destination_UserID target.user.windows_sid Der Wert wird aus dem Feld „Destination_UserID“ in der geparsten JSON-Nutzlast übernommen.
data.DomainID target.administrative_domain Der Wert wird aus dem Feld „DomainID“ in der geparsten JSON-Nutzlast übernommen.
data.dst_ip target.ip Der Wert wird aus dem Feld „dst_ip“ in der geparsten JSON-Nutzlast übernommen.
data.dst_mac target.mac Der Wert wird aus dem Feld „dst_mac“ in der geparsten JSON-Nutzlast übernommen.
data.dst_port target.port Der Wert wird aus dem Feld „dst_port“ in der geparsten JSON-Nutzlast übernommen und in eine Ganzzahl konvertiert.
data.HostID target.hostname Der Wert wird aus dem Feld „HostID“ in der geparsten JSON-Nutzlast übernommen.
data.norm_sig.name In diesem Feld wird der Ereignistyp anhand des Werts festgelegt.
data.PID target.process.pid Der Wert wird aus dem Feld „PID“ in der geparsten JSON-Nutzlast übernommen.
data.Process_Name target.process.command_line Der Wert wird aus dem Feld „Process_Name“ in der geparsten JSON-Nutzlast übernommen.
data.severity security_result.severity Der Wert wird aus dem Feld „severity“ in der geparsten JSON-Nutzlast übernommen, in eine Ganzzahl konvertiert und anhand seines Werts einer UDM-Wichtigkeitsstufe zugeordnet: LOW (1–32), MEDIUM (33–65), HIGH (66–100).
data.sig.name security_result.description Der Wert stammt aus dem Feld „sig.name“ in der geparsten JSON-Nutzlast.
data.Source_Logon_ID about.labels.value Der Wert wird aus dem Feld „Source_Logon_ID“ in der geparsten JSON-Nutzlast übernommen.
data.Source_UserID principal.user.windows_sid Der Wert wird aus dem Feld „Source_UserID“ in der geparsten JSON-Nutzlast übernommen.
data.src_ip principal.ip Der Wert wird aus dem Feld „src_ip“ in der geparsten JSON-Nutzlast übernommen.
data.src_mac principal.mac Der Wert wird aus dem Feld „src_mac“ in der geparsten JSON-Nutzlast übernommen.
data.src_port principal.port Der Wert wird aus dem Feld „src_port“ in der geparsten JSON-Nutzlast übernommen und in eine Ganzzahl konvertiert.
data.UserIDDst target.user.userid Der Wert wird aus dem Feld „UserIDDst“ in der geparsten JSON-Nutzlast übernommen.
data.UserIDSrc principal.user.userid Der Wert wird aus dem Feld „UserIDSrc“ in der geparsten JSON-Nutzlast übernommen.
deviceExternalId about.asset.asset_id Der Wert wird aus dem Feld „deviceExternalId“ in der geparsten JSON-Nutzlast übernommen und mit dem Produktnamen kombiniert, um eine eindeutige Asset-ID zu erstellen.
deviceTranslatedAddress about.nat_ip Der Wert wird aus dem Feld „deviceTranslatedAddress“ in der geparsten JSON-Nutzlast übernommen.
dst target.ip Der Wert wird aus dem Feld „dst“ in der geparsten JSON-Nutzlast übernommen.
dpt target.port Der Wert wird aus dem Feld „dpt“ in der geparsten JSON-Nutzlast übernommen und in eine Ganzzahl konvertiert.
eventId additional.fields.value.string_value Der Wert wird aus dem Feld „eventId“ in der geparsten JSON-Nutzlast übernommen.
externalId metadata.product_log_id Der Wert wird aus dem Feld „externalId“ in der geparsten JSON-Nutzlast übernommen.
Hostname principal.hostname Der Wert stammt aus dem Feld „hostname“, das vom Grok-Muster extrahiert wird.
log_category metadata.log_type Der Wert stammt aus dem Feld „log_category“, das vom Grok-Muster extrahiert wird.
log_type metadata.product_event_type Der Wert stammt aus dem Feld „log_type“, das vom Grok-Muster extrahiert wird.
Nachricht Dieses Feld wird geparst, um je nach Logkategorie verschiedene Felder zu extrahieren.
nitroURL Dieses Feld ist im UDM nicht dem IDM-Objekt zugeordnet.
pid principal.process.pid Der Wert wird aus dem Feld „pid“ übernommen, das vom Grok-Muster extrahiert wird.
process_id about.process.pid Der Wert stammt aus dem Feld „process_id“, das vom Grok-Muster extrahiert wird.
Proto network.ip_protocol Der Wert wird aus dem Feld „proto“ in der geparsten JSON-Nutzlast übernommen und dem entsprechenden IP-Protokoll zugeordnet.
rhost principal.ip Der Wert wird aus dem Feld „rhost“ übernommen, das vom Grok-Muster extrahiert und als IP-Adresse geparst wird.
shost principal.hostname Der Wert wird aus dem Feld „shost“ in der geparsten JSON-Nutzlast übernommen.
sntdom principal.administrative_domain Der Wert wird aus dem Feld „sntdom“ in der geparsten JSON-Nutzlast übernommen.
spt principal.port Der Wert wird aus dem Feld „spt“ in der geparsten JSON-Nutzlast übernommen und in eine Ganzzahl konvertiert.
src principal.ip Der Wert wird aus dem Feld „src“ in der geparsten JSON-Nutzlast übernommen.
Zeit timestamp Der Wert wird aus dem Feld „time“ übernommen, das vom Grok-Muster extrahiert und als Zeitstempel geparst wird.
Typ metadata.product_event_type Der Wert stammt aus dem Feld „type“, das vom kv-Filter extrahiert wurde.
uid principal.user.userid Der Wert stammt aus dem Feld „uid“, das vom kv-Filter extrahiert wird.
metadata.event_type metadata.event_type Der Wert wird basierend auf dem Ereignisnamen und anderen Feldern im Log festgelegt. Die Logik zur Bestimmung des Ereignistyps ist wie folgt: - Wenn der Ereignisname „TCP“ enthält, wird der Ereignistyp auf „NETWORK_CONNECTION“ gesetzt. – Wenn der Ereignisname „Mail“ enthält, wird der Ereignistyp auf „EMAIL_TRANSACTION“ festgelegt. – Wenn der Ereignisname „HTTP“ oder „http“ enthält, wird der Ereignistyp auf „NETWORK_HTTP“ festgelegt. – Wenn der Ereignisname „User Accessed“ oder „denied by access-list“ enthält, wird der Ereignistyp auf „USER_RESOURCE_ACCESS“ festgelegt. – Wenn der Ereignisname „Data Source Idle“ enthält, wird der Ereignistyp auf „STATUS_UPDATE“ festgelegt. – Wenn der Ereignisname „Comm with snowflex“ enthält, wird der Ereignistyp auf „SERVICE_UNSPECIFIED“ festgelegt. – Wenn der Ereignisname „An account was successfully logged on“ (Ein Konto wurde erfolgreich angemeldet) enthält, wird der Ereignistyp auf „USER_LOGIN“ festgelegt. – Wenn der Ereignisname „Initialization status for service objects“ enthält, wird der Ereignistyp auf „GENERIC_EVENT“ festgelegt. – Wenn keine der oben genannten Bedingungen erfüllt ist, wird der Ereignistyp auf „GENERIC_EVENT“ festgelegt.
metadata.vendor_name metadata.vendor_name Der Wert ist auf „MCAFEE“ festgelegt.
network.direction network.direction Der Wert wird auf „INBOUND“ gesetzt, wenn das Feld „deviceDirection“ in der geparsten JSON-Nutzlast 0 ist. Andernfalls wird sie auf „OUTBOUND“ gesetzt.
security_result.severity security_result.severity Der Wert wird auf „LOW“ festgelegt, wenn das Feld „cef_event_severity“ in der geparsten JSON-Nutzlast 1 ist, auf „MEDIUM“, wenn es 2 ist, auf „HIGH“, wenn es 3 ist, und auf „CRITICAL“, wenn es 9 ist.

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