Alcatel-Switch-Protokolle erfassen

Unterstützt in:

In diesem Dokument wird beschrieben, wie Sie Alcatel-Switch-Logs mithilfe eines Bindplane-Agents in Google Security Operations aufnehmen. Der Parser extrahiert Felder mithilfe einer Reihe von grok-Mustern, die auf verschiedenen Protokollformaten basieren. Anschließend werden die extrahierten Felder den entsprechenden Feldern im einheitlichen Datenmodell (Unified Data Model, UDM) zugeordnet und die Daten mit Metadaten wie Anbieter und Ereignistyp angereichert.

Hinweise

  • Sie benötigen eine Google SecOps-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 Anmeldedaten mit erhöhten Berechtigungen für einen Alcatel-Switch.

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 zur Authentifizierung der 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 Console an.
  2. Gehen Sie zu SIEM-Einstellungen > Profil.
  3. Kopieren und speichern Sie die Kundennummer aus dem Bereich Organisationsdetails.

Bindplane-Agent installieren

Windows-Installation

  1. Öffnen Sie die Eingabeaufforderung oder die 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
    

Weitere Installationsressourcen

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

  1. Rufen Sie die Konfigurationsdatei auf:

    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: ALCATEL_SWITCH
                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 Kundennummer.

  5. Aktualisieren Sie /path/to/ingestion-authentication-file.json im Abschnitt Authentifizierungsdatei für die Datenaufnahme von Google SecOps abrufen auf den Pfad, unter dem die Authentifizierungsdatei gespeichert wurde.

Starten Sie den Bindplane-Agent neu, um die Änderungen anzuwenden

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

    sudo systemctl restart bindplane-agent
    
  • Sie können den Bindplane-Agenten unter Windows entweder über die Dienste-Konsole oder mit dem folgenden Befehl neu starten:

    net stop BindPlaneAgent && net start BindPlaneAgent
    

