uberAgent-Logs erfassen

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie uberAgent-Logs mit dem Bindplane-Agent in Google Security Operations aufnehmen.

uberAgent ist eine Plattform für die Analyse der Endpunktsicherheit und das Monitoring der Nutzerfreundlichkeit für Windows und macOS. Sie erfasst Telemetriedaten, einschließlich Prozessereignissen, Anmeldeereignissen, Netzwerkverbindungen und der Anwendungsnutzung auf überwachten Endpunkten.

Hinweis

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

  • Eine Google SecOps-Instanz
  • Windows Server 2016 oder höher oder Linux-Host mit systemd
  • Netzwerkverbindung zwischen dem Bindplane-Agent und den uberAgent-Endpunkten
  • Wenn Sie den Agent hinter einem Proxy ausführen, müssen die Firewallports gemäß den Anforderungen des Bindplane-Agents geöffnet sein.
  • Privilegierter Zugriff auf die uberAgent-Verwaltungskonsole oder die Endpunkte, auf denen uberAgent installiert ist

Authentifizierungsdatei für die Google SecOps-Datenaufnahme abrufen

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie die SIEM-Einstellungen > Collection Agents auf.
  3. Laden Sie die Datei für die Ingestion-Authentifizierung herunter. Speichern Sie die Datei sicher auf dem System, auf dem BindPlane installiert wird.

Google SecOps-Kundennummer abrufen

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

BindPlane-Agent installieren

Installieren Sie den Bindplane-Agent auf Ihrem Windows- oder Linux-Betriebssystem gemäß der folgenden Anleitung.

Fenstereinbau

  1. Öffnen Sie die Eingabeaufforderung oder PowerShell als Administrator.
  2. Führen Sie dazu diesen Befehl aus:

    msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quiet
    
  3. Warten Sie, bis die Installation abgeschlossen ist.

  4. Überprüfen Sie die Installation mit folgendem Befehl:

    sc query observiq-otel-collector
    

    Der Dienst sollte als RUNNING (Wird ausgeführt) angezeigt werden.

Linux-Installation

  1. Öffnen Sie ein Terminal mit Root- oder Sudo-Berechtigungen.
  2. Führen Sie dazu diesen Befehl aus:

    sudo sh -c "$(curl -fsSlL https://github.com/observiq/bindplane-agent/releases/latest/download/install_unix.sh)" install_unix.sh
    
  3. Warten Sie, bis die Installation abgeschlossen ist.

  4. Überprüfen Sie die Installation mit folgendem Befehl:

    sudo systemctl status observiq-otel-collector
    

    Der Dienst sollte als aktiv (wird ausgeführt) angezeigt werden.

Zusätzliche Installationsressourcen

Weitere Installationsoptionen und Informationen zur Fehlerbehebung finden Sie in der Installationsanleitung für den Bindplane-Agent.

BindPlane-Agenten zum Erfassen von Logs und Senden an Google SecOps konfigurieren

Konfigurationsdatei suchen

  • Linux:

    sudo nano /etc/bindplane-agent/config.yaml
    
  • Windows:

    notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
    

Konfigurationsdatei bearbeiten

  • Ersetzen Sie den gesamten Inhalt von config.yaml durch die folgende Konfiguration:

    receivers:
        filelog:
            include:
                - 'C:\uberAgent\logs\*.log'
                - 'C:\uberAgent\logs\*.csv'
            start_at: beginning
            poll_interval: 5s
    
    exporters:
        chronicle/uberagent:
            compression: gzip
            creds_file_path: 'C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json'
            customer_id: '<customer_id>'
            endpoint: malachiteingestion-pa.googleapis.com
            log_type: UBERAGENT
            raw_log_field: body
            ingestion_labels:
                env: production
    
    service:
        pipelines:
            logs/uberagent_to_chronicle:
                receivers:
                    - filelog
                exporters:
                    - chronicle/uberagent
    

Konfigurationsparameter

Ersetzen Sie die folgenden Platzhalter:

  • Empfängerkonfiguration:

    • include: Pfade zu uberAgent-Logdateien:
      • Windows (lokal): C:\uberAgent\logs\*.log und C:\uberAgent\logs\*.csv
      • Windows (Dateifreigabe): \\SERVER\Share\uberagent-logs\*.log
      • Passen Sie den Pfad entsprechend Ihrer uberAgent-Dateiausgabekonfiguration an.
    • start_at: Auf beginning setzen, um vorhandene Logs zu lesen, oder auf end, um nur neue Einträge zu lesen
    • poll_interval: Wie oft nach neuen Logdaten gesucht werden soll (Standard: 5s)
  • Exporter-Konfiguration:

    • uberagent: Beschreibender Name für den Exporter
    • creds_file_path: Vollständiger Pfad zur Datei für die Authentifizierung bei der Aufnahme:
      • Linux: /etc/bindplane-agent/ingestion-auth.json
      • Windows: C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
    • <customer_id>: Kunden-ID aus dem vorherigen Schritt
    • endpoint: Regionale Endpunkt-URL:
      • USA: malachiteingestion-pa.googleapis.com
      • Europa: europe-malachiteingestion-pa.googleapis.com
      • Asien: asia-southeast1-malachiteingestion-pa.googleapis.com
      • Eine vollständige Liste finden Sie unter Regionale Endpunkte.
    • UBERAGENT: Logtyp genau wie in Chronicle
    • ingestion_labels: Optionale Labels im YAML-Format (z. B. env: production)
  • Pipelinekonfiguration:

    • uberagent_to_chronicle: Aussagekräftiger Name für die Pipeline

Konfigurationsdatei speichern

  • Speichern Sie die Datei nach der Bearbeitung:
    • Linux: Drücken Sie Ctrl+O, dann Enter und dann Ctrl+X.
    • Windows: Klicken Sie auf Datei > Speichern.

Bindplane-Agent neu starten, um die Änderungen zu übernehmen

  • Führen Sie den folgenden Befehl aus, um den Bindplane-Agent unter Linux neu zu starten:

    sudo systemctl restart observiq-otel-collector
    
    1. Prüfen Sie, ob der Dienst ausgeführt wird:

      sudo systemctl status observiq-otel-collector
      
    2. Logs auf Fehler prüfen:

      sudo journalctl -u observiq-otel-collector -f
      
  • Wählen Sie eine der folgenden Optionen aus, um den Bindplane-Agent unter Windows neu zu starten:

    • Eingabeaufforderung oder PowerShell als Administrator:

      net stop observiq-otel-collector && net start observiq-otel-collector
      
    • Services-Konsole:

      1. Drücken Sie Win+R, geben Sie services.msc ein und drücken Sie die Eingabetaste.
      2. Suchen Sie nach observIQ OpenTelemetry Collector.
      3. Klicken Sie mit der rechten Maustaste und wählen Sie Neu starten aus.
      4. Prüfen Sie, ob der Dienst ausgeführt wird:

        sc query observiq-otel-collector
        
      5. Logs auf Fehler prüfen:

        type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
        

uberAgent-Dateiausgabe konfigurieren

uberAgent unterstützt mehrere Ausgabebackends. So exportieren Sie Daten als Dateien, die vom Bindplane-Agent erfasst werden:

  1. Öffnen Sie die uberAgent-Konfigurationsdatei (uberAgent.conf) auf dem Endpunkt oder über die Gruppenrichtlinie.
  2. Konfigurieren Sie einen dateibasierten Ausgabereceiver:

    [Receiver]
    Name = FileOutput
    Type = File
    Path = C:\uberAgent\logs\
    
  3. Konfigurieren Sie die zu exportierenden Messwerte und Quelltypen:

    • Prozess: Ereignisse zum Starten/Beenden von Prozessen, Ressourcennutzung.
    • Anmeldung: Ereignisse zur Nutzeranmeldung und ‑abmeldung.
    • Netzwerk: Ereignisse zur Netzwerkverbindung.
    • Anwendung: Anwendungsnutzung und Fehler.
  4. Speichern Sie die Konfiguration und starten Sie den uberAgent-Dienst neu.

  5. Prüfen Sie, ob Logdateien im konfigurierten Ausgabeverzeichnis erstellt werden.

  6. Der Bindplane-Agent muss Leseberechtigungen für das Logverzeichnis und die Dateien haben.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
SessionRpLatencyMs2, SessionHRes, SessionVRes, SessionColorDepth, SessionClientPlatform, SessionClientVersion, SessionClientOsLanguage, SessionPublishedName, SessionPublishedAppsCtx, SessionAppStateCtx, SessionEncryptionCtx, SessionClientTypeCtx, SessionBrokerDnsVmw, SessionBrokerUrlVmw, SessionBrokerTunneledVmw, SessionBrokerTunnelUrlVmw, SessionBrokerRemoteIpVmw, SessionBrokerUserVmw, SessionBrokerDomainVmw, SessionClientTimezoneVmw, SessionClientIdVmw, SessionTypeVmw, SessionBrokerType, SessionFgAppId, SessionFgAppVersion, SessionFgProcessName, SessionFgProcessId, SessionFgBrowserType, SessionFgBrowserActiveTabHost, SessionFgWindowTitle, SessionClientHwIdCtx2, SessionRoundTripTimeMs, SessionFps, SessionTransportProtocols, SessionProcessCount, SessionIOMB, SessionCPUTimeMs, SessionConnectionState, SessionUser, SessionIOCount, SessionNetKBPS, SessionWorkingSetMB, SessionCPUUsagePercent, SessionIOPS, SessionClientName, SessionIOLatencyMs, PowerSupportsS3, IsBatteryPresent, PowerSupportsS1, PowerSupportsS2, PowerSupportsS5, CPUMaxMhz, BaseboardSerial, CtxMachineCatalogName, AdDomainDns, HwHypervisorVendor, OsBuild, HwBiosVersion, PowerSupportsS4, HwIsVirtualMachine, IsUpsPresent, PowerSupportsConnectedStandby, OsInstallDate, Sourcetype, uberagent_index_name, data_stream.namespace, data_stream.dataset, data_stream.type, data_stream.subset, CPUCoresLogical, AdOu, AdDomainNetBios, logstash_pipeline, AdSite, CtxFarmName, CPUSockets, OsSpName, OsName, OsType, OsUpdateBuildRevision, ComputerNameCanonical, ComputerNameDn, CtxDeliveryGroupName, tags, user_agent.original additional.fields Zusammengeführt als Schlüssel/Wert-Paare aus den aufgeführten Feldern
metadata.event_type Auf STATUS_UPDATE festgelegt, wenn „has_principal“ auf „true“ und „has_target“ auf „false“ gesetzt ist, auf NETWORK_CONNECTION, wenn beide auf „true“ gesetzt sind, und auf GENERIC_EVENT, wenn keine der beiden Bedingungen zutrifft.
SessionGUID metadata.product_log_id Wert direkt kopiert
user_agent.original network.http.parsed_user_agent In geparsten User-Agent konvertiert
user_agent.original network.http.user_agent Wert direkt kopiert
SessionTransportProtocols network.ip_protocol Auf UDP setzen, wenn (?i)udp übereinstimmt, auf TCP, wenn (?i)tcp übereinstimmt
SessionID network.session_id Wert direkt kopiert
SessionClientUserDomain principal.administrative_domain Wert direkt kopiert
CPUCoresPhysical, RAMSizeGB, CPUName, HwManufacturer, OsArchitecture, BIOSSerial, HwModel principal.asset.hardware In Hardwareobjekt zusammengeführt
SessionClientDomain, host principal.asset.hostname Wert aus „SessionClientDomain“, falls nicht leer, andernfalls „host“
prin_ip, SessionClientIp, system_ip principal.asset.ip Wert aus „prin_ip“, falls nicht leer, andernfalls „SessionClientIp“, andernfalls „system_ip“
SessionClientDomain, host principal.hostname Wert aus „SessionClientDomain“, falls nicht leer, andernfalls „host“
prin_ip, SessionClientIp, system_ip principal.ip Wert aus „prin_ip“, falls nicht leer, andernfalls „SessionClientIp“, andernfalls „system_ip“
SessionClientMac principal.mac Wert aus SessionClientMac, wobei „-“ durch „:“ ersetzt und der Wert in Kleinbuchstaben geschrieben wird
SessionClientPlatform principal.platform Auf WINDOWS setzen, wenn (?i)windows übereinstimmt
SessionClientVersion principal.platform_version Auf „value“ setzen, wenn „(?i)windows“ übereinstimmt
SessionUser, SessionClientUser principal.user.user_display_name Wert aus „SessionUser“, falls nicht leer, andernfalls „SessionClientUser“
SessionBrokerRemoteIpVmw target.ip Wert direkt kopiert
SessionBrokerUserVmw target.user.user_display_name Wert direkt kopiert
SessionClientIdVmw target.user.userid Wert direkt kopiert
metadata.product_name Auf „UBERAGENT“ festgelegt
metadata.vendor_name Auf „UBERAGENT“ festgelegt

Änderungsprotokoll

Änderungsprotokoll für diesen Parser ansehen

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