Palo Alto Networks Traps-Protokolle erfassen

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie Palo Alto Networks Traps-Logs mit Bindplane in Google Security Operations erfassen. Der Parser verarbeitet Logs im CSV- und Schlüssel/Wert-Format und wandelt sie in UDM um. Es werden Felder mit Grok und CSV-Parsing extrahiert, bedingte Logik basierend auf bestimmten Logmeldungen oder Feldwerten ausgeführt, um UDM-Felder zuzuordnen, und verschiedene Ereignistypen wie Statusaktualisierungen, Netzwerkscans und Prozesskreationen verarbeitet.

Hinweis

  • 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 Cortex XDR haben.

Authentifizierungsdatei für die Google SecOps-Datenaufnahme abrufen

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie die SIEM-Einstellungen > Collection Agents auf.
  3. Laden Sie die Ingestion Authentication File (Datei für die Authentifizierung bei der Aufnahme) herunter. Speichern Sie die Datei sicher auf dem System, auf dem BindPlane installiert wird.

Google SecOps-Kundennummer abrufen

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie die SIEM-Einstellungen > Profile 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 zum Erfassen von Syslog-Daten und Senden an Google SecOps konfigurieren

  1. Konfigurationsdatei aufrufen:

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

    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: '/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
            ingestion_labels:
                log_type: PAN_EDR
                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 den folgenden Befehl aus, um den Bindplane-Agent unter Linux neu zu starten:

    sudo systemctl restart bindplane-agent
    
  • Wenn Sie den Bindplane-Agent unter Windows neu starten möchten, können Sie entweder die Konsole Dienste verwenden oder den folgenden Befehl eingeben:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Palo Alto Networks Traps konfigurieren

  1. Melden Sie sich in der Cortex XDR ESM-Konsole an.
  2. Wählen Sie Einstellungen > ESM > Syslog aus.
  3. Klicken Sie das Kästchen Syslog aktivieren an.
  4. Geben Sie die folgenden Konfigurationsdetails an:
    • Syslog-Server: Geben Sie die IP-Adresse des Bindplane-Agents ein.
    • Syslog-Port: Geben Sie die in BindPlane konfigurierte Portnummer ein, z. B. 514.
    • Syslog-Protokoll: Wählen Sie CEF aus.
    • Legen Sie Keep-Alive-Zeitlimit auf 0 fest.
    • Kommunikationsprotokoll: Wählen Sie UDP aus.
  5. Klicken Sie im Bereich Sicherheitsereignisse die folgenden Kästchen an:
    • Präventionsereignis
    • Benachrichtigungsereignis
    • Ereignis nach der Erkennung
  6. Klicken Sie auf Verbindung prüfen> Speichern.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
agentId event.idm.read_only_udm.additional.fields.value.string_value Der Wert von agentId aus dem Rohlog wird dem Feld string_value in einer verschachtelten Struktur unter additional.fields zugeordnet. Der key für dieses Feld ist auf Agent ID gesetzt.
agentIp event.idm.read_only_udm.target.ip Der Wert von agentIp aus dem Rohlog wird dem Feld target.ip zugeordnet.
cat event.idm.read_only_udm.security_result.rule_name Der Wert von cat aus dem Rohlog wird dem Feld security_result.rule_name zugeordnet.
class event.idm.read_only_udm.security_result.category_details Wird in Verbindung mit subClass verwendet, um security_result.category_details im Format class: subClass auszufüllen.
cs1 event.idm.read_only_udm.principal.application, event.idm.read_only_udm.principal.user.email_addresses Wenn cs1Label gleich email ist und cs1 eine gültige E-Mail-Adresse ist, wird sie principal.user.email_addresses zugeordnet. Wenn cs1Label den Wert Initiated by hat, wird es principal.application zugeordnet.
cs2 event.idm.read_only_udm.principal.process.command_line, event.idm.read_only_udm.security_result.description Wenn cs2Label subtype ist, wird es security_result.description zugeordnet. Wenn cs2Label Initiator CMD ist, wird es principal.process.command_line zugeordnet.
cs3 event.idm.read_only_udm.security_result.action_details Wenn cs3Label den Wert result hat, wird es security_result.action_details zugeordnet.
customerId event.idm.read_only_udm.additional.fields.value.string_value Der Wert von customerId aus dem Rohlog wird dem Feld string_value in einer verschachtelten Struktur unter additional.fields zugeordnet. Der key für dieses Feld ist auf Customer ID gesetzt.
date_time event.idm.read_only_udm.metadata.event_timestamp.seconds Geparsed und in einen Zeitstempel umgewandelt, dann metadata.event_timestamp.seconds zugeordnet.
desc event.idm.read_only_udm.metadata.description Der Wert von desc aus dem Rohlog wird dem Feld metadata.description zugeordnet.
deviceName event.idm.read_only_udm.target.hostname Der Wert von deviceName aus dem Rohlog wird dem Feld target.hostname zugeordnet.
email_receiver event.idm.read_only_udm.network.email.to Wird aus dem Feld msg extrahiert, wenn es eine E‑Mail-Adresse enthält, und network.email.to zugeordnet.
endpoint_desc event.idm.read_only_udm.target.resource.attribute.labels.value Abgeleitet von isEndpoint: Yes, host is an endpoint., wenn isEndpoint = 1, No, host is not an endpoint, wenn isEndpoint = 0. key ist auf Is Endpoint festgelegt.
eventType event.idm.read_only_udm.metadata.product_event_type, event.idm.read_only_udm.metadata.event_type Der Wert von eventType aus dem Rohlog wird dem Feld metadata.product_event_type zugeordnet. Wird auch verwendet, um metadata.event_type basierend auf seinem Wert abzuleiten (z.B. Management Audit Logs führt zu EMAIL_TRANSACTION, XDR Analytics BIOC oder Behavioral Threat führt zu SCAN_NETWORK).
facility event.idm.read_only_udm.additional.fields.value.string_value Der Wert von facility aus dem Rohlog wird dem Feld string_value in einer verschachtelten Struktur unter additional.fields zugeordnet. Der key für dieses Feld ist auf Facility gesetzt.
fileHash event.idm.read_only_udm.principal.process.file.sha256 Der Wert von fileHash aus dem Rohlog, in Kleinbuchstaben umgewandelt, wird dem Feld principal.process.file.sha256 zugeordnet.
filePath event.idm.read_only_udm.principal.process.file.full_path Der Wert von filePath aus dem Rohlog wird dem Feld principal.process.file.full_path zugeordnet.
friendlyName event.idm.read_only_udm.metadata.description Der Wert von friendlyName aus dem Rohlog wird dem Feld metadata.description zugeordnet.
interm_ip event.idm.read_only_udm.intermediary.ip Der Wert von interm_ip aus dem Rohlog wird dem Feld intermediary.ip zugeordnet.
isEndpoint event.idm.read_only_udm.target.resource.attribute.labels.value Wird verwendet, um target.resource.attribute.labels.value abzuleiten.
isVdi event.idm.read_only_udm.target.resource.resource_type Wenn isVdi = 1, wird target.resource.resource_type auf VIRTUAL_MACHINE gesetzt.
msg event.idm.read_only_udm.security_result.summary Der Wert von msg aus dem Rohlog wird dem Feld security_result.summary zugeordnet. Wird auch zum Extrahieren von email_receiver verwendet.
msgTextEn event.idm.read_only_udm.security_result.description Der Wert von msgTextEn aus dem Rohlog wird dem Feld security_result.description zugeordnet.
osType event.idm.read_only_udm.target.platform, event.idm.read_only_udm.target.resource.attribute.labels.value Wenn osType = 1, wird target.platform auf WINDOWS gesetzt. Wenn osType = 2, wird target.platform auf MAC gesetzt. Wenn osType 4 ist, wird target.platform auf LINUX gesetzt. Wenn osType = 3 ist, wird der Wert mit dem key OS auf target.resource.attribute.labels.value abgebildet.
osVersion event.idm.read_only_udm.target.platform_version Der Wert von osVersion aus dem Rohlog wird dem Feld target.platform_version zugeordnet.
product_version event.idm.read_only_udm.metadata.product_version Der Wert von product_version aus dem Rohlog wird dem Feld metadata.product_version zugeordnet.
proto event.idm.read_only_udm.network.ip_protocol Wenn proto udp ist, wird network.ip_protocol auf UDP gesetzt.
recordType event.idm.read_only_udm.additional.fields.value.string_value Der Wert von recordType aus dem Rohlog wird dem Feld string_value in einer verschachtelten Struktur unter additional.fields zugeordnet. Der key für dieses Feld ist auf Record Type gesetzt.
regionId event.idm.read_only_udm.principal.location.country_or_region Wenn regionId = 10, wird principal.location.country_or_region auf Americas (N. Virginia) festgelegt. Wenn regionId = 70, wird principal.location.country_or_region auf EMEA (Frankfurt) festgelegt.
request event.idm.read_only_udm.target.url Der Wert von request aus dem Rohlog wird dem Feld target.url zugeordnet.
sec_category_details event.idm.read_only_udm.security_result.category_details Der Wert von sec_category_details aus dem Rohlog wird dem Feld security_result.category_details zugeordnet.
sec_desc event.idm.read_only_udm.security_result.description Der Wert von sec_desc aus dem Rohlog wird dem Feld security_result.description zugeordnet.
serverHost event.idm.read_only_udm.principal.hostname Der Wert von serverHost aus dem Rohlog wird dem Feld principal.hostname zugeordnet.
severity event.idm.read_only_udm.security_result.severity Wird security_result.severity mit der folgenden Logik zugeordnet: 2 –> CRITICAL, 3 –> ERROR, 4 –> MEDIUM, 5 –> LOW, 6 –> INFORMATIONAL.
severity_val event.idm.read_only_udm.security_result.severity, event.idm.read_only_udm.security_result.severity_details Wenn severity_val = 0 ist, wird security_result.severity_details auf UNKNOWN_SEVERITY gesetzt. Andernfalls wird sie mit der folgenden Logik security_result.severity zugeordnet: 6 –> LOW, 8 –> MEDIUM, 9 –> HIGH.
shost event.idm.read_only_udm.principal.hostname Der Wert von shost aus dem Rohlog wird dem Feld principal.hostname zugeordnet.
src_ip event.idm.read_only_udm.principal.ip Der Wert von src_ip aus dem Rohlog wird dem Feld principal.ip zugeordnet.
subClass event.idm.read_only_udm.security_result.category_details Wird in Verbindung mit class verwendet, um security_result.category_details auszufüllen.
suser event.idm.read_only_udm.principal.user.user_display_name Der Wert von suser aus dem Rohlog, wobei Klammern, umgekehrte Schrägstriche und einfache Anführungszeichen entfernt wurden, wird dem Feld principal.user.user_display_name zugeordnet.
targetprocesscmd event.idm.read_only_udm.target.process.command_line Der Wert von targetprocesscmd aus dem Rohlog wird dem Feld target.process.command_line zugeordnet.
targetprocessname event.idm.read_only_udm.target.application Der Wert von targetprocessname aus dem Rohlog wird dem Feld target.application zugeordnet.
targetprocesssha256 event.idm.read_only_udm.target.process.file.sha256 Der Wert von targetprocesssha256 aus dem Rohlog, in Kleinbuchstaben umgewandelt, wird dem Feld target.process.file.sha256 zugeordnet.
tenantname event.idm.read_only_udm.target.resource.attribute.labels.value Der Wert von tenantname aus dem Rohlog wird dem Feld value in einer verschachtelten Struktur unter target.resource.attribute.labels zugeordnet. Der key für dieses Feld ist auf Tenant name gesetzt.
event.idm.read_only_udm.metadata.event_type Standardmäßig auf STATUS_UPDATE gesetzt. Wird auf EMAIL_TRANSACTION geändert, wenn eventType gleich Management Audit Logs ist. Wird auf SCAN_NETWORK geändert, wenn eventType gleich XDR Analytics BIOC oder Behavioral Threat ist oder wenn desc gleich Behavioral Threat ist. Wird auf SCAN_PROCESS geändert, wenn desc gleich Suspicious Process Creation ist. Wird auf Palo Alto Networks gesetzt. Wird auf Cortex XDR gesetzt. Wird auf PAN_EDR gesetzt. Wird auf NETWORK_SUSPICIOUS gesetzt, wenn eventType gleich XDR Analytics BIOC oder Behavioral Threat ist oder wenn desc gleich Behavioral Threat ist.

Änderungsprotokoll

Änderungsprotokoll für diesen Parser ansehen

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