CyberArk EPM-Protokolle erfassen

Unterstützt in:

Dieser Parsercode wandelt CyberArk EPM-Protokolldaten in ein einheitliches Datenmodell (Unified Data Model, UDM) um. Dabei wird jedes Ereignis im Protokoll durchgegangen, relevante Felder den entsprechenden UDM-Feldern zugeordnet, bestimmte Datenstrukturen wie „exposedUsers“ verarbeitet und die Ausgabe mit statischen Anbieter- und Produktinformationen angereichert.

Hinweise

  • Sie benötigen eine Google Security Operations-Instanz.
  • Sie müssen Windows 2016 oder höher oder einen Linux-Host mit systemd verwenden.
  • Wenn die Ausführung hinter einem Proxy erfolgt, müssen die Firewallports geöffnet sein.
  • Sie benötigen Berechtigungen für die EPM-Server-Verwaltungskonsole.

Authentifizierungsdatei für die Aufnahme in Google SecOps abrufen

  1. Melden Sie sich in der Google SecOps Console an.
  2. Gehen Sie zu SIEM-Einstellungen > Erfassungsagenten.
  3. Lade die Datei für die Datenaufnahmeauthentifizierung herunter.

Google SecOps-Kundennummer abrufen

  1. Melden Sie sich in der Google SecOps Console an.
  2. Gehen Sie zu SIEM-Einstellungen > Profil.
  3. Kopieren und speichern Sie die Kundennummer aus dem Bereich Organisationsdetails.

BindPlane-Agent installieren

  1. Führen Sie für die Windows-Installation das folgende Script 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 Script 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 diesem Installationsleitfaden.

Bindplane-Agent so konfigurieren, dass er Syslog-Dateien aufnimmt und an Google SecOps sendet

  1. Rufen Sie den Computer auf, 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: Cyberark_EPM
            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 anzuwenden:

    sudo systemctl restart bindplane
    

Weiterleitung von Ereignissen an Drittanbieter in EPM konfigurieren

  1. Melden Sie sich in der EPM-Server-Verwaltungskonsole an.
  2. Gehen Sie zu Erweitert > Serverkonfiguration.
  3. Suchen Sie im Bereich Event-Listener nach der Einstellung Drittanbieter-Listener.
  4. Legen Sie den Wert auf An fest, um Listener von Drittanbietern zu aktivieren.
  5. Konfigurieren Sie den Syslog-Listener mit den folgenden Details:
    • Syslog-Server-IP: Geben Sie die IP-Adresse des syslog-Servers (Bindebene) ein.
    • Syslog-Port: Geben Sie die Portnummer des syslog-Servers (Bindebene) an.
    • Protokoll: Wählen Sie das auf dem syslog-Server konfigurierte Protokoll aus (TCP oder UDP).
    • Format: Wählen Sie Syslog als Format für die Protokolle aus.
  6. Klicken Sie auf Speichern.

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
agentId principal.asset.asset_id „agentId:“ wird mit dem Wert des Felds „agentId“ zusammengeführt.
computerName principal.hostname Das Feld „computerName“ wird direkt zugeordnet.
displayName metadata.description Das Feld „displayName“ wird direkt zugeordnet.
eventType metadata.product_event_type Das Feld „eventType“ wird direkt zugeordnet.
exposedUsers.[].accountName target.user.attribute.labels Erstellt ein Label mit dem Schlüssel „accountName_[index]“ und dem Wert aus „exposedUsers.[index].accountName“.
exposedUsers.[].domain target.user.attribute.labels Erstellt ein Label mit dem Schlüssel „domain_[index]“ und dem Wert aus „exposedUsers.[index].domain“.
exposedUsers.[].username target.user.attribute.labels Erstellt ein Label mit dem Schlüssel „username_[index]“ und dem Wert aus „exposedUsers.[index].username“.
filePath target.file.full_path Das Feld „filePath“ wird direkt zugeordnet.
Hash target.file.sha1 Das Hash-Feld wird direkt zugeordnet.
operatingSystemType principal.platform „Windows“ wird in „WINDOWS“ umgewandelt, wenn das Feld „operatingSystemType“ den Wert „Windows“ hat.
policyName security_result.rule_name Das Feld „policyName“ wird direkt zugeordnet.
processCommandLine target.process.command_line Das Feld „processCommandLine“ wird direkt zugeordnet.
Publisher additional.fields Erstellt ein Feld mit dem Schlüssel „Publisher“ und dem Stringwert aus dem Feld „Publisher“.
sourceProcessCommandLine target.process.parent_process.command_line Das Feld „sourceProcessCommandLine“ wird direkt zugeordnet.
sourceProcessHash target.process.parent_process.file.sha1 Das Feld „sourceProcessHash“ wird direkt zugeordnet.
sourceProcessSigner additional.fields Erstellt ein Feld mit dem Schlüssel „sourceProcessSigner“ und dem Stringwert aus dem Feld „sourceProcessSigner“.
threatProtectionAction security_result.action_details Das Feld „threatProtectionAction“ wird direkt zugeordnet.
metadata.event_timestamp Der Ereigniszeitstempel wird auf „create_time“ des Logeintrags festgelegt.
metadata.event_type Hartcodiert auf „STATUS_UPDATE“.
metadata.log_type Hartcodiert auf „CYBERARK_EPM“.
metadata.product_name Hartcodiert auf „EPM“.
metadata.vendor_name „CYBERARK“ ist hartcodiert.
security_result.alert_state „ALERTING“ ist hartcodiert.
userName principal.user.userid Das Feld „userName“ wird direkt zugeordnet.

Änderungen

2023-08-22

  • Neu erstellter Parser

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