Cisco Stealthwatch-Logs erfassen

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie Cisco Secure Network Analytics-Logs (früher Stealthwatch) mit Bindplane in Google Security Operations erfassen. Der Parser verarbeitet zwei Formate von Cisco Stealthwatch-Logs: eines mit Client-/Server-IP- und Paketinformationen und eines mit Geräte-ID und Byte-Anzahlen. Felder werden extrahiert, in die entsprechenden Datentypen konvertiert, der UDM zugeordnet und Metadatenfelder wie Anbieter, Produkt und Ereignistyp werden basierend auf dem Loginhalt und -format festgelegt.

Hinweise

  • Prüfen Sie, ob Sie eine Google Security Operations-Instanz haben.
  • Achten Sie darauf, dass Sie Windows 2016 oder höher oder einen Linux-Host mit systemd verwenden.
  • Wenn Sie einen Proxy verwenden, müssen die Firewallports geöffnet sein.
  • Sie benötigen privilegierten Zugriff auf Cisco Stealthwatch.

Authentifizierungsdatei für die Aufnahme in Google SecOps abrufen

  1. Melden Sie sich in der Google SecOps-Konsole an.
  2. Rufen Sie SIEM-Einstellungen > Collection Agents auf.
  3. Laden Sie die Authentifizierungsdatei für die Aufnahme 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 > „Profil“ auf.
  3. Kopieren und speichern Sie die Kunden-ID aus dem Bereich Organisationsdetails.

BindPlane-Agent installieren

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

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

  1. Greifen Sie auf die Konfigurationsdatei zu:

    1. Suchen Sie die Datei config.yaml. Normalerweise befindet es sich unter Linux im Verzeichnis /etc/bindplane-agent/ oder unter Windows im Installationsverzeichnis.
    2. Ö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: '/path/to/ingestion-authentication-file.json'
            # Replace with your actual customer ID from Step 2
            customer_id: <customer_id>
            endpoint: malachiteingestion-pa.googleapis.com
            # Add optional ingestion labels for better organization
            ingestion_labels:
                log_type: CISCO_STEALTHWATCH
                raw_log_field: body
    
    service:
        pipelines:
            logs/source0__chronicle_w_labels-0:
                receivers:
                    - udplog
                exporters:
                    - chronicle/chronicle_w_labels
    
  3. Ersetzen Sie den Port und die IP-Adresse nach Bedarf in Ihrer Infrastruktur.

  4. Ersetzen Sie <customer_id> durch die tatsächliche Kunden-ID.

  5. Aktualisieren Sie /path/to/ingestion-authentication-file.json auf den Pfad, in dem die Authentifizierungsdatei im Abschnitt Google SecOps-Aufnahmeauthentifizierungsdatei abrufen gespeichert wurde.

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 bindplane-agent
    
  • Wenn Sie den Bindplane-Agent unter Windows neu starten möchten, können Sie entweder die Konsole Dienste verwenden oder den folgenden Befehl eingeben:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Syslog für Cisco Secure Network Analytics (früher Stealthwatch) konfigurieren

  1. Melden Sie sich in der Management Console-Web-UI an.
  2. Rufen Sie Konfiguration > Antwortverwaltung auf.
  3. Syslog-Format bearbeiten:

    • Name: Geben Sie einen Namen für das Syslog-Format ein.
    • Beschreibung: Geben Sie eine Beschreibung für das Format an.
    • Einrichtung: auf Local 0 festlegen
    • Schweregrad: Legen Sie Informational fest.
    • Fügen Sie im Feld Nachricht das folgende Format ein:
    Lancope|StealthWatch|time|{time}|target_hostname|{target_hostname}|alarm_severity_id|{alarm_severity_id}|alarm_type_id|{alarm_type_id}|alarm_type_description|{alarm_type_description}|port|{port}|target_ip|{target_ip}|target_mac_address|{target_mac_address}|target_label|{target_label}|alarm_type_name|{alarm_type_name}|source_hostname|{source_hostname}|source_ip|{source_ip}|source_mac_address|{source_mac_address}|source_username|{source_username}|device_ip|{device_ip}|device_name|{device_name}|details|{details}|protocol|{protocol}|alarm_id|{alarm_id}|alarm_category_name|{alarm_category_name}|start_active_time|{start_active_time}| end_active_time|{end_active_time}
    
  4. Klicken Sie auf OK.

  5. Klicken Sie auf Response Management > Actions > Add Syslog Message (Reaktionsmanagement > Aktionen > Syslog-Nachricht hinzufügen).

  6. Syslog-Forwarder konfigurieren:

    • Name: Geben Sie den Namen für den Google SecOps Bindplane-Forwarder ein.
    • Beschreibung: Geben Sie die Beschreibung für den Google SecOps Bindplane-Forwarder ein.
    • IP-Adresse: Geben Sie die IP-Adresse des Bindplane-Agents ein.
    • Port: Geben Sie die Portnummer des Bindplane-Agents ein, z. B. 514.
    • Format: Wählen Sie das in Schritt 3 erstellte Format aus.
  7. Klicken Sie auf OK.

Regelnamen für Cisco Secure Network Analytics (früher Stealthwatch) konfigurieren

  1. Rufen Sie Konfiguration > Antwortverwaltung auf.
  2. Wählen Sie Regeln > Hinzufügen > SMC-Systemwarnungen aus.
  3. Klicken Sie auf OK.
  4. Wählen Sie im Dialogfeld Regeltypen eine Regel aus.
  5. Klicken Sie auf OK.
  6. Gehen Sie im Dialogfeld Regel so vor:
    • Name: Geben Sie einen Namen für die Regel ein.
    • Diese Regel wird ausgelöst, wenn: Wählen Sie in den entsprechenden Listen Beliebig, Schweregrad und Informationen aus.
  7. Klicken Sie auf OK.
  8. Wählen Sie Aktionen > Hinzufügen aus.
  9. Wählen Sie die Aktion aus, die Sie zuvor erstellt haben.
  10. Klicken Sie auf OK und dann noch einmal auf OK.
  11. Wiederholen Sie die vorherigen Schritte, um die folgenden drei Optionen im Bereich Regel umzubenennen:
    • Unterstützter Mechanismus zur Protokollerfassung – Syslog
    • Bevorzugter Mechanismus zur Protokollsammlung – Syslog
    • Logisches Diagramm des Ereignisablaufs – SMC-Remote-Syslog-Server

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
Alarm_ID additional.fields[?key=='Alarm_ID'].value.string_value Der Wert von Alarm_ID aus dem Rohlog wird in einer verschachtelten additional.fields-Struktur unter dem Schlüssel Alarm_ID platziert.
ClientBytes network.sent_bytes ClientBytes aus dem Rohlog wird in eine vorzeichenlose Ganzzahl konvertiert und zugeordnet.
ClientIP principal.ip ClientIP aus dem Rohlog wird zugeordnet.
ClientPort principal.port ClientPort aus dem Rohlog wird in eine Ganzzahl konvertiert und zugeordnet.
CPayload Nicht zugeordnet Dieses Feld wird in der endgültigen UDM nicht verwendet.
DestIPv4Address target.ip DestIPv4Address aus dem Rohlog wird zugeordnet.
DestPort target.port DestPort aus dem Rohlog wird in eine Ganzzahl konvertiert und zugeordnet.
details security_result.summary Der Wert von details aus dem Rohlog wird zugeordnet, wobei doppelte Anführungszeichen entfernt werden.
FC intermediary.ip FC aus dem Rohlog wird zugeordnet.
host.country principal.location.country_or_region host.country aus dem Rohlog wird zugeordnet.
host.hostGroupNames about.group.group_display_name Jedem Element im host.hostGroupNames-Array aus dem Rohlog wird host: vorangestellt und es wird als separates about-Objekt zugeordnet.
host.ipAddress principal.ip host.ipAddress aus dem Rohlog wird zugeordnet.
hostBytes network.sent_bytes hostBytes aus dem Rohlog wird in eine vorzeichenlose Ganzzahl konvertiert und zugeordnet.
InPackets additional.fields[?key=='InPackets'].value.string_value Der Wert von InPackets aus dem Rohlog wird in einer verschachtelten additional.fields-Struktur unter dem Schlüssel InPackets platziert.
inputSNMPIface additional.fields[?key=='inputSNMPIface'].value.string_value Der Wert von inputSNMPIface aus dem Rohlog wird in einer verschachtelten additional.fields-Struktur unter dem Schlüssel inputSNMPIface platziert.
LastTime Nicht zugeordnet Dieses Feld wird in einigen Fällen nach dem Zeitstempel des Ereignisses geparst, aber nicht direkt dem UDM zugeordnet.
MessageSourceAddress principal.ip MessageSourceAddress aus dem Rohlog wird zugeordnet.
method network.http.method method aus dem Rohlog wird zugeordnet.
outputSNMPIface additional.fields[?key=='outputSNMPIface'].value.string_value Der Wert von outputSNMPIface aus dem Rohlog wird in einer verschachtelten additional.fields-Struktur unter dem Schlüssel outputSNMPIface platziert.
PAAppID Nicht zugeordnet Dieses Feld wird in der endgültigen UDM nicht verwendet.
peer.country target.location.country_or_region peer.country aus dem Rohlog wird zugeordnet.
peer.hostGroupNames about.group.group_display_name Jedem Element im peer.hostGroupNames-Array aus dem Rohlog wird peer: vorangestellt und es wird als separates about-Objekt zugeordnet.
peer.ipAddress target.ip peer.ipAddress aus dem Rohlog wird zugeordnet.
peerBytes network.received_bytes peerBytes aus dem Rohlog wird in eine vorzeichenlose Ganzzahl konvertiert und zugeordnet.
peerPackets Nicht zugeordnet Dieses Feld wird in der endgültigen UDM nicht verwendet.
Protocol Nicht zugeordnet Dieses Feld wird geparst, um den network.ip_protocol zu ermitteln, aber nicht direkt zugeordnet.
ProtocolIdentifier Nicht zugeordnet Dieses Feld wird verwendet, um network.ip_protocol abzuleiten, wird aber nicht direkt zugeordnet.
reportName metadata.product_event_type reportName aus dem Rohlog wird zugeordnet.
ServerBytes network.received_bytes ServerBytes aus dem Rohlog wird in eine vorzeichenlose Ganzzahl konvertiert und zugeordnet.
ServerIP target.ip ServerIP aus dem Rohlog wird zugeordnet.
ServerPort target.port ServerPort aus dem Rohlog wird in eine Ganzzahl konvertiert und zugeordnet.
Service Nicht zugeordnet Dieses Feld wird in der endgültigen UDM nicht verwendet.
sid target.user.windows_sid sid aus dem Rohlog wird zugeordnet.
SourceModuleName target.resource.name SourceModuleName aus dem Rohlog wird zugeordnet.
SourceModuleType observer.application SourceModuleType aus dem Rohlog wird zugeordnet.
SourcePort principal.port SourcePort aus dem Rohlog wird in eine Ganzzahl konvertiert und zugeordnet.
sourceIPv4Address principal.ip sourceIPv4Address aus dem Rohlog wird zugeordnet.
SPayload Nicht zugeordnet Dieses Feld wird in der endgültigen UDM nicht verwendet.
src_ip principal.ip src_ip aus dem Rohlog wird zugeordnet.
StartTime Nicht zugeordnet Dieses Feld wird in einigen Fällen nach dem Zeitstempel des Ereignisses geparst, aber nicht direkt dem UDM zugeordnet.
time Nicht zugeordnet Dieses Feld wird in einigen Fällen nach dem Zeitstempel des Ereignisses geparst, aber nicht direkt dem UDM zugeordnet.
timestamp Nicht zugeordnet Dieses Feld wird nach dem Ereigniszeitstempel durchsucht, aber nicht direkt dem UDM zugeordnet.
UserName principal.user.user_display_name UserName aus dem Rohlog wird zugeordnet.
Version metadata.product_version Version aus dem Rohlog wird in einen String konvertiert und zugeordnet.
metadata.event_timestamp Der Event-Zeitstempel wird je nach Logformat aus verschiedenen Feldern (LastTime, time, timestamp, StartTime) abgeleitet oder aus dem Feld create_time, wenn kein anderer Zeitstempel verfügbar ist.
metadata.log_type Immer auf CISCO_STEALTHWATCH gesetzt.
metadata.vendor_name Immer auf Cisco gesetzt.
metadata.event_type Wird durch die Parserlogik auf Grundlage des Loginhalts bestimmt. Kann NETWORK_CONNECTION, USER_STATS, USER_UNCATEGORIZED, FILE_OPEN, FILE_DELETION oder FILE_UNCATEGORIZED sein.
network.ip_protocol Wird durch die Parserlogik basierend auf den Feldern Protocol oder ProtocolIdentifier bestimmt. Kann TCP, UDP oder ICMP sein.
action security_result.action_details Der Wert von action aus dem Rohlog wird zugeordnet.
action security_result.action Abgeleitet aus dem Feld action. Wenn action SUCCESS ist, wird dieses Feld auf ALLOW gesetzt. Andernfalls wird es auf BLOCK gesetzt.
category security_result.category_details Der Wert von category aus dem Rohlog wird zugeordnet.
description security_result.description Wenn sowohl description als auch file_type im Rohlog vorhanden sind, werden sie verkettet und zugeordnet.
desc metadata.description Der Wert von desc aus dem Rohlog wird zugeordnet, wobei doppelte Anführungszeichen entfernt werden.
failuer_reason security_result.summary Wenn sowohl failuer_reason als auch file_type im Rohlog vorhanden sind, werden sie verkettet und zugeordnet.
file_path target.file.full_path file_path aus dem Rohlog wird zugeordnet.
file_type target.file.mime_type file_type aus dem Rohlog wird zugeordnet.
hostname principal.hostname hostname aus dem Rohlog wird zugeordnet.
ip principal.ip ip aus dem Rohlog wird zugeordnet.
ipf intermediary.ip ipf aus dem Rohlog wird zugeordnet.
ipt target.ip ipt aus dem Rohlog wird zugeordnet.
process_id target.process.pid process_id aus dem Rohlog wird zugeordnet.
protocol network.application_protocol protocol aus dem Rohlog wird zugeordnet.
security_res.severity security_result.severity Wenn severity Minor ist, wird dieses Feld auf INFORMATIONAL gesetzt. Wenn severity Major ist, wird es auf ERROR gesetzt.
session_id network.session_id session_id aus dem Rohlog wird zugeordnet.
severity Nicht zugeordnet Dieses Feld wird verwendet, um security_result.severity abzuleiten, wird aber nicht direkt zugeordnet.
Source_HG principal.location.country_or_region Source_HG aus dem Rohlog wird zugeordnet.
Source_HostSnapshot principal.url Source_HostSnapshot aus dem Rohlog wird zugeordnet.
Target_HostSnapshot target.url Target_HostSnapshot aus dem Rohlog wird zugeordnet.
user_name principal.user.userid user_name aus dem Rohlog wird zugeordnet.

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