Syslog-Export für Alcatel-Switch konfigurieren

  1. Stellen Sie über SSH oder ein Konsolenkabel eine Verbindung zum Switch her.
  2. Melden Sie sich mit den Anmeldedaten eines Administrators an.
  3. Rufen Sie den Modus globale Konfiguration auf:

    enable
    configure terminal
    
  4. Legen Sie die IP-Adresse des BindPlane-Servers (Syslog) fest:

    swlog output socket <syslog-server-ip>
    
    • Ersetzen Sie <syslog-server-ip> durch die IP-Adresse des Bindplane-Agents.
  5. Aktivieren Sie das Logging auf dem syslog-Server:

    swlog remote enable
    
  6. Konfigurieren Sie die Logging-Ebene:

    swlog console level info
    
  7. Aktivieren Sie das Befehls-Logging:

    command-log enable
    
  8. Speichern Sie die Änderungen an der Startkonfiguration:

    write memory
    

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
1.1.1.1 principal.ip
principal.asset.ip
Aus der Protokollnachricht extrahiert.
1.1.1.2 target.ip
target.asset.ip
Aus der Protokollnachricht extrahiert.
1.1.2.7 target.ip
target.asset.ip
Aus der Protokollnachricht extrahiert.
1035 target.port Aus der Protokollnachricht extrahiert.
2266 additional.fields.value.string_value Aus der Protokollnachricht extrahiert und als vlan zugeordnet.
3036 principal.port Aus der Protokollnachricht extrahiert.
59300 target.port Aus der Protokollnachricht extrahiert.
60588 target.port Aus der Protokollnachricht extrahiert.
997 principal.resource.attribute.labels.value Aus der Protokollnachricht extrahiert und als limit zugeordnet.
A6450-L2-K4B-01 principal.application Aus der Protokollnachricht extrahiert.
A6450-L2-X1B-02-01 principal.application Aus der Protokollnachricht extrahiert.
A6450-L2-X2A-01-01 principal.application Aus der Protokollnachricht extrahiert.
A6450-L2-X4B-02-01 principal.application Aus der Protokollnachricht extrahiert.
A6900-L3-LTX0A principal.application Aus der Protokollnachricht extrahiert.
Accepted keyboard-interactive/pam security_result.summary Teil des extrahierten Felds sec_summary.
b8:53:ac:6e:c9:bc principal.mac Aus der Protokollnachricht extrahiert.
BRIDGE(10) additional.fields.value.string_value Aus der Protokollnachricht extrahiert und als id_protocol zugeordnet.
CLI log, security_result.summary Teil des extrahierten Felds sec_summary.
cmd: show configuration snapshot all, security_result.detection_fields.value Aus der Protokollnachricht extrahiert und als cmd zugeordnet.
Connection reset by 1.1.2.7 port 60505 security_result.summary Aus der Protokollnachricht extrahiert.
Dec 7 14:28:40 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Aus dem Feld ts geparst.
Dec 8 04:21:22 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Aus dem Feld ts geparst.
Dec 9 20:08:29 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Aus dem Feld ts geparst.
Dec 9 20:51:34 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Aus dem Feld ts geparst.
Dec 11 10:18:30 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Aus dem Feld ts geparst.
Dec 17 02:14:22 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Aus dem Feld ts geparst.
Dec 19 10:27:33 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Aus dem Feld ts geparst.
Did not receive identification string from 1.1.2.7 port 60588 security_result.summary Aus der Protokollnachricht extrahiert.
esmSetRateLimit: Txing additional.fields.value.string_value Aus der Protokollnachricht extrahiert und als esm_set_rate_limit zugeordnet.
Feb 15 16:29:29 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Aus dem Feld ts geparst.
Feb 16 11:08:45 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Aus dem Feld ts geparst.
Feb 16 11:08:49 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Aus dem Feld ts geparst.
flashManager FlashMgr Main info(5) flashMgrValidateImage_exec: valid security_result.summary Aus der Protokollnachricht extrahiert.
for ncmadmin from 1.1.1.2 port 59300 ssh2 security_result.summary Teil des extrahierten Felds sec_summary.
from port 3036 to port 1035 security_result.summary Teil des extrahierten Felds sec_summary.
IVDELCSW03 principal.hostname
principal.asset.hostname
Wird aus der Protokollnachricht extrahiert, wenn principal_ip keine IP-Adresse ist.
IP-HELPER(22) additional.fields.value.string_value Aus der Protokollnachricht extrahiert und als id_protocol zugeordnet.
Jan 16 02:14:13 metadata.event_timestamp.seconds
metadata.event_timestamp.nanos
Aus dem Feld ts geparst.
LLDP(42) additional.fields.value.string_value Aus der Protokollnachricht extrahiert und als id_protocol zugeordnet.
limit=997, principal.resource.attribute.labels.value Aus der Protokollnachricht extrahiert und als limit zugeordnet.
limitType=1 principal.resource.attribute.labels.value Aus der Protokollnachricht extrahiert und als limitType zugeordnet.
lldpProcessLocationIdTLV: Error, LLDP-MED Civic Address LCI len 39 invalid, tlvL security_result.summary Aus der Protokollnachricht extrahiert.
Mac Movement for MacAddr: a0:29:19:c0:55:18 security_result.summary Aus der Protokollnachricht extrahiert.
MacAddr: a0:29:19:c0:55:18 principal.mac Aus der Protokollnachricht extrahiert.
ncmadmin principal.user.userid Aus der Protokollnachricht extrahiert.
OS6360 principal.hostname
principal.asset.hostname
Wird aus der Protokollnachricht extrahiert, wenn principal_ip keine IP-Adresse ist.
result: SUCCESS security_result.detection_fields.value Aus der Protokollnachricht extrahiert und als result zugeordnet.
SES CMD info(5) security_result.summary Teil des extrahierten Felds sec_summary.
STACK-MANAGER principal.application Aus der Protokollnachricht extrahiert.
Stack Port A MAC Frames TX/RX Enabled security_result.summary Aus der Protokollnachricht extrahiert.
STP(11) additional.fields.value.string_value Aus der Protokollnachricht extrahiert und als id_protocol zugeordnet.
SWCONSOLE-L2-K0A-01 target.hostname
target.asset.hostname
Aus der Protokollnachricht extrahiert.
trafficType=2, principal.resource.attribute.labels.value Aus der Protokollnachricht extrahiert und als trafficType zugeordnet.
user: ncmadmin security_result.summary Teil des extrahierten Felds sec_summary.
zslot=0, principal.resource.attribute.labels.value Aus der Protokollnachricht extrahiert und als zslot zugeordnet.
- additional.fields.key Hartcodierter Wert: id_protocol
- additional.fields.key Hartcodierter Wert: esm_set_rate_limit
- additional.fields.key Hartcodierter Wert: vlan
- metadata.event_type Legen Sie GENERIC_EVENT fest, wenn kein anderer Typ übereinstimmt.
- metadata.product_name Hartcodierter Wert: Alcatel Switch
- metadata.vendor_name Hartcodierter Wert: ALCATEL SWITCH
- network.application_protocol Legen Sie SSH fest, wenn id_protocol mit ssh übereinstimmt (Groß-/Kleinschreibung wird nicht berücksichtigt).
- principal.resource.attribute.labels.key Hartcodierter Wert: limit
- principal.resource.attribute.labels.key Hartcodierter Wert: trafficType
- principal.resource.attribute.labels.key Hartcodierter Wert: limitType
- principal.resource.attribute.labels.key Hartcodierter Wert: zslot
- security_result.detection_fields.key Hartcodierter Wert: cmd
- security_result.detection_fields.key Hartcodierter Wert: result
- security_result.severity Legen Sie INFORMATIONAL fest, wenn prod_severity mit info übereinstimmt (Groß-/Kleinschreibung wird nicht berücksichtigt).

Änderungen

2024-03-11

Optimierung:

  • Neue Grok-Muster zum Parsen des neuen Formats von syslog-Protokollen hinzugefügt.
  • severity wurde security_result.severity und security_result.detection_fields zugeordnet.
  • Wenn id_protocol fast gleich ssh ist, setzen Sie network.application_protocol auf SSH.
  • Neue Grok-Muster zum Parsen des neuen sec_summary-Formats hinzugefügt

2024-01-16

  • Neu erstellter Parser.

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