CEF-Logs für ArcSight erfassen
Parserversion:34.0
In diesem Dokument wird beschrieben, wie Sie ArcSight CEF-Logs mit dem Bindplane-Agent in Google Security Operations aufnehmen.
ArcSight (jetzt Teil von OpenText) verwendet das Common Event Format (CEF) zur Normalisierung von Sicherheitsereignissen aus mehreren Quellen. Der ArcSight SmartConnector erfasst Ereignisse und leitet sie im CEF-Format über Syslog an nachgelagerte Verbraucher weiter, einschließlich SIEM-Plattformen.
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 ArcSight SmartConnector-Host
- Wenn Sie den Agent hinter einem Proxy ausführen, müssen die Firewallports gemäß den Anforderungen des Bindplane-Agents geöffnet sein.
- Zugriff auf das OpenText-Supportportal zum Herunterladen von SmartConnector
- Administratorzugriff auf den SmartConnector-Server
Authentifizierungsdatei für die Aufnahme in Google SecOps abrufen
- Melden Sie sich in der Google SecOps-Konsole an.
- Rufen Sie die SIEM-Einstellungen > Collection Agents auf.
- Laden Sie die Authentifizierungsdatei für die Aufnahme herunter.
Speichern Sie die Datei sicher auf dem System, auf dem der Bindplane-Agent installiert wird.
Google SecOps-Kundennummer abrufen
- Melden Sie sich in der Google SecOps-Konsole an.
- Rufen Sie die SIEM-Einstellungen > Profile auf.
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
- Öffnen Sie die Eingabeaufforderung oder PowerShell als Administrator.
Führen Sie dazu diesen Befehl aus:
msiexec /i "https://github.com/observIQ/bindplane-agent/releases/latest/download/observiq-otel-collector.msi" /quietWarten Sie, bis die Installation abgeschlossen ist.
Überprüfen Sie die Installation mit folgendem Befehl:
sc query observiq-otel-collectorDer Dienst sollte als RUNNING (Wird ausgeführt) angezeigt werden.
Linux-Installation
- Öffnen Sie ein Terminal mit Root- oder Sudo-Berechtigungen.
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.shWarten Sie, bis die Installation abgeschlossen ist.
Überprüfen Sie die Installation mit folgendem Befehl:
sudo systemctl status observiq-otel-collectorDer Dienst sollte als aktiv (wird ausgeführt) angezeigt werden.
Zusätzliche Installationsressourcen
Weitere Installationsoptionen und Informationen zur Fehlerbehebung finden Sie in der Installationsanleitung für den Bindplane-Agent.
BindPlane-Agent zum Erfassen von Syslog-Daten und Senden an Google SecOps konfigurieren
Konfigurationsdatei suchen
Linux:
sudo nano /etc/bindplane-agent/config.yamlWindows:
notepad "C:\Program Files\observIQ OpenTelemetry Collector\config.yaml"
Konfigurationsdatei bearbeiten
Ersetzen Sie den gesamten Inhalt von
config.yamldurch die folgende Konfiguration:receivers: udplog: listen_address: "0.0.0.0:514" exporters: chronicle/arcsight_cef: compression: gzip creds_file_path: '/etc/bindplane-agent/ingestion-auth.json' customer_id: '<customer_id>' endpoint: malachiteingestion-pa.googleapis.com log_type: ARCSIGHT_CEF raw_log_field: body service: pipelines: logs/arcsight_to_chronicle: receivers: - udplog exporters: - chronicle/arcsight_cef
Konfigurationsparameter
Ersetzen Sie die folgenden Platzhalter:
Empfängerkonfiguration:
listen_address: IP-Adresse und Port, auf die gewartet werden soll:0.0.0.0, um alle Schnittstellen zu überwachen (empfohlen)- Port
514ist der Standard-Syslog-Port (erfordert Root unter Linux; verwenden Sie1514für Nicht-Root).
Exporter-Konfiguration:
creds_file_path: Vollständiger Pfad zur Datei für die Authentifizierung bei der Aufnahme:- Linux:
/etc/bindplane-agent/ingestion-auth.json - Windows:
C:\Program Files\observIQ OpenTelemetry Collector\ingestion-auth.json
- Linux:
customer_id: Die Kundennummer, die aus der Google SecOps Console kopiert wurdeendpoint: Regionale Endpunkt-URL:- USA:
malachiteingestion-pa.googleapis.com - Europa:
europe-malachiteingestion-pa.googleapis.com - Asien:
asia-southeast1-malachiteingestion-pa.googleapis.com - Eine vollständige Liste finden Sie unter Regionale Endpunkte.
- USA:
Konfigurationsdatei speichern
- Speichern Sie die Datei nach der Bearbeitung:
- Linux: Drücken Sie
Ctrl+O, dannEnterund dannCtrl+X. - Windows: Klicken Sie auf Datei > Speichern.
- Linux: Drücken Sie
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 observiq-otel-collectorPrüfen Sie, ob der Dienst ausgeführt wird:
sudo systemctl status observiq-otel-collectorLogs auf Fehler prüfen:
sudo journalctl -u observiq-otel-collector -f
Wählen Sie eine der folgenden Optionen aus, um den Bindplane-Agent unter Windows neu zu starten:
Eingabeaufforderung oder PowerShell als Administrator:
net stop observiq-otel-collector && net start observiq-otel-collectorServices-Konsole:
- Drücken Sie
Win+R, geben Sieservices.mscein und drücken Sie die Eingabetaste. - Suchen Sie nach observIQ OpenTelemetry Collector.
- Klicken Sie mit der rechten Maustaste und wählen Sie Neu starten aus.
Prüfen Sie, ob der Dienst ausgeführt wird:
sc query observiq-otel-collectorLogs auf Fehler prüfen:
type "C:\Program Files\observIQ OpenTelemetry Collector\log\collector.log"
- Drücken Sie
ArcSight SmartConnector herunterladen
- Melden Sie sich im OpenText-Supportportal an.
- Suchen Sie den neuesten ArcSight SmartConnector für Linux und laden Sie ihn herunter.
- Beispieldateiname:
ArcSight-Connector-Linux64-8.4.0.8499.0.bin.
ArcSight SmartConnector installieren
Laden Sie die Datei
.binauf den SmartConnector-Server hoch:scp ArcSight-Connector-Linux64-8.4.0.8499.0.bin user@your-smartconnector-host:/tmpMelden Sie sich über SSH auf dem SmartConnector-Server an und führen Sie Folgendes aus:
cd /tmp chmod +x ArcSight-Connector-Linux64-8.4.0.8499.0.bin ./ArcSight-Connector-Linux64-8.4.0.8499.0.binFolgen Sie der interaktiven Anleitung:
- Wählen Sie das Installationsverzeichnis aus (z. B.
/opt/arcsight/connectors/current). - Akzeptieren Sie die Lizenz.
- Wählen Sie bei Aufforderung Connector installieren aus.
- Wählen Sie das Installationsverzeichnis aus (z. B.
ArcSight SmartConnector so konfigurieren, dass CEF an Syslog gesendet wird
Starten Sie auf dem SmartConnector-Host den Zielassistenten:
cd /opt/arcsight/connectors/current/bin ./arcsight connectorsGehen Sie im Assistenten so vor:
- Klicken Sie auf Ziel hinzufügen.
- Wählen Sie CEF Syslog aus.
Geben Sie die folgenden Konfigurationsdetails an:
- Host/IP: Geben Sie die IP-Adresse des Bindplane-Agents ein.
- Port: Geben Sie die Portnummer des Bindplane-Agents ein (z. B.
514). - Protokoll: Wählen Sie UDP aus.
Schließen Sie die Einrichtung ab und starten Sie den Connector neu:
./arcsight agentsFühren Sie eine Prüfung der Verbindung aus (suchen Sie nach:
Successfully connected to syslog: X.X.X.X:514):tail -f /opt/arcsight/connectors/current/logs/agent.log
UDM-Zuordnungstabelle
| Logfeld | UDM-Zuordnung | Logik |
|---|---|---|
| Handeln | security_result.action_details | Direkt aus dem Feld act zugeordnet. |
| agt | principal.ip | Direkt aus dem Feld agt zugeordnet. |
| agt | principal.asset.ip | Direkt aus dem Feld agt zugeordnet. |
| App | network.application_protocol | Direkt aus dem Feld app zugeordnet. |
| art | metadata.event_timestamp.seconds | Direkt aus dem Feld art zugeordnet. |
| cs2 | additional.fields.value.string_value | Direkt aus dem Feld cs2 zugeordnet, wenn cs2Label gleich EventlogCategory ist. |
| cs2Label | additional.fields.key | Direkt aus dem Feld cs2Label zugeordnet, wenn der Wert EventlogCategory ist. |
| cs3 | additional.fields.value.string_value | Direkt aus dem Feld cs3 zugeordnet, wenn cs3Label gleich Process ID ist. |
| cs3Label | additional.fields.key | Direkt aus dem Feld cs3Label zugeordnet, wenn der Wert Process ID ist. |
| cs5 | additional.fields.value.string_value | Direkt aus dem Feld cs5 zugeordnet, wenn cs5Label gleich Authentication Package Name ist. |
| cs5Label | additional.fields.key | Direkt aus dem Feld cs5Label zugeordnet, wenn der Wert Authentication Package Name ist. |
| cs6 | additional.fields.value.string_value | Direkt aus dem Feld cs6 zugeordnet, wenn cs6Label gleich Logon GUID ist. |
| cs6Label | additional.fields.key | Direkt aus dem Feld cs6Label zugeordnet, wenn der Wert Logon GUID ist. |
| dhost | about.hostname | Direkt aus dem Feld dhost zugeordnet. |
| dhost | target.hostname | Direkt aus dem Feld dhost zugeordnet. |
| dntdom | about.administrative_domain | Direkt aus dem Feld dntdom zugeordnet. |
| dntdom | target.administrative_domain | Direkt aus dem Feld dntdom zugeordnet. |
| dproc | about.process.command_line | Direkt aus dem Feld dproc zugeordnet. |
| dproc | target.process.command_line | Direkt aus dem Feld dproc zugeordnet. |
| dst | principal.ip | Direkt aus dem Feld dst zugeordnet. |
| dst | principal.asset.ip | Direkt aus dem Feld dst zugeordnet. |
| dst | target.ip | Direkt aus dem Feld dst zugeordnet. |
| duid | target.user.userid | Direkt aus dem Feld duid zugeordnet. |
| duser | target.user.user_display_name | Direkt aus dem Feld duser zugeordnet. |
| dvc | about.ip | Direkt aus dem Feld dvc zugeordnet. |
| dvchost | about.hostname | Direkt aus dem Feld dvchost zugeordnet. |
| eventId | additional.fields.value.string_value | Direkt aus dem Feld eventId zugeordnet. |
| externalId | metadata.product_log_id | Direkt aus dem Feld externalId zugeordnet. |
| fname | additional.fields.value.string_value | Direkt aus dem Feld fname zugeordnet. |
| msg | metadata.description | Direkt aus dem Feld msg zugeordnet. |
| Proto | network.ip_protocol | Direkt aus dem Feld proto zugeordnet. Übersetzt Protokollnamen in die entsprechenden Konstanten (z.B. tcp in TCP). |
| rt | metadata.event_timestamp.seconds | Direkt aus dem Feld rt zugeordnet. |
| shost | about.hostname | Direkt aus dem Feld shost zugeordnet. |
| shost | principal.hostname | Direkt aus dem Feld shost zugeordnet. |
| src | principal.ip | Direkt aus dem Feld src zugeordnet. |
| src | principal.asset.ip | Direkt aus dem Feld src zugeordnet. |
| src | target.ip | Direkt aus dem Feld src zugeordnet. |
| sproc | principal.process.command_line | Direkt aus dem Feld sproc zugeordnet. |
| spt | principal.port | Direkt aus dem Feld spt zugeordnet. |
| spt | target.port | Direkt aus dem Feld spt zugeordnet. |
| additional.EventRecordID | additional.fields.value.string_value | Direkt aus dem Feld ad.EventRecordID zugeordnet. |
| additional.ThreadID | additional.fields.value.string_value | Direkt aus dem Feld ad.ThreadID zugeordnet. |
| additional.Opcode | additional.fields.value.string_value | Direkt aus dem Feld ad.Opcode zugeordnet. |
| additional.ProcessID | additional.fields.value.string_value | Direkt aus dem Feld ad.ProcessID zugeordnet. |
| additional.TargetDomainName | additional.fields.value.string_value | Direkt aus dem Feld ad.TargetDomainName zugeordnet. |
| additional.Version | additional.fields.value.string_value | Direkt aus dem Feld ad.Version zugeordnet. |
| deviceExternalId | about.asset.hardware.serial_number | Direkt aus dem Feld deviceExternalId zugeordnet. |
| deviceInboundInterface | additional.fields.value.string_value | Direkt aus dem Feld deviceInboundInterface zugeordnet. |
| deviceOutboundInterface | additional.fields.value.string_value | Direkt aus dem Feld deviceOutboundInterface zugeordnet. |
| PanOSConfigVersion | security_result.detection_fields.value | Direkt aus dem Feld PanOSConfigVersion zugeordnet. |
| PanOSContentVersion | security_result.detection_fields.value | Direkt aus dem Feld PanOSContentVersion zugeordnet. |
| PanOSDGHierarchyLevel1 | security_result.detection_fields.value | Direkt aus dem Feld PanOSDGHierarchyLevel1 zugeordnet. |
| PanOSDestinationLocation | target.location.country_or_region | Direkt aus dem Feld PanOSDestinationLocation zugeordnet. |
| PanOSRuleUUID | metadata.product_log_id | Direkt aus dem Feld PanOSRuleUUID zugeordnet. |
| PanOSThreatCategory | security_result.category_details | Direkt aus dem Feld PanOSThreatCategory zugeordnet. |
| PanOSThreatID | security_result.threat_id | Direkt aus dem Feld PanOSThreatID zugeordnet. |
| about.asset.asset_id | Wird durch Verketten von Palo Alto Networks., dem Anbieternamen (LF) und dem Feld deviceExternalId generiert. |
|
| extensions.auth.type | Wird auf AUTHTYPE_UNSPECIFIED gesetzt, wenn das Feld event_name logged on enthält. |
|
| metadata.description | Wenn das Feld description den Wert by gefolgt von einer IP-Adresse enthält, wird die IP-Adresse extrahiert und principal.ip und principal.asset.ip zugeordnet. |
|
| metadata.event_type | Wird anhand einer Reihe von bedingten Prüfungen für verschiedene Felder ermittelt, darunter event_name, principal_*, target_* und device_event_class_id. Die Logik bestimmt anhand der verfügbaren Informationen den am besten geeigneten Ereignistyp. |
|
| metadata.log_type | Legen Sie ARCSIGHT_CEF fest. |
|
| metadata.product_event_type | Wird durch Verkettung von \[, the device_event_class_id field, \] - und dem Feld name generiert. |
|
| metadata.product_name | Wird auf NGFW gesetzt, wenn das Feld product_name gleich LF ist. |
|
| principal.asset.ip | Wenn das Feld description den Wert by gefolgt von einer IP-Adresse enthält, wird die IP-Adresse extrahiert und principal.ip und principal.asset.ip zugeordnet. |
|
| principal.ip | Wenn das Feld description den Wert by gefolgt von einer IP-Adresse enthält, wird die IP-Adresse extrahiert und principal.ip und principal.asset.ip zugeordnet. |
|
| security_result.action | Wird auf ALLOW gesetzt, wenn das Feld act gleich alert ist. Andernfalls wird es auf BLOCK gesetzt. |
|
| security_result.severity | Wird auf HIGH gesetzt, wenn das Feld sev größer oder gleich 7 ist, andernfalls auf LOW. |
|
PanOSFileType |
event.idm.read_only_udm.target.file.mime_type |
Aus dem Änderungsprotokoll zugeordnet |
PanOSEmailSubject |
event.idm.read_only_udm.network.email.subject |
Aus dem Änderungsprotokoll zugeordnet |
PanOSNSSAINetworkSliceType |
event.idm.read_only_udm.additional.fields |
Aus dem Änderungsprotokoll zugeordnet |
PanOSURLCounter |
event.idm.read_only_udm.additional.fields |
Aus dem Änderungsprotokoll zugeordnet |
PanOSReportID |
event.idm.read_only_udm.additional.fields |
Aus dem Änderungsprotokoll zugeordnet |
PanOSDGHierarchyLevel2 |
event.idm.read_only_udm.additional.fields |
Aus dem Änderungsprotokoll zugeordnet |
PanOSVirtualSystemName |
event.idm.read_only_udm.additional.fields |
Aus dem Änderungsprotokoll zugeordnet |
PanOSSigFlags |
event.idm.read_only_udm.additional.fields |
Aus dem Änderungsprotokoll zugeordnet |
PanOSPartialHash |
event.idm.read_only_udm.additional.fields |
Aus dem Änderungsprotokoll zugeordnet |
version |
event.idm.read_only_udm.additional.fields |
Aus dem Änderungsprotokoll zugeordnet |
cn3 |
network.duration.seconds |
Aus dem Änderungsprotokoll zugeordnet |
PanOSTenantID |
additional.fields |
Aus dem Änderungsprotokoll zugeordnet |
cn3 |
additional.fields |
Aus dem Änderungsprotokoll zugeordnet |
PanOSCortexDataLakeTenantID |
additional.fields |
Aus dem Änderungsprotokoll zugeordnet |
target_user |
target.user.userid |
Aus dem Änderungsprotokoll zugeordnet |
principal_ip |
principal.ip |
Aus dem Änderungsprotokoll zugeordnet |
PanOSStage", "PanOSConnectionError", and "PanOSEventDetails |
additional.fields |
Aus dem Änderungsprotokoll zugeordnet |
outcome |
security_result.action_details |
Aus dem Änderungsprotokoll zugeordnet |
PanOSDescription |
metadata.description |
Aus dem Änderungsprotokoll zugeordnet |
PanOSSourceUser |
principal.user.userid |
Aus dem Änderungsprotokoll zugeordnet |
app |
target.application |
Aus dem Änderungsprotokoll zugeordnet |
flexString2", "PanOSFileHash", and "filePath |
additional.fields |
Aus dem Änderungsprotokoll zugeordnet |
threat_name |
security_result.threat_name |
Aus dem Änderungsprotokoll zugeordnet |
principal_ip1 |
principal.ip |
Aus dem Änderungsprotokoll zugeordnet |
metadata.event_type |
NETWORK_CONNECTION |
Aus dem Änderungsprotokoll zugeordnet |
deviceOutboundInterface", "deviceInboundInterface |
additional.fields |
Aus dem Änderungsprotokoll zugeordnet |
query |
additional fields |
Aus dem Änderungsprotokoll zugeordnet |
Änderungsprotokoll
Änderungsprotokoll für diesen Parser ansehen
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten