Imperva SecureSphere Management-Logs erfassen
In diesem Dokument wird beschrieben, wie Sie Imperva SecureSphere Management-Logs mit Bindplane in Google Security Operations aufnehmen. Der Parser extrahiert Felder aus den Logs im CEF- oder JSON-Format. Es verwendet Grok-Muster und die Schlüssel/Wert-Analyse, um Rohlogfelder der UDM zuzuordnen. Dabei werden sowohl Standard-CEF-Felder als auch benutzerdefinierte JSON-Strukturen verarbeitet und JSON-Daten, sofern verfügbar, priorisiert. Imperva SecureSphere bietet umfassende Funktionen für Web Application Firewall, Datenbank- und Dateisicherheit für lokale und Cloud-Bereitstellungen.
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 SecureSphere Management Console
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_SECURESPHERE' 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 SecureSphere Management konfigurieren
- 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.
- Geben Sie die folgenden Konfigurationsdetails an:
- Name: Geben Sie einen aussagekräftigen Namen ein, z. B.
Google SecOps Syslog
.
- Name: Geben Sie einen aussagekräftigen Namen ein, z. B.
Aktion für Sicherheitsereignis konfigurieren
- Klicken Sie auf Aktion hinzufügen und konfigurieren Sie Folgendes:
- 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.
- Message Format (Nachrichtenformat): Wählen Sie Gateway Log – Security Event – System Log (syslog) using CEF standard (Gateway-Log – Sicherheitsereignis – Systemlog (Syslog) gemäß CEF-Standard) aus.
Systemereignisaktion konfigurieren
- Klicken Sie auf Aktion hinzufügen und konfigurieren Sie Folgendes:
- Aktionstyp: Wählen Sie Systemlog aus.
- Host: Geben Sie die IP-Adresse des BindPlane-Agents ein.
- Port: Geben Sie die Portnummer des BindPlane-Agents ein.
- Protokoll: Wählen Sie UDP oder TCP aus.
- Message Format (Nachrichtenformat): Wählen Sie Log System Event to System Log (syslog) using CEF standard (Systemereignis mit CEF-Standard im Systemprotokoll (syslog) protokollieren) aus.
Aktionssets auf Richtlinien anwenden
- Klicken Sie auf Richtlinien > Sicherheitsrichtlinien.
- Konfigurieren Sie für jede relevante Richtlinie Folgende Aktionen, um Ihr Aktionsset zu verwenden.
- Rufen Sie Richtlinien > Richtlinien für Systemereignisse auf.
- Konfigurieren Sie Richtlinien für Systemereignisse so, dass das Aktionsset für eine umfassende Überwachung verwendet wird.
UDM-Zuordnungstabelle
Logfeld | UDM-Zuordnung | Logik |
---|---|---|
action |
security_result.action_details |
Der Wert des Felds action wird dem Feld security_result.action_details zugewiesen. |
application-name |
target.application |
Der Wert des Felds application-name wird dem Feld target.application zugewiesen. |
cat |
security_result.category_details |
Der Wert des Felds cat wird dem Feld security_result.category_details zugewiesen. |
class |
security_result.detection_fields.value |
Der Wert des Felds class wird dem Feld value in security_result.detection_fields zugewiesen. Der entsprechende key ist „class“. |
collection_time.seconds |
metadata.event_timestamp.seconds |
Der Wert von collection_time.seconds aus dem Rohlog wird als Sekundenwert für metadata.event_timestamp verwendet. |
create-time |
metadata.event_timestamp.seconds |
Der Wert von create-time wird geparst und sein Sekundenwert wird als Sekundenwert für metadata.event_timestamp verwendet. |
cs1 |
security_result.rule_name |
Der Wert des Felds cs1 wird dem Feld security_result.rule_name zugewiesen. |
cs10 |
target.resource.attribute.labels.value |
Der Wert des Felds cs10 wird dem Feld value in target.resource.attribute.labels zugewiesen. |
cs10Label |
target.resource.attribute.labels.key |
Der Wert des Felds cs10Label wird dem Feld key in target.resource.attribute.labels zugewiesen. |
cs11 |
principal.application |
Der Wert des Felds cs11 wird dem Feld principal.application zugewiesen. |
cs12 |
security_result.description |
Der Wert des Felds cs12 wird nach dem Entfernen von geschweiften Klammern und Dollarzeichen dem Feld security_result.description zugewiesen. |
cs14 |
target.resource.attribute.labels.value |
Der Wert des Felds cs14 wird dem Feld value in target.resource.attribute.labels zugewiesen. |
cs14Label |
target.resource.attribute.labels.key |
Der Wert des Felds cs14Label wird dem Feld key in target.resource.attribute.labels zugewiesen. |
cs15 |
security_result.summary |
Der Wert des Felds cs15 wird dem Feld security_result.summary zugewiesen. |
cs16 |
principal.process.command_line |
Der Wert des Felds cs16 wird dem Feld principal.process.command_line zugewiesen. |
cs17 |
target.resource.resource_subtype |
Der Wert des Felds cs17 wird dem Feld target.resource.resource_subtype zugewiesen. |
cs2 |
principal.group.group_display_name |
Der Wert des Felds cs2 wird dem Feld principal.group.group_display_name zugewiesen. |
cs3 |
principal.hostname , principal.asset.hostname |
Der Wert des Felds cs3 wird sowohl dem Feld principal.hostname als auch dem Feld principal.asset.hostname zugewiesen. |
cs4 |
target.application |
Der Wert des Felds cs4 wird dem Feld target.application zugewiesen, sofern der Wert nicht „ProcessWitness“ ist. |
cs5 |
metadata.description |
Der Wert des Felds cs5 wird dem Feld metadata.description zugewiesen. |
cs6 |
target.resource_ancestors.name |
Der Wert des Felds cs6 wird dem Feld target.resource_ancestors.name zugewiesen. |
cs7 |
target.resource_ancestors.resource_subtype |
Der Wert des Felds cs7 wird dem Feld target.resource_ancestors.resource_subtype zugewiesen. |
cs8 |
target.resource.name , target.resource.resource_type |
Der Wert des Felds cs8 wird dem Feld target.resource.name zugewiesen und target.resource.resource_type wird auf „DATABASE“ gesetzt. |
cs9 |
principal.user.userid |
Der Wert des Felds cs9 wird dem Feld principal.user.userid zugewiesen. |
description |
security_result.description |
Der Wert des Felds description wird dem Feld security_result.description zugewiesen. |
dest-ip |
target.ip , target.asset.ip |
Die aus dem Feld dest-ip extrahierte IP-Adresse wird sowohl dem Feld target.ip als auch dem Feld target.asset.ip zugewiesen. |
dest-port |
target.port |
Der Wert des Felds dest-port , der in eine Ganzzahl konvertiert wurde, wird dem Feld target.port zugewiesen. |
deviceExternalId |
intermediary.hostname |
Der Wert des Felds deviceExternalId wird dem Feld intermediary.hostname zugewiesen. |
dpt |
target.port |
Der Wert des Felds dpt , der in eine Ganzzahl konvertiert wurde, wird dem Feld target.port zugewiesen. |
dst |
target.ip , target.asset.ip |
Der Wert des Felds dst wird sowohl dem Feld target.ip als auch dem Feld target.asset.ip zugewiesen. |
duser |
target.user.userid |
Der Wert des Felds duser wird dem Feld target.user.userid zugewiesen. |
eventId |
metadata.product_log_id |
Der Wert des Felds eventId wird dem Feld metadata.product_log_id zugewiesen. |
gateway-name |
security_result.detection_fields.value |
Der Wert des Felds gateway-name wird dem Feld value in security_result.detection_fields zugewiesen. Der entsprechende key ist „gateway-name“. |
http.request.method |
network.http.method |
Der Wert des Felds http.request.method wird dem Feld network.http.method zugewiesen. |
http.request.user-agent |
network.http.user_agent |
Der Wert des Felds http.request.user_agent wird dem Feld network.http.user_agent zugewiesen. |
http.response.code |
network.http.response_code |
Der Wert des Felds http.response.code , der in eine Ganzzahl konvertiert wurde, wird dem Feld network.http.response_code zugewiesen. |
http.session-id |
network.session_id |
Der Wert des Felds http.session-id wird dem Feld network.session_id zugewiesen. |
http.user-name |
principal.user.userid |
Der Wert des Felds http.user-name , wobei die umgebenden Anführungszeichen entfernt werden, wird dem Feld principal.user.userid zugewiesen. |
log_type |
metadata.log_type |
Der Wert des Felds log_type aus dem Rohlog wird dem Feld metadata.log_type zugewiesen. |
mx-ip |
intermediary.ip |
Der Wert des Felds mx-ip wird dem Feld intermediary.ip zugewiesen. |
MxIP |
intermediary.ip |
Der Wert des Felds MxIP wird dem Feld intermediary.ip zugewiesen. |
OSUser |
principal.user.userid |
Der Wert des Felds OSUser wird dem Feld principal.user.userid zugewiesen. |
policy-name |
security_result.detection_fields.value |
Der Wert des Felds policy-name wird dem Feld value in security_result.detection_fields zugewiesen. Der entsprechende key ist „policy-name“. |
pquery |
target.resource.name , target.process.command_line |
Wenn pquery nicht leer ist und das Wort „from“ enthält, wird der Tabellenname extrahiert und target.resource.name zugewiesen, target.resource.resource_type wird auf „TABLE“ gesetzt und der gesamte pquery -Wert wird target.process.command_line zugewiesen. Andernfalls wird der gesamte pquery -Wert target.resource.name zugewiesen. |
pro |
security_result.description |
Der Wert des Felds pro wird dem Feld security_result.description zugewiesen. |
product |
metadata.product_name |
Der Wert des Felds product wird dem Feld metadata.product_name zugewiesen. |
product_type |
metadata.product_event_type |
Der Wert des Felds product_type wird dem Feld metadata.product_event_type zugewiesen. |
protocol |
network.ip_protocol |
Wenn der Wert des Felds protocol „TCP“ oder „UDP“ ist, wird er dem Feld network.ip_protocol zugewiesen. |
proto |
network.ip_protocol |
Der Wert des Felds proto wird dem Feld network.ip_protocol zugewiesen. |
reason |
security_result.rule_name |
Der Wert des Felds reason wird dem Feld security_result.rule_name zugewiesen. |
rt |
metadata.event_timestamp.seconds |
Der Wert von rt wird geparst und sein Sekundenwert wird als Sekundenwert für metadata.event_timestamp verwendet. |
server-group-name |
target.resource.attribute.labels.value |
Der Wert des Felds server-group-name wird dem Feld value in target.resource.attribute.labels zugewiesen. Der entsprechende key ist „server-group-name“. |
server-group-simulation-mode |
target.resource.attribute.labels.value |
Der Wert des Felds server-group-simulation-mode wird dem Feld value in target.resource.attribute.labels zugewiesen. Der entsprechende key ist „server-group-simulation-mode“. |
service-name |
target.resource.attribute.labels.value |
Der Wert des Felds service-name wird dem Feld value in target.resource.attribute.labels zugewiesen. Der entsprechende key ist „service-name“. |
ServiceName |
target.application |
Wenn ApplicationName nicht leer und ServiceName leer ist, wird der Wert von ApplicationName ServiceName zugewiesen. Der Wert von ServiceName wird dann target.application zugewiesen. |
severity |
security_result.severity , security_result.severity_details |
Der Wert des Felds severity wird in Großbuchstaben umgewandelt. Wenn es sich um „LOW“, „MEDIUM“, „HIGH“ oder „CRITICAL“ handelt, wird es security_result.severity zugewiesen. Wenn es „INFORMATIVE“ oder „INFO“ ist, wird security_result.severity auf „INFORMATIONAL“ gesetzt. Der ursprüngliche Wert wird auch security_result.severity_details zugewiesen. |
severity_data |
security_result.severity |
Der Wert des Felds severity_data wird in Großbuchstaben umgewandelt. Wenn es sich um „HIGH“, „LOW“, „MEDIUM“, „CRITICAL“, „ERROR“ oder „INFORMATIONAL“ handelt, wird es security_result.severity zugewiesen. |
source-ip |
principal.ip , principal.asset.ip |
Der Wert des Felds source-ip wird sowohl dem Feld principal.ip als auch dem Feld principal.asset.ip zugewiesen. |
source-port |
principal.port |
Der Wert des Felds source-port , der in eine Ganzzahl konvertiert wurde, wird dem Feld principal.port zugewiesen. |
spt |
principal.port |
Der Wert des Felds spt , der in eine Ganzzahl konvertiert wurde, wird dem Feld principal.port zugewiesen. |
src |
principal.ip , principal.asset.ip |
Der Wert des Felds src wird sowohl dem Feld principal.ip als auch dem Feld principal.asset.ip zugewiesen. |
srcapp |
principal.application |
Der Wert des Felds srcapp wird dem Feld principal.application zugewiesen. |
srchost |
principal.hostname , principal.asset.hostname |
Der Wert des Felds srchost wird sowohl dem Feld principal.hostname als auch dem Feld principal.asset.hostname zugewiesen. |
vendor |
metadata.vendor_name |
Der Wert des Felds vendor wird dem Feld metadata.vendor_name zugewiesen. |
version |
metadata.product_version |
Der Wert des Felds version wird dem Feld metadata.product_version zugewiesen. |
violation-id |
security_result.detection_fields.value |
Der Wert des Felds violation-id wird dem Feld value in security_result.detection_fields zugewiesen. Der entsprechende key ist „violation-id“. |
violation-type |
security_result.detection_fields.value |
Der Wert des Felds violation-type wird dem Feld value in security_result.detection_fields zugewiesen. Der entsprechende key ist „violation-type“. |
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten