Cloud Compute-Kontextprotokolle erfassen

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie Google Cloud Compute-Kontextprotokolle mithilfe von Cloud Storage in Google Security Operations exportieren und aufnehmen. Der Parser extrahiert Informationen aus den Protokollen im JSON-Format. Anschließend werden die extrahierten Daten normalisiert und im UDM-Format von Google SecOps strukturiert. Dabei liegt der Schwerpunkt auf Details zu virtuellen Maschinen wie Hardwarespezifikationen, Netzwerkkonfiguration, Sicherheitseinstellungen und Beziehungen zu anderen Entitäten.

Hinweise

  • Sie benötigen eine Google SecOps-Instanz.
  • Prüfen Sie, ob Compute in Ihrer Google Cloud -Umgebung eingerichtet und aktiv ist.
  • Sie benötigen Lesezugriff auf Google Cloud und die entsprechenden Berechtigungen.

Cloud Storage-Bucket erstellen

  1. Melden Sie sich in der Google Cloud Console an.
  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:

    1. 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. compute-context-logs.
      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 Bereich Labels zu maximieren.

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

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

      1. Standorttyp auswählen.
      2. Wählen Sie im Menü „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.

    3. Wählen Sie im Abschnitt Speicherklasse für Ihre Daten auswählen entweder eine Standardspeicherklasse für den Bucket oder Autoclass für die automatische Verwaltung der Speicherklassen Ihrer Bucket-Daten aus.

    4. Wählen Sie im Abschnitt Zugriff auf Objekte steuern die Option nicht aus, um die Verhinderung des öffentlichen Zugriffs zu erzwingen, und wählen Sie ein Zugriffssteuerungsmodell für die Objekte Ihres Buckets aus.

    5. 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 den Bucket festlegen möchten.
      2. Um auszuwählen, wie Ihre Objektdaten verschlüsselt werden, klicken Sie auf den Erweiterungspfeil mit Label Datenverschlüsselung und wählen Sie eine Methode für die Datenverschlüsselung aus.
  5. Klicken Sie auf Erstellen.

Google Cloud Compute-Logs exportieren

  1. Melden Sie sich in der Google Cloud Console an.
  2. Gehen Sie zu Logging > Logrouter.
  3. Klicken Sie auf Senke erstellen.
  4. Geben Sie die folgenden Konfigurationsparameter an:

    • Name der Senke: Geben Sie einen aussagekräftigen Namen ein, z. B. Compute-Context-Sink.
    • Sink-Ziel: Wählen Sie Cloud Storage aus und geben Sie den URI für Ihren Bucket ein, z. B. gs://compute-context-logs.
    • Log-Filter:

      logName="*compute*"
      resource.type="gce_instance"
      
  5. Klicken Sie auf Erstellen.

Berechtigungen für Cloud Storage konfigurieren

  1. Rufen Sie IAM & Verwaltung > IAM auf.
  2. Suchen Sie das Cloud Logging-Dienstkonto.
  3. Weisen Sie dem Bucket die Rolle roles/storage.admin zu.

Feed in Google SecOps für die Aufnahme von Google Cloud Compute-Kontextprotokollen konfigurieren

  1. Gehen Sie zu SIEM-Einstellungen > Feeds.
  2. Klicken Sie auf Neu hinzufügen.
  3. Geben Sie im Feld Feedname einen Namen für den Feed ein, z. B. Google Cloud Compute Context Logs.
  4. Wählen Sie Google Cloud Storage als Quelltyp aus.
  5. Wählen Sie als Logtyp GCP Compute Context aus.
  6. Klicken Sie neben dem Feld Chronicle-Dienstkonto auf Dienstkonto abrufen.
  7. Klicken Sie auf Weiter.
  8. Geben Sie Werte für die folgenden Eingabeparameter an:

    • Storage Bucket-URI: Cloud Storage-Bucket-URL, z. B. gs://compute-context-logs.
    • URI ist: Wählen Sie Verzeichnis mit Unterverzeichnissen aus.
    • Optionen zum Löschen der Quelle: Wählen Sie die gewünschte Option aus.

    • Asset-Namespace: der Asset-Namespace.

    • Labels für Datenaufnahme: Das Label, das auf die Ereignisse aus diesem Feed angewendet wird.

  9. Klicken Sie auf Weiter.

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

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
Vorgänger event.idm.entity.entity.asset.attribute.labels.value Jedem übergeordneten Wert im Array „Vorgänger“ wird ein separates Label mit dem Schlüssel ancestors zugewiesen.
assetType event.idm.entity.entity.asset.category Wird direkt aus dem Feld „assetType“ zugeordnet.
asset_type event.idm.entity.entity.asset.category Wird direkt aus dem Feld „asset_type“ zugeordnet.
Name event.idm.entity.entity.resource.name Wird direkt aus dem Feld „Name“ zugeordnet.
resource.data.cpuPlatform event.idm.entity.entity.asset.hardware.cpu_platform Direkt aus dem Feld „resource.data.cpuPlatform“ zugeordnet.
resource.data.creationTimestamp event.idm.entity.entity.asset.attribute.creation_time Aus dem Feld „resource.data.creationTimestamp“ in ein Zeitstempelformat geparst.
resource.data.id event.idm.entity.entity.asset.product_object_id Wird direkt aus dem Feld „resource.data.id“ zugeordnet.
resource.data.labels.business_function event.idm.entity.entity.asset.attribute.labels.value Direkt aus dem Feld „resource.data.labels.business_function“ zugeordnet, wobei der Schlüssel auf business_function festgelegt ist.
resource.data.labels.environment event.idm.entity.entity.asset.attribute.labels.value Direkt aus dem Feld „resource.data.labels.environment“ zugeordnet, wobei der Schlüssel auf environment festgelegt ist.
resource.data.labels.infra_location event.idm.entity.entity.asset.attribute.labels.value Direkt aus dem Feld „resource.data.labels.infra_location“ zugeordnet, wobei der Schlüssel auf infra_location festgelegt ist.
resource.data.labels.instance_group event.idm.entity.user.group_identifiers Wird direkt aus dem Feld „resource.data.labels.instance_group“ zugeordnet.
resource.data.labels.os event.idm.entity.entity.asset.platform_software.platform_version Direkt aus dem Feld „resource.data.labels.os“ zugeordnet.
resource.data.labels.primary_application event.idm.entity.entity.asset.attribute.labels.value Direkt aus dem Feld „resource.data.labels.primary_application“ zugeordnet, wobei der Schlüssel auf primary_application festgelegt ist.
resource.data.labels.project_code event.idm.entity.entity.asset.attribute.labels.value Wird direkt aus dem Feld „resource.data.labels.project_code“ zugeordnet, wobei der Schlüssel auf project_code festgelegt ist.
resource.data.lastStartTimestamp event.idm.entity.entity.asset.last_boot_time Wird aus dem Feld „resource.data.lastStartTimestamp“ in ein Zeitstempelformat geparst.
resource.data.machineType event.idm.entity.entity.asset.hardware.model Der Maschinentyp wird mithilfe eines regulären Ausdrucks aus dem Feld „resource.data.machineType“ extrahiert.
resource.data.name event.idm.entity.entity.asset.hostname Wird direkt aus dem Feld „resource.data.name“ zugeordnet.
resource.data.networkInterfaces.0.accessConfigs.0.natIP event.idm.entity.entity.asset.nat_ip Die erste NAT-IP-Adresse der ersten Netzwerkschnittstelle wird zugeordnet.
resource.data.networkInterfaces.0.network event.idm.entity.entity.asset.attribute.cloud.vpc.name Die Netzwerk-ID wird mit einem regulären Ausdruck aus dem Feld „resource.data.networkInterfaces.0.network“ extrahiert.
resource.data.networkInterfaces.0.networkIP event.idm.entity.entity.asset.ip Die IP-Adresse der ersten Netzwerkschnittstelle wird zugeordnet.
resource.data.networkInterfaces.1.networkIP event.idm.entity.entity.asset.ip Die IP-Adresse der zweiten Netzwerkschnittstelle wird zugeordnet.
resource.data.selfLink event.idm.entity.entity.url Wird direkt aus dem Feld „resource.data.selfLink“ zugeordnet.
resource.data.serviceAccounts.0.email event.idm.entity.relations.entity.user.email_addresses Die E-Mail-Adresse des ersten Dienstkontos ist zugeordnet.
resource.data.status event.idm.entity.entity.asset.deployment_status Wird ACTIVE zugeordnet, wenn der Status einer der folgenden Werte ist: RUNNING, PROVISIONING, STAGING, STOPPING, SUSPENDING, SUSPENDED, REPAIRING, TERMINATED. Andernfalls wird DEPLOYMENT_STATUS_UNSPECIFIED zugeordnet.
event.idm.entity.entity.asset.attribute.cloud.availability_zone Die Verfügbarkeitszone wird durch Kombination der Felder „region“ und „zone_suffix“ erstellt.
event.idm.entity.entity.asset.attribute.cloud.environment Legen Sie GOOGLE_CLOUD_PLATFORM fest.
event.idm.entity.entity.asset.attribute.cloud.project.name Die Projekt-ID wird mit einem regulären Ausdruck aus dem Namensfeld extrahiert.
event.idm.entity.entity.asset.attribute.cloud.project.resource_type Legen Sie CLOUD_PROJECT fest.
event.idm.entity.entity.asset.attribute.cloud.vpc.resource_type Legen Sie VPC_NETWORK fest.
event.idm.entity.entity.resource.resource_type Legen Sie VIRTUAL_MACHINE fest, wenn „asset_type“ oder „assetType“ Instance enthält.
event.idm.entity.entity.resource.type Legen Sie VIRTUAL_MACHINE fest, wenn „asset_type“ oder „assetType“ Instance enthält.
event.idm.entity.metadata.collected_timestamp Setzen Sie den Logstash-Ereigniszeitstempel.
event.idm.entity.metadata.entity_type Legen Sie ASSET fest.
event.idm.entity.metadata.product_name Legen Sie GCP Compute Context fest.
event.idm.entity.metadata.vendor_name Legen Sie Google Cloud Platform fest.
event.idm.entity.relations.entity.user.attribute.cloud.environment Legen Sie GOOGLE_CLOUD_PLATFORM fest.
event.idm.entity.relations.entity_type Legen Sie USER fest.
event.idm.entity.relations.relationship Legen Sie ADMINISTERS fest.

Änderungen

2024-01-27

Fehlerkorrektur:

  • Die Zuordnungen von name, resource.data.id, resource.data.name, region, resource.data.selfLink, project_id, asset_network_id und {region}-%{zone_suffix} wurden in separate Mutablöcken unterteilt.

2024-01-05

Optimierung:

  • Die Zuordnung von event.idm.entity.entity.namespace wurde entfernt.
  • Unterstützung für das Parsen aller networkIP von resource.data.networkInterfaces hinzugefügt.

2022-07-29

  • Bedingte Prüfung für resource.data.lastStartTimestamp hinzugefügt und auf entity.asset.last_boot_time zugeordnet.
  • Bedingte Prüfung für resource.data.networkInterfaces.0.networkIP hinzugefügt und auf entity.asset.ip zugeordnet.

2022-04-04

  • Anbietername wird aktualisiert.

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