CloudPassage Halo-Protokolle erfassen

Unterstützt in:

Dieser Logstash-Parsercode wandelt CloudPassage Halo-JSON-Logdaten in ein einheitliches Datenmodell (UDM) um. Es werden relevante Felder aus den Rohprotokollen extrahiert, Zeitstempel normalisiert, Daten UDM-Feldern zugeordnet und Ereignisse mit zusätzlichem Kontext wie Schweregrad und Nutzerinformationen angereichert.

Hinweis

  • Sie benötigen eine Google SecOps-Instanz.
  • Sie benötigen Berechtigungen für CloudPassage Halo.

API-Schlüssel in CloudPassage konfigurieren

  1. Melden Sie sich in CloudPassage Halo an.
  2. Klicken Sie auf Einstellungen > Websiteverwaltung.
  3. Klicken Sie auf den Tab API-Schlüssel.
  4. Klicken Sie auf Aktionen > Neuer API-Schlüssel.
  5. Klicken Sie auf dem Tab API-Schlüssel neben dem Schlüssel auf Anzeigen, um die Werte aufzurufen.
  6. Kopieren Sie sowohl die Schlüssel-ID als auch den Secret Key.

Feed in Google SecOps für die Aufnahme von CloudPassage-Protokollen konfigurieren

  1. Klicken Sie auf Neu hinzufügen.
  2. Geben Sie im Feld Feedname einen Namen für den Feed ein, z. B. CloudPassage-Protokolle.
  3. Wählen Sie API eines Drittanbieters als Quelltyp aus.
  4. Wählen Sie Cloud Passage als Logtyp aus.
  5. Klicken Sie auf Weiter.
  6. Geben Sie Werte für die folgenden Eingabeparameter an:
    • Nutzername: Geben Sie die Schlüssel-ID ein.
    • Secret: Geben Sie den Secret Key ein.
    • Ereignistypen: Die einzubeziehenden Ereignistypen. Wenn Sie keine Ereignistypen angeben, werden die Standardereignisse aus der Liste verwendet.
    • Asset-Namespace: der Asset-Namespace.
    • Aufnahmelabels: Das Label, das auf die Ereignisse aus diesem Feed angewendet wird.
  7. Klicken Sie auf Weiter.
  8. Überprüfen Sie die Feedkonfiguration auf dem Bildschirm Abschließen und klicken Sie dann auf Senden.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
actor_country principal.location.country_or_region Direkt aus dem Feld actor_country im Rohprotokoll zugeordnet.
actor_ip_address principal.ip Direkt aus dem Feld actor_ip_address im Rohprotokoll zugeordnet.
actor_username principal.user.userid Direkt aus dem Feld actor_username im Rohprotokoll zugeordnet.
created_at metadata.event_timestamp Aus dem Feld created_at im Rohprotokoll in das UDM-Zeitstempelformat konvertiert.
kritisch security_result.severity Wenn critical wahr ist, wird „KRITISCH“ als Schweregrad festgelegt. Andernfalls wird der Wert für Ereignisse auf „INFORMATIONSWEISEND“ festgelegt und anhand der Anzahl der Ergebnisse für Scans berechnet.
id metadata.product_log_id Wird direkt aus dem Feld id im Rohprotokoll für Ereignisse zugeordnet.
Nachricht security_result.description Mit dem Grok-Muster aus dem Feld message extrahierte Beschreibung.
Name security_result.summary Wird direkt aus dem Feld name im Rohprotokoll für Ereignisse zugeordnet.
policy_name security_result.detection_fields.policy_name Direkt aus dem Feld policy_name im Rohprotokoll zugeordnet.
rule_name security_result.rule_name Direkt aus dem Feld rule_name im Rohprotokoll zugeordnet.
scan.created_at metadata.event_timestamp Aus dem Feld scan.created_at im Rohprotokoll für Scans in das UDM-Zeitstempelformat konvertiert.
scan.critical_findings_count security_result.description Wird verwendet, um die Beschreibung für Scanereignisse zu berechnen. Wird auch verwendet, um den Schweregrad zu bestimmen.
scan.module security_result.summary Wird verwendet, um die Zusammenfassung für Scanereignisse zu generieren. In Großbuchstaben umgewandelt.
scan.non_critical_findings_count security_result.description Wird verwendet, um die Beschreibung für Scanereignisse zu berechnen. Wird auch verwendet, um den Schweregrad zu bestimmen.
scan.ok_findings_count security_result.description Wird verwendet, um die Beschreibung für Scanereignisse zu berechnen.
scan.server_hostname target.hostname Wird direkt aus dem Feld scan.server_hostname im Rohprotokoll für Scans zugeordnet.
scan.status security_result.summary Wird verwendet, um die Zusammenfassung für Scanereignisse zu generieren.
scan.url metadata.url_back_to_product Wird direkt aus dem Feld scan.url im Rohprotokoll für Scans zugeordnet.
server_group_name target.group.attribute.labels.server_group_name Direkt aus dem Feld server_group_name im Rohprotokoll zugeordnet.
server_group_path target.group.product_object_id Direkt aus dem Feld server_group_path im Rohprotokoll zugeordnet.
server_hostname target.hostname Wird direkt aus dem Feld server_hostname im Rohprotokoll für Ereignisse zugeordnet.
server_ip_address target.ip Direkt aus dem Feld server_ip_address im Rohprotokoll zugeordnet.
server_platform target.platform Direkt aus dem Feld server_platform im Rohprotokoll zugeordnet. In Großbuchstaben umgewandelt.
server_primary_ip_address target.ip Direkt aus dem Feld server_primary_ip_address im Rohprotokoll zugeordnet.
server_reported_fqdn network.dns.authority.name Direkt aus dem Feld server_reported_fqdn im Rohprotokoll zugeordnet.
target_username target.user.userid Direkt aus dem Feld target_username im Rohprotokoll zugeordnet.
metadata.event_type Legen Sie für Ereignisse „SCAN_UNCATEGORIZED“ und für Scans „SCAN_HOST“ fest.
metadata.log_type Legen Sie diesen Wert auf „CLOUD_PASSAGE“ fest.
metadata.product_name Legen Sie diesen Wert auf „HALO“ fest.
metadata.vendor_name Legen Sie diesen Wert auf „CLOUDPASSAGE“ fest.
principal.hostname Kopiert von target.hostname.
security_result.action Legen Sie „UNKNOWN_ACTION“ fest.
security_result.category Legen Sie den Wert auf „POLICY_VIOLATION“ fest.
is_alert Wird auf „wahr“ gesetzt, wenn security_result.severity „KRITISCH“ ist.
is_significant Wird auf „wahr“ gesetzt, wenn security_result.severity „KRITISCH“ ist.

Änderungen

2022-06-30

  • Optimierung
  • „policy_name“ wurde „security_result.detection_fields“ zugeordnet.
  • „server_group_name“ wurde auf „target.group.attribute.labels“ zugeordnet.
  • „server_group_path“ wurde auf „target.group.product_object_id“ zugeordnet.
  • Grok-Muster zum Abrufen der „description“ hinzugefügt.