macOS-Systemprotokolle erfassen

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie macOS-Systemlogs mit Bindplane in Google Security Operations aufnehmen. macOS verwendet das Apple Unified Logging-System, um Ereignisse auf Systemebene zu erfassen, darunter Authentifizierung, Prozessausführung, Kernelaktivität und Anwendungsverhalten. Diese Logs können über Syslog an einen Remote-Collector weitergeleitet werden, um zentrales Sicherheitsmonitoring und ‑analysen zu ermöglichen.

Hinweis

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

  • Eine Google SecOps-Instanz.
  • Ein Windows 2016- oder höher- oder Linux-Host mit systemd.
  • Wenn Sie den Agent hinter einem Proxy ausführen, achten Sie darauf, dass die Firewallports gemäß den Anforderungen des Bindplane-Agents geöffnet sind.
  • Administratorzugriff auf die macOS-Endpunkte, über die Logs weitergeleitet werden.
  • macOS 10.12 (Sierra) oder höher mit Unterstützung für Unified Logging.

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 Agent auf.
  3. Laden Sie die Authentifizierungsdatei für die Datenaufnahme 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
    

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
    

Zusätzliche Installationsressourcen

Weitere Installationsoptionen finden Sie in diesem Installationsleitfaden.

BindPlane-Agent zum Erfassen von Syslog-Daten und Senden an Google SecOps konfigurieren

  1. Konfigurationsdatei aufrufen:

    • Suchen Sie die Datei config.yaml. Normalerweise befindet sie sich unter Linux im Verzeichnis /observiq-otel-collector/ oder unter Windows im Installationsverzeichnis.
    • Öffnen Sie die Datei mit einem Texteditor (z. B. nano, vi oder Notepad).
  2. Bearbeiten Sie die Datei config.yamlso:

    receivers:
      udplog:
        # Replace the port and IP address as required
        listen_address: "0.0.0.0:514"
    
    exporters:
      chronicle/chronicle_w_labels:
        compression: gzip
        # Adjust the path to the credentials file you downloaded in Step 1
        creds_file_path: '/path/to/ingestion-authentication-file.json'
        # Replace with your actual customer ID from Step 2
        customer_id: <PLACEHOLDER_CUSTOMER_ID>
        endpoint: malachiteingestion-pa.googleapis.com
        # Add optional ingestion labels for better organization
        log_type: 'MACOS'
        raw_log_field: body
        ingestion_labels:
    
    service:
      pipelines:
        logs/source0__chronicle_w_labels-0:
          receivers:
            - udplog
          exporters:
            - chronicle/chronicle_w_labels
    
  • Ersetzen Sie den Port und die IP-Adresse nach Bedarf in Ihrer Infrastruktur.
  • Ersetzen Sie <PLACEHOLDER_CUSTOMER_ID> durch die tatsächliche Kundennummer.
  • Aktualisieren Sie /path/to/ingestion-authentication-file.json auf den Dateipfad, in dem die Authentifizierungsdatei im Abschnitt Google SecOps-Aufnahmeauthentifizierungsdatei abrufen gespeichert wurde.

Bindplane-Agent neu starten, 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-Agent 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
    
    • Services Console:
      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.
  2. Prüfen Sie, ob der Dienst ausgeführt wird:

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

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

macOS-Syslog-Weiterleitung konfigurieren

macOS verwendet das Unified Logging-System. Wenn Sie Logs über Syslog an den BindPlane-Agent weiterleiten möchten, konfigurieren Sie den integrierten syslogd-Dienst auf jedem macOS-Endpunkt.

Option 1: Syslog-Weiterleitung mit syslog.conf konfigurieren

  1. Öffnen Sie Terminal auf dem macOS-Endpunkt.
  2. Bearbeiten Sie die Syslog-Konfigurationsdatei:

    sudo nano /etc/syslog.conf
    
  3. Fügen Sie am Ende der Datei die folgende Zeile hinzu, um alle Logs über UDP an den Bindplane-Agent weiterzuleiten:

    *.*     @<BINDPLANE_IP_ADDRESS>:514
    
    • Ersetzen Sie <BINDPLANE_IP_ADDRESS> durch die IP-Adresse des Bindplane-Agent-Hosts (z. B. 192.168.1.100).
  4. Speichern Sie die Datei und schließen Sie sie.

  5. Starten Sie den Syslog-Daemon neu:

    sudo launchctl unload /System/Library/LaunchDaemons/com.apple.syslogd.plist
    sudo launchctl load /System/Library/LaunchDaemons/com.apple.syslogd.plist
    

