Imperva FlexProtect-Logs erfassen
In diesem Dokument wird beschrieben, wie Sie Imperva FlexProtect-Logs mit Bindplane in Google Security Operations aufnehmen. Der Parser bereinigt und verarbeitet eingehende Logs vor und versucht dann, CEF-Daten (Common Event Format) zu extrahieren. Je nach Vorhandensein bestimmter Felder wie „src“ und „sip“ wird ein UDM-Ereignistyp zugewiesen und relevante CEF-Felder werden dem UDM-Schema zugeordnet. Schließlich wird die Ausgabe mit zusätzlichen benutzerdefinierten Feldern angereichert. Imperva FlexProtect ermöglicht die flexible Bereitstellung von Imperva-Sicherheitslösungen (SecureSphere, Cloud WAF, Bot Protection) in Hybrid-Cloud-Umgebungen.
Hinweise
Prüfen Sie, ob folgende Voraussetzungen erfüllt sind:
- Eine Google SecOps-Instanz
- Windows 2016 oder höher oder ein Linux-Host mit
systemd
- Wenn Sie den Agent hinter einem Proxy ausführen, müssen die Firewallports gemäß den Anforderungen des Bindplane-Agents geöffnet sein.
- Privilegierter Zugriff auf die Imperva FlexProtect-Verwaltungskonsole oder einzelne Produktkonsolen
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 BindPlane 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
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" /quiet
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.sh
Zusätzliche Installationsressourcen
- Weitere Installationsoptionen finden Sie in diesem Installationsleitfaden.
BindPlane-Agent zum Erfassen von Syslog-Daten und Senden an Google SecOps konfigurieren
Konfigurationsdatei aufrufen:
- Suchen Sie die Datei
config.yaml
. Normalerweise befindet sie sich unter Linux im Verzeichnis/etc/bindplane-agent/
oder unter Windows im Installationsverzeichnis. - Öffnen Sie die Datei mit einem Texteditor (z. B.
nano
,vi
oder Notepad).
- Suchen Sie die Datei
Bearbeiten Sie die Datei
config.yaml
so: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: <CUSTOMER_ID> endpoint: malachiteingestion-pa.googleapis.com # Add optional ingestion labels for better organization log_type: 'IMPERVA_FLEXPROTECT' 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
<customer_id>
durch die tatsächliche Kunden-ID. - 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-Weiterleitung auf Imperva FlexProtect konfigurieren
Für SecureSphere-Komponente (lokal/Cloud)
- Melden Sie sich in der Imperva SecureSphere Management Console an.
- Rufen Sie Konfiguration > Aktionssets auf.
- Klicken Sie auf Hinzufügen, um ein neues Aktionsset zu erstellen.
Klicken Sie auf Aktion hinzufügen und geben Sie die folgenden Konfigurationsdetails an:
- Name: Geben Sie einen aussagekräftigen Namen ein, z. B.
Google SecOps Syslog
. - Aktionstyp: Wählen Sie Syslog aus.
- Host: Geben Sie die IP-Adresse des Bindplane-Agents ein.
- Port: Geben Sie die Portnummer des Bindplane-Agents ein (Standardwert:
514
). - Protokoll: Wählen Sie UDP oder TCP aus.
- Syslog Log Level (Syslog-Protokollebene): Wählen Sie DEBUG aus.
- Syslog Facility: Wählen Sie LOCAL0 aus.
- Format: Wählen Sie CEF (Common Event Format) aus.
- Name: Geben Sie einen aussagekräftigen Namen ein, z. B.
Speichern Sie die Aktionskonfiguration und wenden Sie sie auf die relevanten Sicherheitsrichtlinien an.
Für die Cloud WAF-/Incapsula-Komponente
- Melden Sie sich in der Imperva Cloud Console an.
- Rufen Sie Logs> Log Setup auf.
- Syslog-Ziel konfigurieren:
- Host: Geben Sie die IP-Adresse des Bindplane-Agents ein.
- Port: Geben Sie die Portnummer des Bindplane-Agents ein (Standardwert:
514
). - Protokoll: Wählen Sie UDP oder TCP aus.
- Format: Wählen Sie CEF aus.
UDM-Zuordnungstabelle
Logfeld | UDM-Zuordnung | Logik |
---|---|---|
handeln | read_only_udm.security_result.action_details | Direkt aus dem Feld act zugeordnet. |
App | read_only_udm.network.application_protocol | Direkt aus dem Feld app zugeordnet. |
ccode | read_only_udm.principal.location.country_or_region | Direkt aus dem Feld ccode zugeordnet. |
cicode | read_only_udm.principal.location.city | Direkt aus dem Feld cicode zugeordnet. |
cn1 | read_only_udm.network.http.response_code | Direkt aus dem Feld cn1 zugeordnet, nachdem es in eine Ganzzahl konvertiert wurde. |
cs1 | read_only_udm.additional.fields.value.string_value | Direkt aus dem Feld cs1 zugeordnet. |
cs2 | read_only_udm.additional.fields.value.string_value | Direkt aus dem Feld cs2 zugeordnet. |
cs3 | read_only_udm.additional.fields.value.string_value | Direkt aus dem Feld cs3 zugeordnet. |
cs4 | read_only_udm.additional.fields.value.string_value | Direkt aus dem Feld cs4 zugeordnet. |
cs5 | read_only_udm.additional.fields.value.string_value | Direkt aus dem Feld cs5 zugeordnet. |
cs6 | read_only_udm.additional.fields.value.string_value | Direkt aus dem Feld cs6 zugeordnet. |
cs7 | read_only_udm.additional.fields.value.string_value | Direkt aus dem Feld cs7 zugeordnet. |
cs8 | read_only_udm.additional.fields.value.string_value | Direkt aus dem Feld cs8 zugeordnet. |
cs9 | read_only_udm.additional.fields.value.string_value | Direkt aus dem Feld cs9 zugeordnet. |
cpt | read_only_udm.principal.port | Direkt aus dem Feld cpt zugeordnet, nachdem es in eine Ganzzahl konvertiert wurde. |
Kunde | read_only_udm.principal.user.user_display_name | Direkt aus dem Feld Customer zugeordnet. |
deviceExternalId | read_only_udm.about.asset.asset_id | Der Wert wird abgeleitet, indem „Incapsula.SIEMintegration:“ mit dem Feld deviceExternalId verkettet wird. |
deviceFacility | read_only_udm.principal.location.city | Direkt aus dem Feld deviceFacility zugeordnet. |
dproc | read_only_udm.target.process.command_line | Direkt aus dem Feld dproc zugeordnet. |
Ende | read_only_udm.security_result.detection_fields.value | Direkt aus dem Feld end zugeordnet. |
fileId | read_only_udm.network.session_id | Direkt aus dem Feld fileId zugeordnet. |
filePermission | read_only_udm.about.resource.attribute.permissions.name | Direkt aus dem Feld filePermission zugeordnet. |
in | read_only_udm.network.received_bytes | Direkt aus dem Feld in zugeordnet. |
qstr | read_only_udm.security_result.detection_fields.value | Direkt aus dem Feld qstr zugeordnet. |
Anfrage | read_only_udm.target.url | Direkt aus dem Feld request zugeordnet. |
requestClientApplication | read_only_udm.network.http.user_agent | Direkt aus dem Feld requestClientApplication zugeordnet. |
requestMethod | read_only_udm.network.http.method | Direkt aus dem Feld requestMethod zugeordnet. |
siteid | read_only_udm.security_result.detection_fields.value | Direkt aus dem Feld siteid zugeordnet. |
sip | read_only_udm.target.ip | Direkt aus dem Feld sip zugeordnet. |
sourceServiceName | read_only_udm.principal.application | Direkt aus dem Feld sourceServiceName zugeordnet. |
spt | read_only_udm.target.port | Direkt aus dem Feld spt zugeordnet, nachdem es in eine Ganzzahl konvertiert wurde. |
src | read_only_udm.principal.ip | Direkt aus dem Feld src zugeordnet. |
start | read_only_udm.security_result.detection_fields.value | Direkt aus dem Feld start zugeordnet. |
suid | read_only_udm.principal.user.userid | Direkt aus dem Feld suid zugeordnet. |
ver | read_only_udm.network.tls.version | Direkt aus dem Feld ver zugeordnet. |
read_only_udm.about.asset.asset_id | Der Wert wird abgeleitet, indem „Incapsula.SIEMintegration:“ mit dem Feld deviceExternalId verkettet wird. |
|
read_only_udm.additional.fields.key | Der Wert wird von der Parserlogik anhand des Labels des Felds bestimmt, z. B.: – cs1Label wird „Cap Support“ zugeordnet, – cs2Label wird „Javascript Support“ zugeordnet, – cs3Label wird „CO Support“ zugeordnet, – cs4Label wird „VID“ zugeordnet, – cs5Label wird „clappsig“ zugeordnet, – cs6Label wird „clapp“ zugeordnet, – cs7Label wird „latitude“ zugeordnet, – cs8Label wird „longitude“ zugeordnet, – cs9Label wird „Rule name“ zugeordnet. |
|
read_only_udm.metadata.event_timestamp.nanos | Direkt aus dem Feld collection_time.nanos zugeordnet. |
|
read_only_udm.metadata.event_timestamp.seconds | Direkt aus dem Feld collection_time.seconds zugeordnet. |
|
read_only_udm.metadata.event_type | Der Wert wird anhand der Felder src und sip bestimmt: – Wenn beide vorhanden sind, wird der Wert auf „NETWORK_HTTP“ festgelegt. : Wenn nur src vorhanden ist, wird der Wert auf „USER_UNCATEGORIZED“ festgelegt. – Andernfalls wird der Wert auf „GENERIC_EVENT“ gesetzt. |
|
read_only_udm.metadata.product_event_type | Der Wert wird abgeleitet, indem „[“, der numerische Wert aus dem CEF-Headerfeld an Index 4, „] – “ und die Textbeschreibung aus dem CEF-Headerfeld an Index 4 verkettet werden. | |
read_only_udm.metadata.product_name | Der Wert ist statisch auf „SIEMIntegration“ festgelegt. | |
read_only_udm.metadata.product_version | Der Wert ist statisch auf „1“ festgelegt. | |
read_only_udm.metadata.vendor_name | Der Wert ist statisch auf „Incapsula“ festgelegt. | |
read_only_udm.security_result.detection_fields.key | Der Wert wird statisch auf „siteid“, „event_start_time“, „event_end_time“ oder „qstr“ festgelegt, je nachdem, welches Feld verarbeitet wird. | |
read_only_udm.security_result.severity | Der Wert ist statisch auf „LOW“ festgelegt. | |
read_only_udm.target.port | Direkt aus dem Feld spt zugeordnet, nachdem es in eine Ganzzahl konvertiert wurde. |
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten