Nutanix Prism-Logs erfassen

Unterstützt in:

Übersicht

Dieser Parser verarbeitet Nutanix Prism-Logs und unterstützt sowohl JSON- als auch Syslog-Formate. Felder werden aus verschiedenen Logstrukturen extrahiert, in UDM normalisiert und mit zusätzlichem Kontext wie Nutzerinformationen, Netzwerkdetails und Sicherheitsrisiko angereichert. Der Parser führt auch bestimmte Aktionen basierend auf der HTTP-Methode und dem Log-Level aus und kategorisiert Ereignisse in UDM-Ereignistypen wie USER_LOGIN, STATUS_UPDATE und GENERIC_EVENT.

Hinweise

  • Prüfen Sie, ob Sie eine Google SecOps-Instanz haben.
  • Sie benötigen privilegierten Zugriff auf Nutanix Prism Central.
  • Achten Sie darauf, dass Sie einen Windows 2012 SP2-Host oder höher oder einen Linux-Host mit systemd haben.
  • Wenn Sie einen Proxy verwenden, müssen die Firewallports geöffnet sein.

Authentifizierungsdatei für die Aufnahme in Google SecOps abrufen

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie die SIEM-Einstellungen > Collection Agents auf.
  3. Laden Sie die Authentifizierungsdatei für die Aufnahme herunter.

Google SecOps-Kundennummer abrufen

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie die SIEM-Einstellungen > Profil auf.
  3. Kopieren und speichern Sie die Kunden-ID aus dem Bereich Organisationsdetails.

BindPlane-Agent installieren

  1. Führen Sie für die Windows-Installation das folgende Skript aus: msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet.
  2. Führen Sie für die Linux-Installation das folgende Skript aus: sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh.
  3. Weitere Installationsoptionen finden Sie in dieser Installationsanleitung.

Bindplane-Agent so konfigurieren, dass Syslog-Daten aufgenommen und an Google SecOps gesendet werden

  1. Greifen Sie auf den Computer zu, auf dem der BindPlane-Agent installiert ist.
  2. Bearbeiten Sie die Datei config.yamlso:

    receivers:
      tcplog:
        # Replace the below port <54525> and IP (0.0.0.0) with your specific values
        listen_address: "0.0.0.0:54525" 
    
    exporters:
        chronicle/chronicle_w_labels:
            compression: gzip
            # Adjust the creds location below according the placement of the credentials file you downloaded
            creds: '{ json file for creds }'
            # Replace <customer_id> below with your actual ID that you copied
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # You can apply ingestion labels below as preferred
            ingestion_labels:
            log_type: SYSLOG
            namespace: Namespace
            raw_log_field: body
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - tcplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. Starten Sie den Bindplane-Agent neu, um die Änderungen zu übernehmen. Verwenden Sie dazu den folgenden Befehl: sudo systemctl bindplane restart

Syslog aus Nutanix Prism exportieren

  1. Melden Sie sich mit einem privilegierten Konto in Prism Central an.
  2. Wählen Sie im Menü Prism Central Settings (Prism Central-Einstellungen) aus.
  3. Rufen Sie Syslog-Server auf.
  4. Klicken Sie auf + Syslog-Server konfigurieren.
  5. Geben Sie im Dialogfeld Syslog Servers (Syslog-Server) Werte für die Eingabeparameter an:
    • Server Name (Servername): Geben Sie einen Namen für den Server ein, z. B. Google SecOps Bindplane Server.
    • IP-Adresse: Geben Sie die IP-Adresse Ihres Bindplane-Agents ein.
    • Port: Geben Sie den Port ein, den Bindplane Agent überwacht.
    • Transport Protocol (Transportprotokoll): Wählen Sie TCP aus.
    • Klicken Sie auf Konfigurieren.
  6. Klicken Sie bei der Option Datenquellen auf + Bearbeiten.
  7. Geben Sie im Dialogfeld Datenquellen und zugehöriger Schweregrad Werte für die Eingabeparameter an:
    • Wählen Sie API-Audit, Audit und Flow aus.
    • Legen Sie den Schweregrad für jede auf 6 – Information fest.
    • Klicken Sie auf Speichern.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
@timestamp metadata.event_timestamp Der Ereigniszeitstempel wird aus dem Feld @timestamp geparst. Die Formate yyyy-MM-dd HH:mm:ss.SSS, yyyy-MM-ddTHH:mm:ssZ und ISO8601 werden unterstützt.
agent.id observer.asset_id Wird mit agent.type kombiniert, um die Observer-Asset-ID im Format „agent.type:agent.id“ zu bilden.
agent.type observer.application Die für die Beobachtung verwendete Anwendung.
agent.version observer.platform_version Die Version der Observer-Anwendung.
alertUid security_result.detection_fields.value Der Wert der Benachrichtigungs-UID wird dem Feld value in detection_fields zugeordnet. key ist auf „Alert Uid“ festgelegt.
api_version metadata.product_version Die API-Version.
clientIp principal.ip, principal.asset.ip IP-Adresse des Clients.
client_type principal.labels.value Der Wert des Clienttyps. key ist auf „client_type“ festgelegt.
defaultMsg metadata.description Die Standardnachricht.
entity_uuid metadata.product_log_id Entitäts-UUID.
http_method network.http.method Die HTTP-Methode. In Großbuchstaben umgewandelt.
host.architecture principal.asset.hardware.cpu_platform Die Architektur des Hosts.
host.id principal.asset_id Mit „NUTANIX:“ als Präfix, um die Asset-ID des Hauptkontos zu erstellen.
host.ip principal.ip, principal.asset.ip IP-Adresse des Hosts.
host.mac principal.mac MAC-Adresse des Hosts.
host.os.kernel principal.platform_patch_level Die Kernel-Version des Hostbetriebssystems.
host.os.platform principal.platform Die Plattform des Hostbetriebssystems. Wird LINUX, WINDOWS, MAC oder UNKNOWN_PLATFORM zugeordnet.
host.os.version principal.platform_version Die Version des Hostbetriebssystems.
input.type network.ip_protocol Das Netzwerkprotokoll. Zugeordnet zu „UDP“ oder „TCP“.
log.source.address principal.ip, principal.asset.ip, principal.port Geparsed, um die Quell-IP-Adresse und den Quellport zu extrahieren.
logstash.collect.host observer.ip Die IP-Adresse des Logstash-Collectors.
logstash.collect.timestamp metadata.collected_timestamp Der Zeitstempel, der angibt, wann das Log erfasst wurde.
logstash.ingest.host intermediary.hostname Der Hostname des Logstash-Ingest-Servers.
logstash.ingest.timestamp metadata.ingested_timestamp Der Zeitstempel, der angibt, wann das Log aufgenommen wurde.
logstash.irm_environment principal.labels.value Der Wert der irm-Umgebung. key ist auf „irm_environment“ festgelegt.
logstash.irm_region principal.labels.value Der Wert der Region für die Beeinträchtigung durch Anzeigen. key ist auf „irm_region“ festgelegt.
logstash.irm_site principal.labels.value Der Wert der IRM-Website. key ist auf „irm_site“ festgelegt.
logstash.process.host intermediary.hostname Der Hostname des Logstash-Verarbeitungsservers.
operationType metadata.product_event_type Der Vorgangstyp.
originatingClusterUuid additional.fields.value.string_value Die UUID des ursprünglichen Clusters. key ist auf „Originating Cluster Uuid“ (UUID des Ursprungsclusters) festgelegt.
params.mac_address target.mac Die MAC-Adresse aus den Parametern.
params.requested_ip_address target.ip, target.asset.ip Die angeforderte IP-Adresse aus den Parametern.
params.vm_name target.resource.name Der VM-Name aus den Parametern.
program metadata.product_event_type Der Name des Programms.
rest_endpoint target.url Der REST-Endpunkt.
sessionId additional.fields.value.string_value Die Sitzungs-ID. key ist auf „Sitzungs-ID“ festgelegt.
syslog_host principal.hostname, principal.asset.hostname Syslog-Host.
timestamp metadata.event_timestamp Der Zeitstempel des Ereignisses.
username principal.user.user_display_name oder principal.user.userid Nutzername. Wird als User-ID verwendet, wenn http_method „POST“ ist.
uuid metadata.product_log_id UUID.
metadata.vendor_name Fest codiert auf „Nutanix_Prism“.
metadata.product_name Fest codiert auf „Nutanix_Prism“.
metadata.event_type Wird durch die Parserlogik basierend auf den Werten von has_principal, has_target, audit_log, network_set und http_method bestimmt. Kann GENERIC_EVENT, USER_LOGIN, STATUS_UPDATE, USER_RESOURCE_ACCESS, RESOURCE_CREATION, USER_RESOURCE_UPDATE_CONTENT oder USER_RESOURCE_DELETION sein.
metadata.log_type Fest codiert auf „NUTANIX_PRISM“.
extensions.auth.type Wird auf „AUTHTYPE_UNSPECIFIED“ gesetzt, wenn metadata.event_type gleich USER_LOGIN ist.
security_result.severity Wird durch die Parserlogik basierend auf log_level und syslog_pri bestimmt. Kann CRITICAL, ERROR, HIGH, MEDIUM oder INFORMATIONAL sein.

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