Cloud IDS-Logs (Cloud Intrusion Detection System) erfassen
In diesem Dokument wird beschrieben, wie Sie Cloud IDS-Logs mithilfe von Cloud Storage in Google Security Operations exportieren und aufnehmen. Der Parser wandelt Roh-JSON-formatierte Cloud IDS-Logs von Google Cloud in ein strukturiertes UDM-Format um. Er extrahiert relevante Felder, ordnet sie dem UDM-Schema zu, kategorisiert Ereignisse und ergänzt die Daten um zusätzlichen Kontext wie Netzwerkrichtung und Ressourcentypen.
Hinweise
- Sie benötigen eine Google SecOps-Instanz.
- Prüfen Sie, ob Cloud IDS in Ihrer Google Cloud -Umgebung eingerichtet und aktiv ist.
- Sie benötigen Lesezugriff auf Google Cloud und die entsprechenden Berechtigungen für den Zugriff auf Cloud IDS.
Cloud Storage-Bucket erstellen
- Melden Sie sich in der Google Cloud Console an.
Rufen Sie die Seite Cloud Storage-Buckets auf.
Klicken Sie auf Erstellen.
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:
Führen Sie im Abschnitt Einstieg die folgenden Schritte aus:
- Geben Sie einen eindeutigen Namen ein, der den Anforderungen für Bucket-Namen entspricht, z. B. gcp-ids-logs.
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.
Wenn Sie ein Bucket-Label hinzufügen möchten, klicken Sie auf den Erweiterungspfeil, um den Bereich Labels zu maximieren.
Klicken Sie auf Label hinzufügen und geben Sie einen Schlüssel und einen Wert für das Label an.
Gehen Sie im Bereich Speicherort für Daten auswählen so vor:
- Standorttyp auswählen.
Wählen Sie im Menü „Standorttyp“ einen Speicherort aus, an dem die Objektdaten in Ihrem Bucket dauerhaft gespeichert werden sollen.
Wenn Sie die Bucket-übergreifende Replikation einrichten möchten, maximieren Sie den Bereich Bucket-übergreifende Replikation einrichten.
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.
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.
Gehen Sie im Bereich Auswählen, wie Objektdaten geschützt werden so vor:
- Wählen Sie unter Datenschutz die Optionen aus, die Sie für den Bucket festlegen möchten.
- 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.
Klicken Sie auf Erstellen.
Export von Cloud IDS-Protokollen konfigurieren
- Melden Sie sich in der Google Cloud Console an.
- Gehen Sie zu Logging > Logrouter.
- Klicken Sie auf Senke erstellen.
Geben Sie die folgenden Konfigurationsparameter an:
- Name der Senke: Geben Sie einen aussagekräftigen Namen ein, z. B.
google-cloud-ids-logs-sink
. - Sink-Ziel: Wählen Sie Cloud Storage aus und geben Sie den Google Cloud URI des Speicher-Buckets ein, z. B.
gs://gcp-ids-logs
. Log-Filter:
logName="projects/<your-project-id>/logs/cloud-ids"
- Name der Senke: Geben Sie einen aussagekräftigen Namen ein, z. B.
Klicken Sie auf Erstellen.
Berechtigungen für Cloud Storage konfigurieren
- Rufen Sie IAM & Verwaltung > IAM auf.
- Suchen Sie das Cloud Logging-Dienstkonto.
- Weisen Sie dem Bucket die Rolle roles/storage.admin zu.
Feed in Google SecOps für die Aufnahme von Cloud IDS-Protokollen konfigurieren
- Gehen Sie zu SIEM-Einstellungen > Feeds.
- Klicken Sie auf Neu hinzufügen.
- Geben Sie im Feld Feedname einen Namen für den Feed ein, z. B. GCP-IDS-Protokolle.
- Wählen Sie Google Cloud Storage als Quelltyp aus.
- Wählen Sie GCP-IDS als Logtyp aus.
- Klicken Sie neben dem Feld Chronicle-Dienstkonto auf Dienstkonto abrufen.
- Klicken Sie auf Weiter.
Geben Sie Werte für die folgenden Eingabeparameter an:
- Storage Bucket-URI: Cloud Storage-Bucket-URL, z. B.
gs://gcp-ids-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.
- Storage Bucket-URI: Cloud Storage-Bucket-URL, z. B.
Klicken Sie auf Weiter.
Prüfen Sie die neue Feedkonfiguration auf dem Bildschirm Abschließen und klicken Sie dann auf Senden.
UDM-Zuordnungstabelle
Logfeld | UDM-Zuordnung | Logik |
---|---|---|
insertId | metadata.product_log_id | Direkte Zuordnung. |
jsonPayload.alert_severity | security_result.severity | Direkte Zuordnung. |
jsonPayload.alert_time | metadata.event_timestamp | Direkte Zuordnung. |
jsonPayload.application | principal.application | Direkte Zuordnung, nur wenn die Richtung von Server zu Client ist. |
jsonPayload.application | target.application | Direkte Zuordnung, nur wenn die Richtung „Client-zu-Server“ ist oder „logName“ traffic enthält. |
jsonPayload.category | security_result.category | Zuordnung basierend auf dem Wert von „jsonPayload.category“: - 'dos': NETWORK_DENIAL_OF_SERVICE - 'info-leak': NETWORK_SUSPICIOUS - 'protocol-anomaly': NETWORK_MALICIOUS - 'backdoor', 'spyware', 'trojan': SOFTWARE_MALICIOUS |
jsonPayload.category | security_result.category_details | Direkte Zuordnung. |
jsonPayload.cves | extensions.vulns.vulnerabilities.cve_id | Direkte Zuordnung, Iteration über das Array |
jsonPayload.destination_ip_address | target.ip | Direkte Zuordnung. |
jsonPayload.destination_port | target.port | Direkte Zuordnung. |
jsonPayload.details | extensions.vulns.vulnerabilities.description | Direkte Zuordnung. |
jsonPayload.details | security_result.detection_fields.value | Wird zugeordnet, wenn „jsonPayload.repeat_count“ vorhanden ist. Der Schlüssel ist auf „repeat_count“ festgelegt. |
jsonPayload.direction | network.direction | Zuordnung basierend auf dem Wert von „jsonPayload.direction“: – „client-to-server“: AUSGEHEND – „server-to-client“: EINGEHEND |
jsonPayload.elapsed_time | network.session_duration.seconds | Direkte Zuordnung. |
jsonPayload.ip_protocol | network.ip_protocol | Direkte Zuordnung, Umwandlung in Großbuchstaben und anschließende Zuordnung zur Protokollnummer. |
jsonPayload.name | security_result.threat_name | Direkte Zuordnung. |
jsonPayload.network | principal.resource.name | Direkte Zuordnung, nur wenn die Richtung von Server zu Client ist. |
jsonPayload.network | target.resource.name | Direkte Zuordnung, nur wenn die Richtung „Client-zu-Server“ ist oder „logName“ traffic enthält. |
jsonPayload.repeat_count | security_result.detection_fields.value | Zugewiesen, falls vorhanden. Der Schlüssel ist auf „repeat_count“ festgelegt. |
jsonPayload.session_id | network.session_id | Direkte Zuordnung. |
jsonPayload.source_ip_address | principal.ip | Direkte Zuordnung. |
jsonPayload.source_port | principal.port | Direkte Zuordnung. |
jsonPayload.start_time | about.labels.value | Zugewiesen, falls vorhanden. Der Schlüssel ist auf „start_time“ festgelegt. |
jsonPayload.start_time | additional.fields.value.string_value | Zugewiesen, falls vorhanden. Der Schlüssel ist auf „start_time“ festgelegt. |
jsonPayload.threat_id | security_result.threat_id | Direkte Zuordnung. |
jsonPayload.total_bytes | about.labels.value | Zugewiesen, falls vorhanden. Der Schlüssel ist auf „total_bytes“ festgelegt. |
jsonPayload.total_bytes | additional.fields.value.string_value | Zugewiesen, falls vorhanden. Der Schlüssel ist auf „total_bytes“ festgelegt. |
jsonPayload.total_packets | about.labels.value | Zugewiesen, falls vorhanden. Der Schlüssel ist auf „total_packets“ festgelegt. |
jsonPayload.total_packets | additional.fields.value.string_value | Zugewiesen, falls vorhanden. Der Schlüssel ist auf „total_packets“ festgelegt. |
jsonPayload.type | security_result.detection_fields.value | Zugewiesen, falls vorhanden. Der Schlüssel ist auf „type“ festgelegt. |
jsonPayload.uri_or_filename | target.file.full_path | Direkte Zuordnung. |
logName | security_result.category_details | Direkte Zuordnung. |
receiveTimestamp | metadata.collected_timestamp | Direkte Zuordnung. |
resource.labels.id | observer.resource.product_object_id | Direkte Zuordnung. |
resource.labels.location | observer.location.name | Direkte Zuordnung. |
resource.labels.resource_container | observer.resource.name | Direkte Zuordnung. |
resource.type | observer.resource.resource_subtype | Direkte Zuordnung. |
metadata.event_type | Wird anhand einer Reihe von bedingten Regeln bestimmt, die auf der Anwesenheit und den Werten anderer Felder basieren. Standardmäßig ist „GENERIC_EVENT“ festgelegt. | |
metadata.vendor_name | Statischer Wert: Google Cloud Platform . |
|
metadata.product_name | Statischer Wert: GCP_IDS . |
|
metadata.log_type | Statischer Wert: GCP_IDS . |
|
extensions.vulns.vulnerabilities.vendor | Statischer Wert: GCP_IDS , wird für jede CVE in „jsonPayload.cves“ hinzugefügt. |
|
principal.resource.resource_type | Statischer Wert: VPC_NETWORK . Wird hinzugefügt, wenn „jsonPayload.network“ vorhanden ist und die Richtung „Server-zu-Client“ ist. |
|
target.resource.resource_type | Statischer Wert: VPC_NETWORK . Wird hinzugefügt, wenn „jsonPayload.network“ vorhanden ist und die Richtung „client-zu-server“ ist oder „logName“ traffic enthält. |
|
observer.resource.resource_type | Statischer Wert: CLOUD_PROJECT . Wird hinzugefügt, wenn „resource.labels.resource_container“ oder „resource.type“ vorhanden ist. |
|
observer.resource.attribute.cloud.environment | Statischer Wert: GOOGLE_CLOUD_PLATFORM . Wird hinzugefügt, wenn „resource.labels.resource_container“ oder „resource.type“ vorhanden ist. |
|
is_alert | „True“, wenn „jsonPayload.alert_severity“ den Wert „CRITICAL“ hat, andernfalls „false“. | |
is_significant | „True“, wenn „jsonPayload.alert_severity“ den Wert „CRITICAL“ hat, andernfalls „false“. |
Änderungen
2024-05-01
- Es wurden zusätzliche Zuordnungen für die eingestellte
noun.labels
hinzugefügt.
2023-12-13
- Der GCP_IDS-Parser wurde zum Standardparser gemacht.
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten