MicroStrategy-Logs erfassen

Unterstützt in:

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

MicroStrategy ist eine Business-Intelligence- und Analyseplattform. Es werden Audit-Logs für die Berichtsausführung, Nutzersitzungen, den Datenzugriff und Administratorvorgänge generiert. Der Parser extrahiert Felder aus MicroStrategy-Logeinträgen und ordnet sie dem Unified Data Model (UDM) zu. Dabei werden Nutzeridentität, Sitzungsdetails, Serverinformationen und Sicherheitsmetadaten erfasst.

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 dem MicroStrategy Intelligence Server
  • Wenn der Agent hinter einem Proxy ausgeführt wird, müssen die Firewallports gemäß den Anforderungen des Bindplane-Agents geöffnet sein.
  • Privilegierter Zugriff auf den MicroStrategy Intelligence Server (Administratorrolle oder Zugriff auf das Serverdateisystem)

Google SecOps-Anmeldedaten für den Bindplane-Agenten abrufen

Wählen Sie eine der folgenden Methoden aus, um den Bindplane-Agenten bei Google SecOps zu authentifizieren:

  • Neue Bereitstellungen: Verwenden Sie die Chronicle API (Option 1).
  • Legacy-Bereitstellungen: Verwenden Sie die Authentifizierungsdatei für die Datenaufnahme (Option 2) weiter, bis die Ingestion API am 20. Juli 2027 eingestellt wird.
  1. Melden Sie sich in der Google Cloud -Konsole an und wählen Sie das Google Cloud -Projekt aus, das mit Ihrer Google SecOps-Instanz verknüpft ist.
  2. Rufen Sie IAM und Verwaltung > Dienstkonten auf.
  3. Klicken Sie auf Dienstkonto erstellen.
  4. Geben Sie die folgenden Konfigurationsdetails an:
    • Name des Dienstkontos: Geben Sie einen Namen für das Konto ein, z. B. bindplane-ingest.
    • Dienstkontobeschreibung: Geben Sie eine Beschreibung ein, z. B. Bindplane agent log ingestion.
  5. Klicken Sie auf Erstellen und fortfahren.
  6. Klicken Sie im Abschnitt Diesem Dienstkonto Zugriff auf das Projekt erteilen auf Rolle auswählen und wählen Sie Chronicle Editor aus.
  7. Klicken Sie auf Weiter und dann auf Fertig.
  8. Klicken Sie auf das erstellte Dienstkonto und rufen Sie dann den Tab Schlüssel auf.
  9. Klicken Sie auf Schlüssel hinzufügen > Neuen Schlüssel erstellen.
  10. Wählen Sie JSON aus und klicken Sie auf Erstellen. Die Schlüsseldatei wird auf Ihren Computer heruntergeladen.
  11. Speichern Sie die Schlüsseldatei als ingestion-auth.json im Bindplane-Collector-Verzeichnis (/opt/observiq-otel-collector/ingestion-auth.json unter Linux oder C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json unter Windows) oder aktualisieren Sie creds_file_path in config.yaml, damit der Pfad mit dem Pfad übereinstimmt, in dem Sie die Datei speichern.
  12. Rufen Sie IAM und Verwaltung > Einstellungen auf und kopieren Sie die Projektnummer. Sie benötigen sie für die Konfiguration des Exporters.

Option 2: Authentifizierungsdatei für die Datenaufnahme herunterladen (Legacy)

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie die SIEM-Einstellungen > Erfassungs-Agents auf.
  3. Laden Sie die Authentifizierungsdatei für die Aufnahme herunter.
  4. Speichern Sie die Datei sicher auf dem System, auf dem der Bindplane-Agent installiert werden soll.

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 Kundennummer aus dem Bereich Organisationsdetails.

BindPlane-Agent installieren

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

Windows-Installation

  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 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 active (running) angezeigt werden.

Zusätzliche Installationsressourcen

Weitere Installationsoptionen und Informationen zur Problembehebung finden Sie im Installationsanleitung für den Bindplane-Agent.

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

Konfigurationsdatei suchen

  • Linux:

    sudo nano /opt/observiq-otel-collector/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:
      tcplog:
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/microstrategy:
        protocol: https
        # Region of your instance, for example us, europe, asia-southeast1
        location: <LOCATION>
        # Project number of the Google Cloud project linked to the instance
        project: '<PROJECT_NUMBER>'
        compression: gzip
        creds_file_path: '/opt/observiq-otel-collector/ingestion-auth.json'
        customer_id: '<customer_id>'
        endpoint: chronicle.googleapis.com
        log_type: MICROSTRATEGY
        raw_log_field: body
    
    service:
      pipelines:
        logs/microstrategy:
          receivers:
            - tcplog
          exporters:
            - chronicle/microstrategy
    

Konfigurationsparameter

Ersetzen Sie die folgenden Platzhalter:

  • Empfängerkonfiguration:

    • tcplog: Der Empfängertyp basierend auf dem Protokoll:
      • udplog für UDP-Syslog
      • tcplog für TCP-Syslog
      • syslog für RFC 3164/5424-Syslog
    • 0.0.0.0: IP-Adresse, auf der gelauscht werden soll:
      • 0.0.0.0, um auf allen Schnittstellen zu lauschen (empfohlen)
      • Bestimmte IP-Adresse für die Überwachung einer Schnittstelle
    • 514: Portnummer, auf der gelauscht werden soll (z. B. 514, 1514, 6514)
  • Exporter-Konfiguration:

    • <customer_id>: Kundennummer aus dem vorherigen Schritt
    • location: Ersetzen Sie <LOCATION> durch die Region Ihrer Google SecOps-Instanz (z. B. us, europe oder asia-southeast1). Der Exporter stellt diesem Wert chronicle.googleapis.com voran. Eine vollständige Liste finden Sie unter Regionale Endpunkte.
    • project: Ersetzen Sie <PROJECT_NUMBER> durch die Projektnummer unter IAM & Verwaltung > Einstellungen.
    • endpoint: Behalten Sie die Einstellung chronicle.googleapis.com bei.
    • Passen Sie creds_file_path an den Pfad Ihrer JSON-Schlüsseldatei für das Dienstkonto an (Option 1), je nach Plattform:
      • Linux: /opt/observiq-otel-collector/ingestion-auth.json
      • Windows: C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json

Legacy-Ingestion-API-Exporter

  • Wenn Sie die Authentifizierungsdatei für die Datenaufnahme aus Option 2 verwenden, ersetzen Sie den Block exporters durch Folgendes. Legen Sie creds_file_path auf den Pfad zur Datei für die Authentifizierung bei der Aufnahme fest. Wenn sich Ihre Instanz außerhalb der USA befindet, ersetzen Sie malachiteingestion-pa.googleapis.com durch Ihren regionalen Endpunkt (z. B. europe-malachiteingestion-pa.googleapis.com).

    exporters:
      chronicle/microstrategy:
        compression: gzip
        creds_file_path: '/opt/observiq-otel-collector/ingestion-auth.json'
        customer_id: '<customer_id>'
        endpoint: malachiteingestion-pa.googleapis.com
        log_type: MICROSTRATEGY
        raw_log_field: body
    

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.

Starten Sie den Bindplane-Agent neu, um die Änderungen zu übernehmen.

So starten Sie den Bindplane-Agent unter Linux neu:

  1. Führen Sie dazu diesen Befehl aus:

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

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

    sudo journalctl -u observiq-otel-collector -f
    

So starten Sie den Bindplane-Agenten unter Windows neu:

  1. Wählen Sie eine der folgenden Optionen aus:

    • Eingabeaufforderung oder PowerShell als Administrator:
    net stop observiq-otel-collector && net start observiq-otel-collector
    
    • Dienstkonsole:
      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. Rechtsklicken Sie und wählen Sie Neu starten aus.
  2. Prüfen Sie, ob der Dienst ausgeführt wird:

    sc query observiq-otel-collector
    
  3. Prüfen Sie die Logs auf Fehler:

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

MicroStrategy-Syslog-Weiterleitung konfigurieren

MicroStrategy Intelligence Server schreibt Logdateien lokal in das Dateisystem. Konfigurieren Sie die Syslog-Weiterleitung mit dem System-Syslog-Daemon, um diese Logs an den Bindplane-Agent zu senden.

  1. Suchen Sie das MicroStrategy-Logverzeichnis:

    • Windows: C:\Program Files\Common Files\MicroStrategy\Log\
    • Linux: /var/log/Strategy/
  2. Konfigurieren Sie den Syslog-Daemon des Systems so, dass er MicroStrategy-Logdateien überwacht und an den Bindplane-Agent weiterleitet.

Unter Linux (rsyslog):

  1. Erstellen Sie eine neue rsyslog-Konfigurationsdatei:

    sudo nano /etc/rsyslog.d/microstrategy-forward.conf
    
  2. Fügen Sie den folgenden Inhalt hinzu, um MicroStrategy-Logs weiterzuleiten:

    module(load="imfile")
    input(type="imfile"
        File="/var/log/Strategy/DSSErrors.log"
        Tag="microstrategy"
        Severity="info"
        Facility="local0")
    local0.* @BINDPLANE_AGENT_IP:514
    
  3. Starten Sie den rsyslog-Dienst neu:

    sudo systemctl restart rsyslog
    

Unter Windows:

Verwenden Sie ein Dienstprogramm zur Protokollweiterleitung (z. B. NXLog oder Snare), um das MicroStrategy-Protokollverzeichnis zu überwachen und Ereignisse über Syslog an die IP-Adresse und den Port des Bindplane-Agents weiterzuleiten.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
Account_Creation_Timestamp, Account_Modification_Timestamp, Timestamp additional.fields Wird mit Labels zusammengeführt, die aus Feldern erstellt wurden, sofern nicht leer
Authentication_message metadata.description Wert direkt kopiert
Event_start metadata.event_timestamp Konvertiert mit dem Datumsfilter im Format „MMM dd HH:mm:ss“
metadata.event_type Wird auf „USER_UNCATEGORIZED“ gesetzt, wenn „has_principal“ und „has_target“ vorhanden sind, andernfalls auf „STATUS_UPDATE“, wenn „has_principal“ vorhanden ist, andernfalls auf „GENERIC_EVENT“
Sitzung network.session_id Wert direkt kopiert
Source_server principal.application Wert direkt kopiert
Hostname principal.asset.hostname Wert direkt kopiert
server_ip principal.asset.ip Wert direkt kopiert
Hostname principal.hostname Wert direkt kopiert
server_ip principal.ip Wert direkt kopiert
level principal.platform_patch_level Wert direkt kopiert
User_Group_Name principal.user.group_identifiers Wert direkt kopiert
Account_Name, User principal.user.user_display_name Wert aus „Account_Name“, falls nicht leer, andernfalls „User“
id, Account_Login, Account principal.user.userid Wert aus „id“, wenn nicht leer, andernfalls „Account_Login“, wenn nicht leer, andernfalls „Account“
Log_level security_result.detection_fields Zusammengeführt mit dem Label, das aus dem Feld erstellt wurde, wenn es nicht leer ist
Source_host src.asset.hostname Wert direkt kopiert
Source_host src.hostname Wert direkt kopiert
module target.application Wert direkt kopiert
client_ip target.asset.ip Wert direkt kopiert
client_ip target.ip Wert direkt kopiert
PID target.process.pid Wert direkt kopiert
Thread_ID, SID, method, Account_Status_DESC target.resource.attribute.labels Zusammengeführt mit Labels, die aus Feldern erstellt wurden, sofern nicht leer
OID target.resource.id Wert direkt kopiert
Object_Owner_Name target.resource.name Wert direkt kopiert
Nutzer target.user.user_display_name Wert direkt kopiert
UID target.user.userid Wert direkt kopiert
metadata.product_name Legen Sie diesen Wert auf „MICROSTRATEGY“ fest.
metadata.vendor_name Legen Sie diesen Wert auf „MICROSTRATEGY“ fest.
Hostname principal.hostname, principal.asset.hostname Aus Änderungsprotokoll zugeordnet
Source_host src.hostname, src.asset.hostname Aus Änderungsprotokoll zugeordnet
server_ip principal.ip, principal.asset.ip Aus Änderungsprotokoll zugeordnet
client_ip target.ip, target.asset.ip Aus Änderungsprotokoll zugeordnet
Account_Creation_Timestamp event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
Account_Modification_Timestamp event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet
Timestamp event.idm.read_only_udm.additional.fields Aus Änderungsprotokoll zugeordnet

Änderungsprotokoll

Änderungsprotokoll für diesen Parser ansehen

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