Option 2: Syslog-Weiterleitung mit „asl.conf“ konfigurieren

  1. Öffnen Sie Terminal auf dem macOS-Endpunkt.
  2. Bearbeiten Sie die ASL-Konfigurationsdatei:

    sudo nano /etc/asl.conf
    
  3. Fügen Sie die folgende Zeile hinzu, um Logs an den Remote-Syslog-Server weiterzuleiten:

    ? [= Sender kernel] forward <BINDPLANE_IP_ADDRESS>:514
    ? [<= Level notice] forward <BINDPLANE_IP_ADDRESS>:514
    
    • Ersetzen Sie <BINDPLANE_IP_ADDRESS> durch die IP-Adresse des Bindplane-Agent-Hosts.
  4. Speichern Sie die Datei und schließen Sie sie.

  5. Starten Sie den Syslog-Daemon neu:

    sudo launchctl unload /System/Library/LaunchDaemons/com.apple.syslogd.plist
    sudo launchctl load /System/Library/LaunchDaemons/com.apple.syslogd.plist
    

Logweiterleitung überprüfen

  1. Generieren Sie auf dem macOS-Endpunkt einen Test-Logeintrag:

    logger -p user.notice "Test syslog message for Bindplane"
    
  2. Prüfen Sie auf dem BindPlane-Agent-Host die Agentenlogs auf eingehende Nachrichten:

    sudo journalctl -u observiq-otel-collector -f
    

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
activityIdentifier_label additional.fields Zusammengeführt
backtrace_label additional.fields Zusammengeführt
bootUUID_label additional.fields Zusammengeführt
category_label additional.fields Zusammengeführt
chronicle_log_type_label additional.fields Zusammengeführt
formatString_label additional.fields Zusammengeführt
log_type_label additional.fields Zusammengeführt
machTimestamp_label additional.fields Zusammengeführt
messageType_label additional.fields Zusammengeführt
parentActivityIdentifier_label additional.fields Zusammengeführt
processImageUUID_label additional.fields Zusammengeführt
senderImageUUID_label additional.fields Zusammengeführt
senderProgramCounter_label additional.fields Zusammengeführt
subprocess_label additional.fields Zusammengeführt
subsystem_label additional.fields Zusammengeführt
threadID_label additional.fields Zusammengeführt
traceID_label additional.fields Zusammengeführt
intermediary_host intermediary.hostname Direkt zugeordnet
attributes.message metadata.description Direkt zugeordnet
description metadata.description Direkt zugeordnet
eventMessage metadata.description Direkt zugeordnet
timestamp metadata.event_timestamp Geparst als ISO8601
has_principal metadata.event_type Zugeordnet: true → STATUS_UPDATE
has_user metadata.event_type Zugeordnet: true → USER_UNCATEGORIZED
attributes.process metadata.product_event_type Direkt zugeordnet
eventType metadata.product_event_type Direkt zugeordnet
attributes.host principal.asset.hostname Direkt zugeordnet
hostname principal.asset.hostname Direkt zugeordnet
source principal.asset.hostname Direkt zugeordnet
senderImagePath principal.file.full_path Direkt zugeordnet
attributes.host principal.hostname Direkt zugeordnet
hostname principal.hostname Direkt zugeordnet
source principal.hostname Direkt zugeordnet
command_line principal.process.command_line Direkt zugeordnet
processImagePath principal.process.file.full_path Direkt zugeordnet
attributes.pid principal.process.pid Direkt zugeordnet
processID principal.process.pid Direkt zugeordnet
process_id principal.process.pid Direkt zugeordnet
userID principal.user.userid Direkt zugeordnet
metadata.event_type Konstante: USER_UNCATEGORIZED
metadata.product_name Konstante: MacOS
metadata.vendor_name Konstante: Apple
principal.platform Konstante: MAC

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