Palo Alto Cortex XDR-Ereignisprotokolle erfassen

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie Palo Alto Cortex XDR-Ereignisprotokolle mit Google Cloud Storage in Google Security Operations aufnehmen. Der Parser extrahiert Sicherheitsereignisdaten aus Palo Alto Networks Cortex XDR-JSON-Logs. Die Daten werden in das Unified Data Model (UDM) normalisiert. Dazu werden Felder zugeordnet, Datentypen konvertiert und Ereignisse mit Metadaten wie Anbieter, Produkt und Ereignistypen angereichert. Dies geschieht auf Grundlage einer bedingten Logik, die an die Felder event_type und event_sub_type gebunden ist. Außerdem werden Netzwerkverbindungen, Datei- und Registrierungsvorgänge, Prozessinformationen und Nutzeraktivitäten verarbeitet.

Hinweis

Prüfen Sie, ob folgende Voraussetzungen erfüllt sind:

  • Google SecOps-Instanz
  • Google Cloud Storage ist in Ihrer Google Cloud Umgebung eingerichtet und aktiv
  • Privilegierter Zugriff auf Google Cloud und entsprechende Berechtigungen
  • Privilegierter Zugriff auf Palo Alto Cortex XDR

Google Cloud -Storage-Bucket erstellen

  1. In der Google Cloud Console anmelden
  2. Rufen Sie die Seite Cloud Storage-Buckets auf.

    Buckets aufrufen

  3. Klicken Sie auf Erstellen.

  4. Geben Sie auf der Seite Bucket erstellen die Bucket-Informationen ein. Klicken Sie nach jedem der folgenden Schritte auf Weiter, um mit dem nächsten Schritt fortzufahren:

  5. Führen Sie im Abschnitt Einstieg die folgenden Schritte aus:

    1. Geben Sie einen eindeutigen Namen ein, der den Anforderungen für Bucket-Namen entspricht (z. B. cortex-xdr-events-secops).
    2. Wenn Sie den hierarchischen Namespace aktivieren möchten, klicken Sie auf den Maximierungspfeil, um den Bereich Für dateiorientierte und datenintensive Arbeitslasten optimieren zu maximieren, und wählen Sie dann Hierarchischen Namespace für diesen Bucket aktivieren aus.

    3. Wenn Sie ein Bucket-Label hinzufügen möchten, klicken Sie auf den Erweiterungspfeil, um den Abschnitt Labels zu maximieren.

    4. Klicken Sie auf Label hinzufügen und geben Sie einen Schlüssel und einen Wert für das Label an.

  6. Gehen Sie im Bereich Speicherort für Daten auswählen so vor:

    1. Standorttyp auswählen.
    2. Wählen Sie im Menü für den Standorttyp einen Speicherort aus, an dem die Objektdaten in Ihrem Bucket dauerhaft gespeichert werden sollen.

    3. Wenn Sie die Bucket-übergreifende Replikation einrichten möchten, maximieren Sie den Bereich Bucket-übergreifende Replikation einrichten.

  7. Im Abschnitt Speicherklasse für Ihre Daten auswählen wählen Sie entweder Standardspeicherklasse für den Bucket oder Autoclass zur automatischen Verwaltung der Speicherklassen Ihrer Bucket-Daten aus.

  8. Wählen Sie im Abschnitt Zugriff auf Objekte steuern aus, dass die Verhinderung des öffentlichen Zugriffs nicht erzwungen werden soll, und wählen Sie ein Zugriffssteuerungsmodell für die Objekte Ihres Buckets aus.

  9. Gehen Sie im Bereich Auswählen, wie Objektdaten geschützt werden so vor:

    1. Wählen Sie unter Datenschutz die Optionen aus, die Sie für Ihren Bucket festlegen möchten.
    2. Um auszuwählen, wie Ihre Objektdaten verschlüsselt werden, klicken Sie auf den Erweiterungspfeil Datenverschlüsselung und wählen Sie eine Methode für die Datenverschlüsselung aus.
  10. Klicken Sie auf Erstellen.

  11. Konfigurieren Sie eine Regel für die Verwaltung des Objektlebenszyklus für den neu erstellten Ziel-Bucket, um Objekte nach 7 Tagen zu löschen:

    1. Klicken Sie in der Liste Cloud Storage-Buckets auf den Namen Ihres Buckets.
    2. Wählen Sie den Tab Lebenszyklus aus und klicken Sie dann auf Regel hinzufügen.
    3. Wählen Sie im Bereich Aktion auswählen die Option Objekt löschen aus.
    4. Wählen Sie im Abschnitt Objektbedingungen auswählen die Option Alter aus und legen Sie den Wert auf 7 Tage fest.
    5. Klicken Sie auf Speichern.

Cortex XDR-Ereignisweiterleitung konfigurieren

  1. Melden Sie sich in der Web-UI von Cortex XDR an.
  2. Rufen Sie Einstellungen > Konfigurationen > Datenverwaltung > Ereignisweiterleitung auf.
  3. Aktivieren Sie die Lizenzen im Bereich Aktivierung.
  4. Aktivieren Sie GB Event Forwarding, um geparste Logs für Cortex XDR Pro pro GB zur Speicherung in ein externes SIEM zu exportieren.
  5. Aktivieren Sie die Endpoints-Ereignisweiterleitung, um Rohdaten von Endpunkten für Cortex XDR Pro EP und Cloud Endpoints zu exportieren.
  6. Speichern Sie die Auswahl.
  7. Kopieren Sie den angezeigten Speicherpfad.
  8. Generieren und laden Sie das JSON Web Token für das Dienstkonto herunter, das den Zugriffsschlüssel enthält.
  9. Speichern Sie sie an einem sicheren Ort.

Google Cloud Secret Manager konfigurieren

  1. Melden Sie sich in der GCP an.
  2. Rufen Sie die Seite Secret Manager auf.
  3. Wenn Sie dies zum ersten Mal tun, werden Sie aufgefordert, die Secret Manager API zu aktivieren.
  4. Erstellen Sie ein Secret mit dem Namen EVENT_FRWD_CRTX_KEY und kopieren Sie den Inhalt der heruntergeladenen JSON-Datei xdr_sa_key.json als Wert des Secrets.

Feeds einrichten

