Rubrik Security Cloud-Logs erfassen

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie Rubrik Security Cloud-Logs mit Webhooks in Google Security Operations aufnehmen. Rubrik Security Cloud (RSC) ist eine SaaS-basierte Datensicherheitsplattform, die Funktionen für Backup, Wiederherstellung, Anomalieerkennung und Daten-Governance in Cloud- und On-Premise-Umgebungen bietet. RSC generiert Sicherheitsereignisse, Audit-Logs und Logs zu Betriebsaktivitäten im JSON-Format des PagerDuty Common Event Format (PD-CEF), die zur zentralen Überwachung und Analyse an Google SecOps gesendet werden können.

Hinweis

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

  • Eine Google SecOps-Instanz
  • Privilegierter Zugriff auf die Rubrik Security Cloud-Konsole mit Berechtigungen zum Verwalten von Webhooks
  • Netzwerkverbindung von Rubrik Security Cloud zum Google SecOps-Webhook-Endpunkt
  • Zugriff auf die Google Cloud Console zum Erstellen von API-Schlüsseln

Webhook-Feed in Google SecOps erstellen

Feed erstellen

  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 Feedname einen Namen für den Feed ein, z. B. Rubrik Security Cloud Events.
  5. Wählen Sie Webhook als Quelltyp aus.
  6. Wählen Sie Rubrik Security Cloud als Log type (Protokolltyp) aus.
  7. Klicken Sie auf Weiter.
  8. Geben Sie Werte für die folgenden Eingabeparameter an:
    • Trennzeichen für Aufteilung (optional): Lassen Sie das Feld leer, da jede Webhook-Anfrage ein einzelnes Ereignis enthält.
    • Asset-Namespace: Der Asset-Namespace.
    • Aufnahmelabels: Das Label, das auf die Ereignisse aus diesem Feed angewendet werden soll.
  9. Klicken Sie auf Weiter.
  10. Prüfen Sie die neue Feedkonfiguration auf dem Bildschirm Abschließen und klicken Sie dann auf Senden.

Secret-Schlüssel generieren und speichern

Nachdem Sie den Feed erstellt haben, müssen Sie einen Secret-Schlüssel für die Authentifizierung generieren:

  1. Klicken Sie auf der Feed-Detailseite auf Geheimen Schlüssel generieren.
  2. Ein Dialogfeld mit dem geheimen Schlüssel wird angezeigt.
  3. Kopieren Sie den geheimen Schlüssel und speichern Sie ihn sicher.

Feed-Endpunkt-URL abrufen

  1. Rufen Sie den Tab Details des Feeds auf.
  2. Kopieren Sie im Bereich Endpunktinformationen die Feed-Endpunkt-URL.
  3. Speichern Sie diese URL für die nächsten Schritte.
  4. Klicken Sie auf Fertig.

Google Cloud API-Schlüssel erstellen

Für Google SecOps ist ein API-Schlüssel für die Authentifizierung erforderlich. Erstellen Sie einen eingeschränkten API-Schlüssel in der Google Cloud Console.

API-Schlüssel erstellen

  1. Rufen Sie die Seite Anmeldedaten in derGoogle Cloud Console auf.
  2. Wählen Sie Ihr Projekt aus (das Projekt, das mit Ihrer Google SecOps-Instanz verknüpft ist).
  3. Klicken Sie auf Anmeldedaten erstellen > API-Schlüssel.
  4. Ein API-Schlüssel wird erstellt und in einem Dialogfeld angezeigt.
  5. Klicken Sie auf API-Schlüssel bearbeiten, um den Schlüssel einzuschränken.

API-Schlüssel einschränken

  1. Auf der Seite mit den API-Schlüssel-Einstellungen:
    • Name: Geben Sie einen aussagekräftigen Namen ein, z. B. Google SecOps Webhook API Key.
  2. Gehen Sie unter API-Einschränkungen so vor:
    1. Wählen Sie Schlüssel einschränken aus.
    2. Suchen Sie im Drop-down-Menü APIs auswählen nach Google SecOps API (oder Chronicle API) und wählen Sie die API aus.
  3. Klicken Sie auf Speichern.
  4. Kopieren Sie den API-Schlüsselwert aus dem Feld API-Schlüssel oben auf der Seite.
  5. Speichern Sie den API-Schlüssel sicher.

Rubrik Security Cloud-Webhook konfigurieren

Webhook-URL erstellen

  • Kombinieren Sie die Google SecOps-Endpunkt-URL, den API-Schlüssel und den Feed-Secret-Schlüssel. Beide Anmeldedaten werden als Abfrageparameter übergeben:

    <ENDPOINT_URL>?key=<API_KEY>&secret=<SECRET>
    
    • Beispiel:

      https://<REGION>-chronicle.googleapis.com/v1alpha/projects/<PROJECT_NUMBER>/locations/<REGION>/instances/<INSTANCE_ID>/feeds/<FEED_ID>:importPushLogs?key=AIzaSyD...&secret=a1b2c3d4...
      

Webhook in Rubrik Security Cloud erstellen

  1. Melden Sie sich unter https://<account>.my.rubrik.com in der Rubrik Security Cloud an.
  2. Klicken Sie rechts oben auf das Zahnradsymbol und wählen Sie Einstellungen aus.
  3. Klicken Sie auf Benachrichtigungen und wählen Sie Webhooks aus.
  4. Klicken Sie auf Webhook hinzufügen.
  5. Der Assistent zum Hinzufügen von Webhooks wird angezeigt.
  6. Wählen Sie unter Anbieter die Option Allgemein aus.

  7. Geben Sie unter Webhook-Name einen aussagekräftigen Namen ein, z. B. Google SecOps Integration.

  8. Fügen Sie unter Endpunkt die vollständige Webhook-URL von oben ein, einschließlich der Suchparameter key und secret. Die Authentifizierung erfolgt über die URL, daher kann die Ein/Aus-Schaltfläche Authentifizierung deaktiviert bleiben.

  9. Klicken Sie auf Weiter.

  10. Klicken Sie auf Webhook testen, um zu prüfen, ob die angegebene Webhook-Konfiguration funktioniert, und klicken Sie auf Weiter.

  11. Das Fenster Ereignis und Schweregrad auswählen wird angezeigt.

  12. Wählen Sie die Ereignisse aus, die von RSC an den konfigurierten Webhook-Endpunkt gesendet werden:

    1. Wählen Sie unter Ereignisse die weiterzuleitenden Ereignistypen aus:

      • Sicherung
      • Notfallwiederherstellung
      • Anomalie
      • Suche nach Bedrohungen
      • Threat Monitoring
      • Configuration
      • Diagnose
      • Synchronisieren
      • Wartung
      • System
    2. Wählen Sie unter Audit die weiterzuleitenden Audit-Typen aus. Authentifizierungs-Audit-Typen werden in die Anmeldezuordnungen des Parsers eingespeist.

    3. Wählen Sie unter Schweregrad die Schweregrade aus, bei denen Benachrichtigungen ausgelöst werden sollen:

      • Kritisch
      • Warnung
      • Informationsbezogen
  13. Klicken Sie auf Weiter.

  14. Prüfen Sie die Konfigurationsdetails im Fenster Bestätigung und klicken Sie auf Speichern.

Funktion des Webhooks prüfen

Webhook-Status von Rubrik Security Cloud prüfen

  1. Melden Sie sich in der Rubrik Security Cloud an.
  2. Rufen Sie die Einstellungen> „Benachrichtigungen“ > „Webhooks“ auf.
  3. Prüfen Sie in der Spalte Status, ob für Ihren Webhook Aktiviert angezeigt wird.
  4. Achten Sie in den Webhook-Details auf Fehlermeldungen.

Google SecOps-Feedstatus prüfen

  1. Rufen Sie in Google SecOps die SIEM-Einstellungen > Feeds auf.
  2. Prüfen Sie die Spalte Status für Ihren Webhook-Feed. Sie sollte Aktiv lauten.
  3. Prüfen Sie die Anzahl der Empfangenen Ereignisse. Sie sollte sich erhöhen.

Logs in Google SecOps prüfen

  1. Gehen Sie zu Suche > UDM-Suche.
  2. Verwenden Sie die folgende Abfrage:

    metadata.vendor_name = "RUBRIK" nocase AND metadata.product_name = "RUBRIK SECURITY CLOUD" nocase
    
  3. Stellen Sie den Zeitraum auf die letzte Stunde ein.

  4. Prüfen Sie, ob Ereignisse in den Ergebnissen angezeigt werden.

Referenz zur Webhook-Nutzlast

  • Rubrik Security Cloud sendet Ereignisse standardmäßig im PagerDuty Common Event Format (PD-CEF). Hier sehen Sie ein Beispiel für eine Ereignisnutzlast:

    {
      "summary": "Failed backup of vSphere VM 'example-vm'.",
      "source": "Rubrik Security Cloud",
      "severity": "critical",
      "timestamp": "2024-07-18T06:39:40.46Z",
      "class": "Backup",
      "custom_details": {
        "seriesId": "ccd7a8a5-4c58-4c88-bff9-7bdffddb6099",
        "id": "c2b47274-6323-4025-b307-afed1cfb7574",
        "type": "Event",
        "objectId": "83c4a80a-4a57-5699-b399-651089135586",
        "objectName": "example-vm",
        "objectType": "VmwareVm",
        "status": "Failure",
        "clusterId": "6a271636-9392-4cba-90c5-bdbe227854ab",
        "clusterName": "production-cluster",
        "eventName": "Snapshot.BackupFailed",
        "errorId": "Snapshot.VmwareSnapshotError",
        "errorCode": "",
        "errorRemedy": "",
        "errorReason": "",
        "auditUserName": "",
        "auditUserId": "",
        "location": "vcenter.example.com",
        "url": "",
        "customerID": "rubrik-customer",
        "logicalSizeInBytes": "",
        "dataTransferredInBytes": "",
        "effectiveThroughput": ""
      }
    }
    

Webhook-Limits und Best Practices

Anfragelimits

Limit Wert
Maximale Länge einer einzelnen Logzeile 1 MB
Maximale Anzahl von Abfragen pro Sekunde 15.000
Zeitlimit für Anfragen 90 Sekunden
Wiederholungsverhalten Vom Absender verwaltet. Google SecOps gibt HTTP 429 zurück, wenn das Burst-Limit überschritten wird. Das sendende System muss die Anfragen puffern und noch einmal versuchen.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
audit_info_label additional.fields Zusammengeführt
effectiveThroughput_label additional.fields Zusammengeführt
group_label additional.fields Zusammengeführt
isPolarisAudit_label additional.fields Zusammengeführt
label_name_label additional.fields Zusammengeführt
node_label additional.fields Zusammengeführt
orgID_label additional.fields Zusammengeführt
snappable_name_label additional.fields Zusammengeführt
snappable_type_label additional.fields Zusammengeführt
snapshot_date_label additional.fields Zusammengeführt
type_label additional.fields Zusammengeführt
userNote_label additional.fields Zusammengeführt
has_target extensions.auth.type Zugeordnet: true → AUTHTYPE_UNSPECIFIED
hunt_date metadata.event_timestamp Als ISO8601 geparst
timestamp metadata.event_timestamp Als ISO8601 geparst
has_principal metadata.event_type Zugeordnet: true → SCAN_HOST, true → STATUS_UPDATE
has_target metadata.event_type Zugeordnet: true → USER_LOGIN
custom_details.eventName metadata.product_event_type Direkt zugeordnet
custom_details.id metadata.product_log_id Direkt zugeordnet
source metadata.product_name Direkt zugeordnet
custom_details.url metadata.url_back_to_product Direkt zugeordnet
custom_details.dataTransferredInBytes network.sent_bytes Direkt zugeordnet
custom_details.customerID principal.administrative_domain Direkt zugeordnet
domain principal.domain.name Direkt zugeordnet
custom_details.ipAddress principal.ip Zusammengeführt
ip_address principal.ip Zusammengeführt
is_ip_assigned principal.ip Zugeordnet: false → ip_address
custom_details.clusterName principal.resource.name Direkt zugeordnet
custom_details.clusterId principal.resource.product_object_id Direkt zugeordnet
user_email principal.user.email_addresses Zusammengeführt
custom_details.auditUserName principal.user.user_display_name Direkt zugeordnet
user_name principal.user.user_display_name Direkt zugeordnet
action_name security_result.action Zusammengeführt
custom_details.status security_result.action_details Direkt zugeordnet
category_temp security_result.category Zusammengeführt
class security_result.category_details Zusammengeführt
confidence security_result.confidence_details Direkt zugeordnet
custom_details.errorMessage security_result.description Direkt zugeordnet
access_type_label security_result.detection_fields Zusammengeführt
action_date_label security_result.detection_fields Zusammengeführt
detection_time_label security_result.detection_fields Zusammengeführt
directories_snoozed_label security_result.detection_fields Zusammengeführt
directories_unsnoozed_label security_result.detection_fields Zusammengeführt
document_count_label security_result.detection_fields Zusammengeführt
encryption_level_label security_result.detection_fields Zusammengeführt
errorCode_label security_result.detection_fields Zusammengeführt
errorId_label security_result.detection_fields Zusammengeführt
errorReason_label security_result.detection_fields Zusammengeführt
errorRemedy_label security_result.detection_fields Zusammengeführt
event_info_label security_result.detection_fields Zusammengeführt
failed_document_count_label security_result.detection_fields Zusammengeführt
file_matches_label security_result.detection_fields Zusammengeführt
files_created_count_label security_result.detection_fields Zusammengeführt
files_modified_count_label security_result.detection_fields Zusammengeführt
files_removed_count_label security_result.detection_fields Zusammengeführt
files_suspicious_count_label security_result.detection_fields Zusammengeführt
hash_tf_version_label security_result.detection_fields Zusammengeführt
identity_name_label security_result.detection_fields Zusammengeführt
num_files_with_matches_label security_result.detection_fields Zusammengeführt
num_hash_matches_label security_result.detection_fields Zusammengeführt
num_of_violating_identities_label security_result.detection_fields Zusammengeführt
num_yara_rule_matches_label security_result.detection_fields Zusammengeführt
obj_failed_label security_result.detection_fields Zusammengeführt
obj_partially_succeeded_label security_result.detection_fields Zusammengeführt
obj_succeeded_label security_result.detection_fields Zusammengeführt
object_matches_label security_result.detection_fields Zusammengeführt
policy_name_label security_result.detection_fields Zusammengeführt
reason_label security_result.detection_fields Zusammengeführt
remediation_type_label security_result.detection_fields Zusammengeführt
remedy_label security_result.detection_fields Zusammengeführt
risk_name_label security_result.detection_fields Zusammengeführt
seriesID_label security_result.detection_fields Zusammengeführt
seriesId_label security_result.detection_fields Zusammengeführt
skipped_document_count_label security_result.detection_fields Zusammengeführt
strain_name_label security_result.detection_fields Zusammengeführt
successful_document_count_label security_result.detection_fields Zusammengeführt
total_accessible_files_at_risk_count_label security_result.detection_fields Zusammengeführt
vm_count_label security_result.detection_fields Zusammengeführt
yara_tf_version_label security_result.detection_fields Zusammengeführt
hunt_name security_result.rule_name Direkt zugeordnet
hunt_type security_result.rule_type Direkt zugeordnet
is_severity_assigned security_result.severity Zugeordnet: false → INFORMATIONAL, false → MEDIUM
severity security_result.severity Zugeordnet: INFO → INFORMATIONAL, WARNING → MEDIUM
severity_name security_result.severity Zugeordnet: INFO → INFORMATIONAL, WARNING → MEDIUM
severity security_result.severity_details Direkt zugeordnet
severity_name security_result.severity_details Direkt zugeordnet
summary security_result.summary Direkt zugeordnet
threat_feed_type security_result.threat_feed_name Direkt zugeordnet
custom_details.logicalSizeInBytes target.file.size Direkt zugeordnet
client_id_label target.labels Zusammengeführt
client_name_label target.labels Zusammengeführt
custom_details.location target.location.name Direkt zugeordnet
custom_details.objectName target.resource.name Direkt zugeordnet
object_name target.resource.name Direkt zugeordnet
resource_name target.resource.name Direkt zugeordnet
custom_details.objectId target.resource.product_object_id Direkt zugeordnet
component target.resource.resource_subtype Direkt zugeordnet
custom_details.objectType target.resource.resource_subtype Direkt zugeordnet
is_object_type_assigned target.resource.resource_type Zugeordnet: false → UNSPECIFIED
class target.user.email_addresses Zugeordnet: Login → user_email
user_email target.user.email_addresses Zusammengeführt
each_group target.user.group_identifiers Zusammengeführt
custom_details.auditUserName target.user.user_display_name Direkt zugeordnet
user_name target.user.user_display_name Direkt zugeordnet
custom_details.auditUserId target.user.userid Direkt zugeordnet
– extensions.auth.type Konstante: AUTHTYPE_UNSPECIFIED
– metadata.event_type Konstante: USER_LOGIN
– metadata.product_name Konstante: RUBRIK SECURITY CLOUD
– metadata.vendor_name Konstante: RUBRIK
– principal.resource.resource_type Konstante: CLUSTER
– security_result.severity Konstante: INFORMATIONAL
– target.resource.resource_type Konstante: UNSPECIFIED

Änderungsprotokoll

Änderungsprotokoll für diesen Parser ansehen

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