Palo Alto Prisma Cloud-Benachrichtigungslogs erfassen

Unterstützt in:

Übersicht

Dieser Parser extrahiert Warnungslogs aus Palo Alto Prisma Cloud im JSON-Format und wandelt sie in das UDM um. Der Parser führt Datennormalisierung, Typkonvertierungen und bedingte Logik aus, um die entsprechenden UDM-Felder zu füllen. Außerdem werden verschachtelte JSON-Strukturen und Arrays in den Logdaten verarbeitet, um relevante Informationen zu extrahieren.

Hinweise

Prüfen Sie, ob die folgenden Voraussetzungen erfüllt sind:

  • Google SecOps-Instanz.
  • Berechtigter Zugriff auf Palo Alto Prisma Cloud.

Feeds einrichten

Es gibt zwei verschiedene Einstiegspunkte zum Einrichten von Feeds in der Google SecOps-Plattform:

  • SIEM-Einstellungen > Feeds
  • Content Hub> Content-Pakete

Feeds über „SIEM-Einstellungen“ > „Feeds“ einrichten

So konfigurieren Sie einen Feed:

  1. Rufen Sie die SIEM-Einstellungen > Feeds auf.
  2. Klicken Sie auf Neuen Feed hinzufügen.
  3. Klicken Sie auf der nächsten Seite auf Einen einzelnen Feed konfigurieren.
  4. Geben Sie im Feld Feed name (Feedname) einen Namen für den Feed ein, z. B. PAN Prisma Cloud Alerts (PAN Prisma Cloud-Benachrichtigungen).
  5. Wählen Sie Webhook als Quelltyp aus.
  6. Wählen Sie Palo Alto Prisma Cloud Alerts payload als Logtyp aus.
  7. Klicken Sie auf Weiter.
  8. Optional: Geben Sie Werte für die folgenden Eingabeparameter an:
    • Trennzeichen für Aufteilung: Das Trennzeichen, das zum Trennen von Logzeilen verwendet wird, z. B. \n.
  9. Klicken Sie auf Weiter.
  10. Prüfen Sie die Feedkonfiguration auf dem Bildschirm Finalize (Abschließen) und klicken Sie dann auf Submit (Senden).
  11. Klicken Sie auf Geheimen Schlüssel generieren, um einen geheimen Schlüssel zur Authentifizierung dieses Feeds zu generieren.
  12. Kopieren Sie den geheimen Schlüssel und speichern Sie ihn. Sie können diesen geheimen Schlüssel nicht noch einmal aufrufen. Bei Bedarf können Sie einen neuen geheimen Schlüssel generieren. Dadurch wird der vorherige geheime Schlüssel jedoch ungültig.
  13. Kopieren Sie auf dem Tab Details die Feed-Endpunkt-URL aus dem Feld Endpunktinformationen. Sie müssen diese Endpunkt-URL in Ihrer Clientanwendung angeben.
  14. Klicken Sie auf Fertig.

Feeds über den Content Hub einrichten

Geben Sie Werte für die folgenden Felder an:

  • Trennzeichen für Aufteilung: Das Trennzeichen, das zum Trennen von Logzeilen verwendet wird, z. B. \n.

Erweiterte Optionen

  • Feedname:Ein vorausgefüllter Wert, der den Feed identifiziert.
  • Quelltyp:Methode, die zum Erfassen von Logs in Google SecOps verwendet wird.
  • Asset-Namespace:Der mit dem Feed verknüpfte Namespace.
  • Aufnahmelabels:Labels, die auf alle Ereignisse aus diesem Feed angewendet werden.

  • Klicken Sie auf Geheimen Schlüssel generieren, um einen geheimen Schlüssel zur Authentifizierung dieses Feeds zu generieren.

  • Kopieren Sie den geheimen Schlüssel und speichern Sie ihn. Sie können diesen geheimen Schlüssel nicht noch einmal aufrufen. Bei Bedarf können Sie einen neuen geheimen Schlüssel generieren. Dadurch wird der vorherige geheime Schlüssel jedoch ungültig.

  • Kopieren Sie auf dem Tab Details die Feed-Endpunkt-URL aus dem Feld Endpunktinformationen. Sie müssen diese Endpunkt-URL in Ihrer Clientanwendung angeben.

API-Schlüssel für den Webhook-Feed erstellen

  1. Rufen Sie die Google Cloud Console > Anmeldedaten auf.

    Zu den Anmeldedaten

  2. Klicken Sie auf Anmeldedaten erstellen und wählen Sie anschließend API-Schlüssel aus.

  3. Schränken Sie den API-Schlüsselzugriff auf die Google Security Operations API ein.

Endpunkt-URL angeben

  1. Geben Sie in Ihrer Clientanwendung die HTTPS-Endpunkt-URL an, die im Webhook-Feed bereitgestellt wird.
  2. Aktivieren Sie die Authentifizierung, indem Sie den API-Schlüssel und den geheimen Schlüssel als Teil des benutzerdefinierten Headers im folgenden Format angeben:

    X-goog-api-key = API_KEY
    X-Webhook-Access-Key = SECRET
    

    Empfehlung: Geben Sie den API-Schlüssel als Header an, anstatt ihn in der URL anzugeben.

  3. Wenn Ihr Webhook-Client keine benutzerdefinierten Headern unterstützt, können Sie den API-Schlüssel und den geheimen Schlüssel mit Suchparametern im folgenden Format angeben:

    ENDPOINT_URL?key=API_KEY&secret=SECRET
    

    Ersetzen Sie Folgendes:

    • ENDPOINT_URL: Die URL des Feed-Endpunkts.
    • API_KEY: Der API-Schlüssel für die Authentifizierung bei Google Security Operations.
    • SECRET: Der geheime Schlüssel, den Sie zur Authentifizierung des Feeds generiert haben.

Palo Alto Prisma Cloud-Webhook für Google SecOps konfigurieren

  1. Melden Sie sich in Palo Alto Prisma Cloud an.
  2. Wählen Sie Einstellungen > Integrationen und Benachrichtigungen ((and_then)) Integrationen aus.
  3. Klicken Sie auf Integration hinzufügen.
  4. Wählen Sie Webhook aus.
  5. Geben Sie Werte für die folgenden Eingabeparameter an:
    • Name der Integration: Geben Sie einen eindeutigen und aussagekräftigen Namen an (z. B. Google SecOps).
    • Webhook-URL: Geben Sie die ENDPOINT_URL ein.
    • Optional: Geben Sie eine Beschreibung der Integration ein.
    • Optional: Aktivieren Sie Benutzerdefinierte Nutzlast > klicken Sie auf Weiter, um die benutzerdefinierte Nutzlast zu prüfen oder zu bearbeiten.
  6. Klicken Sie auf Weiter.
  7. Klicken Sie auf Test (Testen) und Save Integration (Integration speichern).

Palo Alto Prisma Cloud-Benachrichtigungen konfigurieren

  1. Wechseln Sie in der Palo Alto Prisma Cloud Console zu Alerts > View Alert Rules (Benachrichtigungen > Benachrichtigungsregeln ansehen).
  2. Wählen Sie eine vorhandene Benachrichtigungsregel aus, die Sie bearbeiten möchten.
  3. Optional: Neue Benachrichtigung für Cloud-Infrastruktur erstellen.
  4. Optional: Erstellen Sie eine neue Benachrichtigung für Cloud Workload.
  5. Rufen Sie Benachrichtigungen konfigurieren auf.
  6. Wählen Sie Webhook aus.
  7. Optional: Wählen Sie die Kanäle aus, über die Benachrichtigungen zu Benachrichtigungen gesendet werden sollen, die durch die Benachrichtigungsregel ausgelöst werden.
  8. Klicken Sie auf Weiter.
  9. Klicken Sie auf Speichern.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
accountId target.resource.id Der Wert von accountId aus dem Rohlog.
accountId target.resource.product_object_id Der Wert von accountId aus dem Rohlog. Dadurch wird das eingestellte Feld resource.id überschrieben.
alertId security_result.detection_fields[].key Der Schlüssel ist auf „alert id“ festgelegt.
alertId security_result.detection_fields[].value Der Wert von alertId aus dem Rohlog.
alertRuleId security_result.rule_id Der Wert von alertRuleId aus dem Rohlog.
alertRuleName security_result.rule_name Der Wert von alertRuleName aus dem Rohlog.
alertStatus security_result.detection_fields[].key Der Schlüssel ist auf „alert status“ festgelegt.
alertStatus security_result.detection_fields[].value Der Wert von alertStatus aus dem Rohlog.
alertTs security_result.detection_fields[].key Der Schlüssel ist auf „alertTs“ gesetzt.
alertTs security_result.detection_fields[].value Der Wert von alertTs aus dem Rohlog, in einen String konvertiert.
callbackUrl metadata.url_back_to_product Der Wert von callbackUrl aus dem Rohlog.
cloudType principal.cloud.environment Wenn cloudType „gcp“ (Groß-/Kleinschreibung wird nicht beachtet) ist, wird der Wert auf „GOOGLE_CLOUD_PLATFORM“ gesetzt.
complianceMetadata[].complianceId security_result.detection_fields[].key Der Schlüssel ist auf „complianceId“ gesetzt.
complianceMetadata[].complianceId security_result.detection_fields[].value Der Wert von complianceMetadata[].complianceId aus dem Rohlog.
complianceMetadata[].customAssigned security_result.detection_fields[].key Der Schlüssel ist auf „customAssigned“ gesetzt.
complianceMetadata[].customAssigned security_result.detection_fields[].value Der Wert von complianceMetadata[].customAssigned aus dem Rohlog, in einen String konvertiert.
complianceMetadata[].policyId security_result.detection_fields[].key Der Schlüssel ist auf „Policy Id“ (Richtlinien-ID) festgelegt.
complianceMetadata[].policyId security_result.detection_fields[].value Der Wert von complianceMetadata[].policyId aus dem Rohlog.
complianceMetadata[].requirementId security_result.rule_id Der Wert von complianceMetadata[].requirementId aus dem Rohlog.
complianceMetadata[].requirementName security_result.summary Der Wert von complianceMetadata[].requirementName aus dem Rohlog.
complianceMetadata[].requirementViewOrder security_result.detection_fields[].key Der Schlüssel ist auf „requirementViewOrder“ gesetzt.
complianceMetadata[].requirementViewOrder security_result.detection_fields[].value Der Wert von complianceMetadata[].requirementViewOrder aus dem Rohlog, in einen String konvertiert.
complianceMetadata[].sectionDescription security_result.detection_fields[].key Der Schlüssel ist auf „sectionDescription“ festgelegt.
complianceMetadata[].sectionDescription security_result.detection_fields[].value Der Wert von complianceMetadata[].sectionDescription aus dem Rohlog.
complianceMetadata[].sectionId security_result.detection_fields[].key Der Schlüssel ist auf „sectionId“ festgelegt.
complianceMetadata[].sectionId security_result.detection_fields[].value Der Wert von complianceMetadata[].sectionId aus dem Rohlog.
complianceMetadata[].sectionLabel security_result.detection_fields[].key Der Schlüssel ist auf „sectionLabel“ festgelegt.
complianceMetadata[].sectionLabel security_result.detection_fields[].value Der Wert von complianceMetadata[].sectionLabel aus dem Rohlog.
complianceMetadata[].sectionViewOrder security_result.detection_fields[].key Der Schlüssel ist auf „sectionViewOrder“ gesetzt.
complianceMetadata[].sectionViewOrder security_result.detection_fields[].value Der Wert von complianceMetadata[].sectionViewOrder aus dem Rohlog, in einen String konvertiert.
complianceMetadata[].standardDescription security_result.detection_fields[].key Der Schlüssel ist auf „standardDescription“ festgelegt.
complianceMetadata[].standardDescription security_result.detection_fields[].value Der Wert von complianceMetadata[].standardDescription aus dem Rohlog.
complianceMetadata[].standardName security_result.rule_name Der Wert von complianceMetadata[].standardName aus dem Rohlog.
complianceMetadata[].systemDefault security_result.detection_fields[].key Der Schlüssel ist auf „systemDefault“ gesetzt.
complianceMetadata[].systemDefault security_result.detection_fields[].value Der Wert von complianceMetadata[].systemDefault aus dem Rohlog, in einen String konvertiert.
create_time metadata.event_timestamp, events[].timestamp Der Wert von create_time aus dem Rohlog.
data.allocationId principal.resource.product_object_id Der Wert von data.allocationId aus dem Rohlog.
data.publicIp principal.ip Der Wert von data.publicIp aus dem Rohlog.
deleted additional.fields[].key Der Schlüssel ist auf „deleted“ (gelöscht) gesetzt.
deleted additional.fields[].value.string_value Der Wert von deleted aus dem Rohlog, in einen String konvertiert.
description metadata.description Der Wert von description aus dem Rohlog.
firstSeen principal.asset.first_seen_time Der Wert von firstSeen aus dem Rohlog, der als Zeitstempel (UNIX_MS oder UNIX-Format) geparst wird.
hasFinding security_result.detection_fields[].key Der Schlüssel ist auf „hasFinding“ gesetzt.
hasFinding security_result.detection_fields[].value Der Wert von hasFinding aus dem Rohlog, in einen String konvertiert.
lastSeen principal.asset.last_discover_time Der Wert von lastSeen aus dem Rohlog, der als Zeitstempel (UNIX_MS oder UNIX-Format) geparst wird.
metadata.event_type Wird auf „USER_RESOURCE_ACCESS“ festgelegt, sofern nicht durch einen bestimmten Ereignistyp aus dem Log überschrieben. Andernfalls auf „GENERIC_EVENT“ setzen.
metadata.product_name Fest codiert als „CASB“.
metadata.vendor_name Fest codiert auf „Palo Alto Networks“.
policyDescription security_result.detection_fields[].key Der Schlüssel ist auf „policyDescription“ festgelegt.
policyDescription security_result.detection_fields[].value Der Wert von policyDescription aus dem Rohlog.
policyId security_result.detection_fields[].key Der Schlüssel ist auf „Policy Id“ (Richtlinien-ID) festgelegt.
policyId security_result.detection_fields[].value Der Wert von policyId aus dem Rohlog.
policyLabels additional.fields[].key Der Schlüssel ist auf „policyLabels“ festgelegt.
policyLabels additional.fields[].value.string_value Der Wert von policyLabels aus dem Rohlog.
policyName security_result.description Der Wert von policyName aus dem Rohlog.
policyRecommendation security_result.detection_fields[].key Der Schlüssel ist auf „policy recommendation“ (Richtlinienempfehlung) festgelegt.
policyRecommendation security_result.detection_fields[].value Der Wert von policyRecommendation aus dem Rohlog.
policyType security_result.detection_fields[].key Der Schlüssel ist auf „Policy Type“ (Richtlinientyp) festgelegt.
policyType security_result.detection_fields[].value Der Wert von policyType aus dem Rohlog.
reason security_result.summary Der Wert von reason aus dem Rohlog.
recommendation security_result.detection_fields[].key Der Schlüssel ist auf „Recommendation“ gesetzt.
recommendation security_result.detection_fields[].value Der Wert von recommendation aus dem Rohlog.
resource.additionalInfo principal.resource.attribute.labels[].key Der Schlüssel ist auf „resource additionalInfo“ festgelegt.
resource.additionalInfo principal.resource.attribute.labels[].value Der Wert von resource.additionalInfo aus dem Rohlog.
resource.cloudAccountGroups principal.resource.attribute.labels[].key Der Schlüssel ist auf „resource cloudAccountGroups {index}“ festgelegt.
resource.cloudAccountGroups principal.resource.attribute.labels[].value Der Wert von resource.cloudAccountGroups[] aus dem Rohlog.
resource.cloudType principal.resource.attribute.labels[].key Der Schlüssel ist auf „resource cloudType“ festgelegt.
resource.cloudType principal.resource.attribute.labels[].value Der Wert von resource.cloudType aus dem Rohlog.
resource.data principal.resource.attribute.labels[].key Der Schlüssel ist auf „resource data {nested_key}“ festgelegt.
resource.data principal.resource.attribute.labels[].value Der Wert von resource.data[] aus dem Rohlog.
resource.id principal.resource.product_object_id Der Wert von resource.id aus dem Rohlog.
resource.name principal.resource.name Der Wert von resource.name aus dem Rohlog.
resource.region principal.location.country_or_region Der Wert von resource.region aus dem Rohlog.
resource.regionId principal.cloud.availability_zone Der Wert von resource.regionId aus dem Rohlog.
resource.resourceApiName principal.resource.attribute.labels[].key Der Schlüssel ist auf „resource resourceApiName“ festgelegt.
resource.resourceApiName principal.resource.attribute.labels[].value Der Wert von resource.resourceApiName aus dem Rohlog.
resource.resourceTags principal.resource.attribute.labels[].key Der Schlüssel ist auf „resource resourceTags {nested_key}“ festgelegt.
resource.resourceTags principal.resource.attribute.labels[].value Der Wert von resource.resourceTags[] aus dem Rohlog.
resource.resourceTs principal.resource.attribute.labels[].key Der Schlüssel ist auf „resource resourceTs“ festgelegt.
resource.resourceTs principal.resource.attribute.labels[].value Der Wert von resource.resourceTs aus dem Rohlog.
resource.resourceType principal.resource.attribute.labels[].key Der Schlüssel ist auf „resource resourceType“ festgelegt.
resource.resourceType principal.resource.attribute.labels[].value Der Wert von resource.resourceType aus dem Rohlog.
resource.rrn principal.resource.attribute.labels[].key Der Schlüssel ist auf „resource rrn“ festgelegt.
resource.rrn principal.resource.attribute.labels[].value Der Wert von resource.rrn aus dem Rohlog.
resource.url principal.url Der Wert von resource.url aus dem Rohlog.
resourceCloudService principal.resource.attribute.labels[].key Der Schlüssel ist auf „resource cloud service“ festgelegt.
resourceCloudService principal.resource.attribute.labels[].value Der Wert von resourceCloudService aus dem Rohlog.
resourceName principal.resource.name Der Wert von resourceName aus dem Rohlog.
resourceRegion principal.location.country_or_region Der Wert von resourceRegion aus dem Rohlog.
resourceRegionId principal.cloud.availability_zone Der Wert von resourceRegionId aus dem Rohlog.
resourceType target.resource.resource_subtype Der Wert von resourceType aus dem Rohlog.
severity security_result.severity Der Wert von severity aus dem Rohlog, in Großbuchstaben konvertiert. Wird den UDM-Schweregradwerten (CRITICAL, HIGH, MEDIUM, LOW, INFORMATIONAL) zugeordnet.
source principal.application Der Wert von source aus dem Rohlog.
unifiedAssetId principal.asset.asset_id Der Wert von unifiedAssetId aus dem Rohlog mit dem Präfix „ASSETID:“.

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