So konfigurieren Sie einen Feed:

  1. Rufen Sie die Einstellungen > Datenverwaltung > Feeds auf. Wenn Sie eine reine SIEM-Plattform verwenden, rufen Sie die Einstellungen > Feeds auf.
  2. Klicken Sie auf Neuen Feed hinzufügen.
  3. Klicken Sie auf der nächsten Seite auf Einzelnen Feed konfigurieren.
  4. Geben Sie im Feld Feedname einen Namen für den Feed ein, z. B. PANW Cortex XDR-Ereignisprotokolle.
  5. Wählen Sie Google Cloud Storage V2 als Quelltyp aus.
  6. Wählen Sie Palo Alto Cortex XDR-Ereignisse als Logtyp aus.
  7. Klicken Sie auf Dienstkonto abrufen, um das Chronicle-Dienstkonto abzurufen.
  8. Klicken Sie auf Weiter.
  9. Geben Sie Werte für die folgenden Eingabeparameter an:

    • Storage-Bucket-URI: Google Cloud Storage-Bucket-URL (z. B. gs://cortex-xdr-events-secops/). Diese URL muss mit einem Schrägstrich (/) enden.
    • Optionen zum Löschen der Quelle: Wählen Sie Übertragene Dateien nicht löschen aus.

    • Maximales Dateialter: Es werden Dateien berücksichtigt, die in den letzten Tagen geändert wurden. Der Standardwert ist 180 Tage.

  10. Klicken Sie auf Weiter.

  11. Prüfen Sie die neue Feedkonfiguration auf dem Bildschirm Abschließen und klicken Sie dann auf Senden.

  12. Nachdem der Feed erstellt wurde, suchen Sie ihn in der Liste Feeds und klicken Sie rechts in der Zeile auf das Dreipunkt-Menü.

  13. Wählen Sie Feed deaktivieren aus.

Secret-JSON-Zugriff auf Cloud Storage konfigurieren

  1. Melden Sie sich in der GCP an.
  2. Rufen Sie die Seite Secret Manager auf.
  3. Wählen Sie das Secret EVENT_FRWD_CRTX_KEY aus.
  4. Wechseln Sie zum Tab Berechtigungen.
  5. Gewähren Sie den Zugriff Storage-Objekt-Administrator und Storage-Legacy-Bucket-Leser auf den zuvor erstellten Bucket cortex-xdr-events-secops.

Google SecOps-Berechtigungen für Cloud Storage konfigurieren

  1. Rufen Sie IAM & Verwaltung > IAM auf.
  2. Suchen Sie das Chronicle-Dienstkonto.
  3. Gewähren Sie dem Storage Object Viewer (roles/storage.objectViewer) Zugriff auf den zuvor erstellten Bucket cortex-xdr-events-secops.

Aufnahme von PANW Cortex XDR-Ereignisprotokollen in Project Cloud Storage konfigurieren

  1. Rufen Sie in Google CloudAPIs und Dienste > Bibliothek auf.
  2. Aktivieren Sie die Cloud Run API und die Artifact Registry API.
  3. Öffnen Sie Cloud Shell, indem Sie in der oberen Navigationsleiste auf das entsprechende Symbol klicken.
  4. Laden Sie mit dem folgenden Befehl einen benutzerdefinierten Code herunter:

    git clone https://github.com/PaloAltoNetworks/google-cloud-cortex-chronicle.git
    
  5. Wechseln Sie mit dem folgenden Befehl in das Verzeichnis:

    cd google-cloud-cortex-chronicle/
    
  6. Öffnen Sie die Datei env.properties mit einem Editor wie vi.

  7. Geben Sie die folgenden Konfigurationsdetails an:

    REGION=us-central1 # Update according to your project region
    REPO_NAME=panw-chronicle
    IMAGE_NAME=sync_cortex_bucket
    GCP_PROJECT_ID=chrxxxxxxxxx # Update according to your project ID
    JOB_NAME=cloud-run-job-cortex-data-sync # The Cloud Job name 
    ROJECT_NUMBER=80xxxxx9 # Update according to your project number
    # JOB ENV VARIABLES
    SRC_BUCKET=xdr-us-xxxxx-event-forwarding # Update with the Cortex XDR GCS bucket name
    DEST_BUCKET=cortex-xdr-events-secops # Update with the GCS name of the bucket you created
    SECRET_NAME=EVENT_FRWD_CRTX_KEY # Need to match the secret you created
    JOB_SCHEDULE_MINS=30
    
  8. Stellen Sie dem Skript deploy.sh die erforderlichen Berechtigungen bereit:

    chmod 744 deploy.sh
    
  9. Führen Sie das Skript deploy.sh aus:

    ./deploy.sh
    
  10. Ermitteln Sie das verwendete Cloud Job-Dienstkonto aus der Skriptausgabe.

  11. Gewähren Sie dem Dienstkonto Cloud Job die Berechtigung Secret Manager Secret Ancestor, um auf das zuvor erstellte Secret zuzugreifen (in unserem Beispiel EVENT_FRWD_CRTX_KEY).

  12. Gehen Sie zu Secret Manager > EVENT_FRWD_CRTX_KEY (Secret) > Berechtigungen.

  13. Rufen Sie in der Google SecOps-Plattform Einstellungen > Datenverwaltung > Feeds > Name des XDR-Ereignisfeeds > Feed aktivieren auf.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
action_file_path target.file.full_path Direkt zugeordnet
action_file_size target.file.size Direkt zugeordnet und in eine vorzeichenlose Ganzzahl konvertiert
action_local_ip principal.ip Direkt zugeordnet und mit anderen IP-Adressen zusammengeführt
action_local_port principal.port Direkt zugeordnet und in Ganzzahl konvertiert
action_module_path target.process.file.full_path Direkt zugeordnet
action_network_connection_id network.session_id Direkt zugeordnet
action_network_protocol network.ip_protocol Umbenannt in protocol_number_src, geparst mit parse_ip_protocol.include und zugeordnet zu network.ip_protocol
action_process_image_command_line target.process.command_line Direkt zugeordnet
action_process_image_md5 target.process.file.md5 Direkt zugeordnet
action_process_image_path target.process.file.full_path Direkt zugeordnet
action_process_image_sha256 target.process.file.sha256 Direkt zugeordnet
action_process_os_pid target.process.pid Direkt zugeordnet und in String konvertiert
action_process_user_sid target.user.windows_sid Direkt zugeordnet
action_process_username target.user.userid, target.administrative_domain In Kleinbuchstaben umgewandelt, nach Domain und Nutzer geparst und entsprechend zugeordnet
action_registry_data target.registry.registry_value_data Direkt zugeordnet
action_registry_key_name target.registry.registry_key Direkt zugeordnet
action_registry_value_name target.registry.registry_value_name Direkt zugeordnet
action_remote_ip target.ip Direkt zugeordnet und mit anderen IP-Adressen zusammengeführt
action_remote_port target.port Direkt zugeordnet und in Ganzzahl konvertiert
action_total_download network.received_bytes Direkt zugeordnet und in eine vorzeichenlose Ganzzahl konvertiert
action_total_upload network.sent_bytes Direkt zugeordnet und in eine vorzeichenlose Ganzzahl konvertiert
agent_hostname principal.hostname, observer.hostname In Kleinbuchstaben umgewandelt und zugeordnet
agent_ip_addresses observer.ip Als JSON geparst, in einzelne IP-Adressen aufgeteilt und zusammengeführt
agent_os_sub_type target.platform_version Direkt zugeordnet
event_id metadata.product_log_id Direkt zugeordnet
event_sub_type metadata.product_event_type In String konvertiert und für die bedingte Zuordnung von metadata.event_type und metadata.product_event_type verwendet
event_timestamp metadata.event_timestamp, timestamp In String konvertiert, als UNIX_MS-Zeitstempel geparst und zugeordnet
event_type metadata.event_type In String konvertiert und für die bedingte Zuordnung von metadata.event_type und metadata.product_event_type verwendet
os_actor_process_command_line principal.process.command_line Direkt zugeordnet
os_actor_process_image_md5 principal.process.file.md5 Direkt zugeordnet
os_actor_process_image_path principal.process.file.full_path Direkt zugeordnet
os_actor_process_image_sha256 principal.process.file.sha256 Direkt zugeordnet
os_actor_process_instance_id principal.process.product_specific_process_id Mit dem Präfix „PAN:“ versehen und zugeordnet
os_actor_process_os_pid principal.process.pid In String konvertiert und zugeordnet
os_actor_primary_user_sid principal.user.windows_sid Wird zugeordnet, wenn sie mit „S-“ oder „s-“ beginnt
os_actor_primary_username principal.user.userid, principal.administrative_domain In Kleinbuchstaben umgewandelt, nach Domain und Nutzer geparst und entsprechend zugeordnet
_action security_result.action Mit _security_result zusammengeführt und dann zugeordnet
metadata.log_type metadata.log_type Hartcodiert auf „PAN_CORTEX_XDR_EVENTS“
metadata.product_name metadata.product_name Hartcodiert auf „Cortex XDR“
metadata.vendor_name metadata.vendor_name Hartcodiert auf „PAN“
target.platform target.platform Auf „WINDOWS“ festgelegt, wenn agent_os_sub_type „Windows“ enthält
action_user_session_id event.idm.read_only_udm.network.session_id Aus Änderungsprotokoll zugeordnet
action_username event.idm.read_only_udm.principal.user.user_display_name Aus Änderungsprotokoll zugeordnet
agent_ip_addresses event.idm.read_only_udm.principal.ip und event.idm.read_only_udm.principal.asset.ip Aus Änderungsprotokoll zugeordnet
agent_os_sub_type event.idm.read_only_udm.principal.platform_version Aus Änderungsprotokoll zugeordnet
agent_id event.idm.read_only_udm.principal.asset.asset_id und event.idm.read_only_udm.principal.asset_id Aus Änderungsprotokoll zugeordnet
agent_os_type event.idm.read_only_udm.principal.platform Aus Änderungsprotokoll zugeordnet
action_process_token event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
action_process_fds event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
action_process_termination_date event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
action_process_termination_code event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
action_network_stats_is_last event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
action_user_is_local_session event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
action_user_status event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
event_version event.idm.read_only_udm.metadata.product_version Aus Änderungsprotokoll zugeordnet
action_file_previous_file_path event.idm.read_only_udm.principal.file.full_path Aus Änderungsprotokoll zugeordnet
agent_interface_map.ipv4 event.idm.read_only_udm.observer.ip Aus Änderungsprotokoll zugeordnet
agent_interface_map.mac event.idm.read_only_udm.observer.mac Aus Änderungsprotokoll zugeordnet
action_file_last_writer_actor event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
action_file_device_type event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
action_file_previous_file_name event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
action_file_name event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
agent_id event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
agent_version event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
agent_os_type event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
os_actor_thread_thread_id event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
action_file_type event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
action_file_prev_type event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
os_actor_process_signature_status event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
os_actor_process_logon_id event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
agent_content_version event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
action_module_image_size event.idm.read_only_udm.target.file.size Aus Änderungsprotokoll zugeordnet
action_file_md5 event.idm.read_only_udm.target.file.md5 Aus Änderungsprotokoll zugeordnet
action_file_sha256 event.idm.read_only_udm.target.file.sha256 Aus Änderungsprotokoll zugeordnet
action_module_md5 target.process.file.md5 Aus Änderungsprotokoll zugeordnet
action_module_sha256 target.process.file.sha256 Aus Änderungsprotokoll zugeordnet
metadata.event_type GENERIC_EVENT. Aus Änderungsprotokoll zugeordnet

Änderungsprotokoll

Änderungsprotokoll für diesen Parser ansehen

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