Imperva WAF-Logs erfassen
In diesem Dokument wird beschrieben, wie Sie Logs von der Imperva Web Application Firewall (WAF) in Google Security Operations erfassen. Dazu können Sie entweder eine API (Pull) oder Amazon S3 (Push) verwenden. Der Parser wandelt Logs aus den Formaten SYSLOG+KV, JSON, CEF und LEEF in ein einheitliches Datenmodell (Unified Data Model, UDM) um. Es verarbeitet verschiedene Logstrukturen, extrahiert relevante Felder, normalisiert sie in UDM-Attribute und reichert die Daten mit Kontextinformationen für eine verbesserte Sicherheitsanalyse an.
Hinweise
Prüfen Sie, ob die folgenden Voraussetzungen erfüllt sind:
- Der Aufnahmetyp (API oder Amazon S3), der am besten zu Ihren Konfigurationsanforderungen passt.
- Google SecOps-Instanz.
- Privilegierter Zugriff auf AWS.
- Privilegierter Zugriff auf die Imperva WAF.
Imperva WAF-Logs mit der API erfassen
Schreibgeschützten Nutzer für Imperva WAF konfigurieren
- Melden Sie sich mit einem privilegierten Konto in der Imperva Console an.
- Gehen Sie zu Einstellungen > Nutzer und Rollen.
- Klicken Sie auf Add User (Nutzer hinzufügen).
- Füllen Sie die Pflichtfelder aus:
- Nutzername: Geben Sie einen eindeutigen Nutzernamen ein.
- Passwort: Legen Sie ein starkes Passwort fest.
- E-Mail: Geben Sie die E-Mail-Adresse des Nutzers an.
- Wählen Sie im Bereich Rollen die Rolle Leser aus.
- Klicken Sie auf Speichern, um den Nutzer mit Lesezugriff zu erstellen.
Optional: Reader-Nutzer als „Nur API“ konfigurieren
- Suchen Sie in der Liste Nutzer nach dem neu erstellten Nutzer.
- Klicken Sie neben dem Namen des Nutzers auf die Schaltfläche Aktionen (drei Punkte).
- Wählen Sie Als reinen API-Nutzer festlegen aus.
API-ID und API-Schlüssel generieren
- Wählen Sie in der Liste Nutzer den neu erstellten Nutzer aus.
- Wählen Sie Einstellungen und dann API-Schlüssel aus.
- Klicken Sie auf API-Schlüssel hinzufügen.
- Füllen Sie die Pflichtfelder aus:
- Name: Geben Sie einen aussagekräftigen Namen für den API-Schlüssel ein.
- Optional: Beschreibung: Geben Sie eine optionale Beschreibung ein.
- Wählen Sie in der Liste API-Schlüssel läuft ab in die Option Nie aus.
- Wählen Sie Status aus, um die Funktion zu aktivieren.
- Klicken Sie auf Speichern.
Das System zeigt die API-ID und den API-Schlüssel an. Kopieren und speichern Sie diese Anmeldedaten, da sie nicht noch einmal angezeigt werden.
Feeds einrichten
Es gibt zwei verschiedene Einstiegspunkte zum Einrichten von Feeds in der Google SecOps-Plattform:
- SIEM-Einstellungen > Feeds
- Content Hub> Content-Pakete
Feeds über „SIEM-Einstellungen“ > „Feeds“ einrichten
So konfigurieren Sie einen Feed:
- Rufen Sie die SIEM-Einstellungen > Feeds auf.
- Klicken Sie auf Neuen Feed hinzufügen.
- Klicken Sie auf der nächsten Seite auf Einen einzelnen Feed konfigurieren.
- Geben Sie im Feld Feed name (Feedname) einen Namen für den Feed ein, z. B. Imperva Incapsula WAF Logs (Imperva Incapsula WAF-Logs).
- Wählen Sie Drittanbieter-API als Quelltyp aus.
- Wählen Sie Imperva als Logtyp aus.
- Klicken Sie auf Weiter.
- Geben Sie Werte für die folgenden Eingabeparameter an:
- HTTP-Header für die Authentifizierung: Geben Sie die Imperva-API-ID und den Schlüssel in zwei Zeilen ein:
apiId:<YOUR_API_ID>
undapiKey:<YOUR_API_KEY>
.
- HTTP-Header für die Authentifizierung: Geben Sie die Imperva-API-ID und den Schlüssel in zwei Zeilen ein:
- Klicken Sie auf Weiter.
- Prüfen Sie die Feedkonfiguration auf dem Bildschirm Finalize (Abschließen) und klicken Sie dann auf Submit (Senden).
Feeds über den Content Hub einrichten
Geben Sie Werte für die folgenden Felder an:
- HTTP-Header für die Authentifizierung: Geben Sie die Imperva-API-ID und den Schlüssel in zwei Zeilen ein:
apiId:<YOUR_API_ID>
undapiKey:<YOUR_API_KEY>
.
Erweiterte Optionen
- Feedname: Ein vorausgefüllter Wert, der den Feed identifiziert.
- Quelltyp: Methode, die zum Erfassen von Logs in Google SecOps verwendet wird.
- Asset-Namespace: Der Namespace, der dem Feed zugeordnet ist.
- Aufnahmelabels: Labels, die auf alle Ereignisse aus diesem Feed angewendet werden.
Imperva WAF-Logs mit Amazon S3 erfassen
AWS IAM und S3 konfigurieren
- Erstellen Sie einen Amazon S3-Bucket. Folgen Sie dazu der Anleitung unter Bucket erstellen.
- Speichern Sie den Namen und die Region des Buckets für die spätere Verwendung.
- Erstellen Sie einen Nutzer gemäß dieser Anleitung: IAM-Nutzer erstellen.
- Wählen Sie den erstellten Nutzer aus.
- Wählen Sie den Tab Sicherheitsanmeldedaten aus.
- Klicken Sie im Abschnitt Zugriffsschlüssel auf Zugriffsschlüssel erstellen.
- Wählen Sie als Anwendungsfall Drittanbieterdienst aus.
- Klicken Sie auf Weiter.
- Optional: Fügen Sie ein Beschreibungstag hinzu.
- Klicken Sie auf Zugriffsschlüssel erstellen.
- Klicken Sie auf CSV-Datei herunterladen und speichern Sie den Access Key (Zugriffsschlüssel) und den Secret Access Key (geheimer Zugriffsschlüssel) für die spätere Verwendung.
- Klicken Sie auf Fertig.
- Wählen Sie den Tab Berechtigungen aus.
- Klicken Sie im Bereich Berechtigungsrichtlinien auf Berechtigungen hinzufügen.
- Wählen Sie Berechtigungen hinzufügen aus.
- Wählen Sie Richtlinien direkt anhängen aus.
- Suchen Sie nach der Richtlinie AmazonS3FullAccess und wählen Sie sie aus.
- Klicken Sie auf Weiter.
- Klicken Sie auf Berechtigungen hinzufügen.
Imperva WAF-Amazon S3-Verbindung konfigurieren
- Melden Sie sich mit einem privilegierten Konto in der Imperva Console an.
- Rufen Sie Logs> Log Setup auf.
- Wählen Sie Amazon S3 aus.
- Füllen Sie die Pflichtfelder aus:
- Zugriffsschlüssel
- Geheimer Schlüssel
- Pfad: Geben Sie den Pfad im folgenden Format ein:
<Amazon S3 bucket name>/<log folder>
. Beispiel:MyBucket/MyIncapsulaLogFolder
.
- Klicken Sie auf Verbindung testen, um einen vollständigen Testzyklus durchzuführen, bei dem eine Testdatei in den angegebenen Ordner übertragen wird.
- Wählen Sie CEF als Format für die Logdateien aus.
- Standardmäßig werden Logdateien komprimiert. Legen Sie die Option fest, Dateien nicht zu komprimieren.
Feed in Google SecOps konfigurieren, um Imperva WAF-Logs aus Amazon S3 aufzunehmen
- Rufen Sie die SIEM-Einstellungen> Feeds auf.
- Klicken Sie auf Neu hinzufügen.
- Geben Sie im Feld Feed name (Feedname) einen Namen für den Feed ein, z. B.
Imperva WAF Logs
. - Wählen Sie Amazon S3 als Quelltyp aus.
- Wählen Sie Imperva als Logtyp aus.
- Klicken Sie auf Weiter.
Geben Sie Werte für die folgenden Eingabeparameter an:
- Region: Die Region, in der sich der Amazon S3-Bucket befindet.
- S3-URI: Der Bucket-URI.
s3://your-log-bucket-name/
- Ersetzen Sie
your-log-bucket-name
durch den tatsächlichen Namen des Buckets.
- URI ist ein: Wählen Sie Verzeichnis oder Verzeichnis mit Unterverzeichnissen aus.
- Optionen zum Löschen der Quelle: Wählen Sie die gewünschte Option aus.
- Access Key ID (Zugriffsschlüssel-ID): Der Nutzerzugriffsschlüssel mit Zugriff auf den S3-Bucket.
- Secret Access Key (Geheimer Zugriffsschlüssel): Der geheime Schlüssel des Nutzers mit Zugriff auf den S3-Bucket.
- Asset-Namespace: der Asset-Namespace.
- Aufnahmelabels: Das Label, das auf die Ereignisse aus diesem Feed angewendet werden soll.
Klicken Sie auf Weiter.
Prüfen Sie die neue Feedkonfiguration auf dem Bildschirm Abschließen und klicken Sie dann auf Senden.
UDM-Zuordnungstabelle
Logfeld | UDM-Zuordnung | Logik |
---|---|---|
Die Konto-ID von Tinfoil Security | target.user.userid | Die Konto-ID aus dem JSON-Objekt |
handeln | security_result.action | Wenn act gleich allowed oder alert ist oder mit REQ_PASSED oder REQ_CACHED beginnt, wird ALLOW festgelegt. Wenn act gleich deny oder blocked ist oder mit REQ_BLOCKED oder REQ_CHALLENGE beginnt, wird BLOCK festgelegt. Wenn act mit dem regulären Ausdruck (?i)REQ_BAD übereinstimmt, wird FAIL festgelegt. Andernfalls legen Sie UNKNOWN_ACTION fest. |
App | network.application_protocol | Umbenannt von kv.app . In Großbuchstaben umgewandelt. |
calCountryOrRegion | principal.location.country_or_region | Umbenannt von calCountryOrRegion . |
Katze | security_result.action_details | Wenn cat mit REQ_PASSED oder REQ_CACHED beginnt, setzen Sie action auf ALLOW und action_details auf eine Beschreibung, die auf dem Wert von cat basiert. Wenn cat mit REQ_BAD beginnt, legen Sie action auf FAIL und action_details auf eine Beschreibung basierend auf dem Wert von cat fest. Wenn cat mit REQ_BLOCKED oder REQ_CHALLENGE beginnt, setzen Sie action auf BLOCK und action_details auf eine Beschreibung, die auf dem Wert von cat basiert. |
cicode | principal.location.city | Umbenannt von cicode . |
classified_client | security_result.detection_fields | Wenn classified_client nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel classified_client und dem Wert classified_client . |
client.domain | hauptkonto.hostname, hauptkonto.asset.hostname | Umbenannt von client.domain . |
client.geo.country_iso_code | principal.location.country_or_region | Umbenannt von client.geo.country_iso_code . |
client.ip | principal.ip, principal.asset.ip | Mit principal.ip und principal.asset.ip zusammengeführt. |
cn1 | network.http.response_code | Umbenannt von cn1 . In Ganzzahl konvertiert. |
context_key | target.resource.name | Umbenannt von context_key . |
country | principal.location.country_or_region | Umbenannt von country . |
credentials_leaked | security_result.detection_fields | In String umgewandelt. Falls nicht leer, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel credentials_leaked und dem Wert credentials_leaked . |
cs1 | security_result.detection_fields | Wenn cs1 nicht leer ist, NA oder `, create a new detection_fieldsentry with key cs1Labeland value cs1`. |
cs1Label | security_result.detection_fields | Wird als Schlüssel für den detection_fields -Eintrag verwendet, der aus cs1 erstellt wurde. |
cs2 | security_result.detection_fields | Wenn cs2 nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel cs2Label und dem Wert cs2 . |
cs2Label | security_result.detection_fields | Wird als Schlüssel für den detection_fields -Eintrag verwendet, der aus cs2 erstellt wurde. |
cs3 | security_result.detection_fields | Wenn cs3 nicht leer ist, - oder `, create a new detection_fieldsentry with key cs3Labeland value cs3`. |
cs3Label | security_result.detection_fields | Wird als Schlüssel für den detection_fields -Eintrag verwendet, der aus cs3 erstellt wurde. |
cs4 | security_result.detection_fields | Wenn cs4 nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel cs4Label und dem Wert cs4 . |
cs4Label | security_result.detection_fields | Wird als Schlüssel für den detection_fields -Eintrag verwendet, der aus cs4 erstellt wurde. |
cs5 | security_result.detection_fields | Wenn cs5 nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel cs5Label und dem Wert cs5 . |
cs5Label | security_result.detection_fields | Wird als Schlüssel für den detection_fields -Eintrag verwendet, der aus cs5 erstellt wurde. |
cs6 | principal.application | Umbenannt von cs6 . |
cs7 | principal.location.region_latitude | Wenn cs7Label latitude ist, wird sie in principal.location.region_latitude umbenannt. In Gleitkommazahl konvertiert. |
cs7Label | Wenn cs7Label latitude ist, wird die Zuordnung von cs7 bestimmt. |
|
cs8 | principal.location.region_longitude | Wenn cs8Label longitude ist, wird sie in principal.location.region_longitude umbenannt. In Gleitkommazahl konvertiert. |
cs8Label | Wenn cs8Label longitude ist, wird die Zuordnung von cs8 bestimmt. |
|
cs9 | security_result.rule_name, extensions.vulns.vulnerabilities.name | Wenn cs9 nicht leer ist, legen Sie security_result.rule_name fest und erstellen Sie einen neuen vulnerabilities -Eintrag mit dem Namen cs9 . |
Kunde | target.user.user_display_name | Umbenannt von Customer . |
declared_client | security_result.detection_fields | Wenn declared_client nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel declared_client und dem Wert declared_client . |
description | security_result.threat_name | Umbenannt von description . |
deviceExternalId | network.community_id | Umbenannt von deviceExternalId . |
deviceReceiptTime | metadata.event_timestamp | Als Datum geparst und auf metadata.event_timestamp festgelegt. Wenn leer, wird stattdessen log_timestamp oder kv.start verwendet. |
dhost | target.hostname | Umbenannt von kv.dhost . |
dproc | security_result.category_details | Umbenannt von dproc . |
dpt | target.port | Umbenannt von kv.dpt . In Ganzzahl konvertiert. |
dst | target.ip, target.asset.ip | Wenn dst nicht leer ist, wird es in target.ip und target.asset.ip zusammengeführt. |
dstPort | target.port | Umbenannt von dstPort . In Ganzzahl konvertiert. |
duser | target.user.userid | Wenn duser nicht mit dem regulären Ausdruck .*?Alert.* übereinstimmt und nicht leer ist, wird es in target.user.userid umbenannt. |
Ende | security_result.detection_fields | Wenn end nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel event_end_time und dem Wert end . |
event.id | Die Ereignis-ID aus dem JSON-Objekt | |
event.provider | principal.user.user_display_name | Umbenannt von event.provider . |
failed_logins_last_24h | security_result.detection_fields | In String umgewandelt. Falls nicht leer, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel failed_logins_last_24h und dem Wert failed_logins_last_24h . |
fileId | network.session_id | Umbenannt von fileId . |
filePermission | security_result.detection_fields | Wenn filePermission nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel filePermission und dem Wert filePermission . |
fileType | security_result.detection_fields | Wenn fileType nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel fileType und dem Wert fileType . |
Fingerprint | security_result.detection_fields | Wenn fingerprint nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel log_imperva_fingerprint und dem Wert fingerprint . |
flexString1 | network.http.response_code | Umbenannt von kv.flexString1 . In Ganzzahl konvertiert. |
http.request.body.bytes | network.sent_bytes | In eine vorzeichenlose Ganzzahl konvertiert. Umbenannt von http.request.body.bytes . |
http.request.method | network.http.method | Umbenannt von http.request.method . |
imperva.abp.apollo_rule_versions | security_result.detection_fields | Erstellen Sie für jeden Eintrag in imperva.abp.apollo_rule_versions einen neuen detection_fields -Eintrag mit dem Schlüssel apollo_rule_versions_{index} und dem Wert, der dem Eintrag entspricht. |
imperva.abp.bot_behaviors | security_result.detection_fields | Erstellen Sie für jeden Eintrag in imperva.abp.bot_behaviors einen neuen detection_fields -Eintrag mit dem Schlüssel bot_behaviors_{index} und dem Wert, der dem Eintrag entspricht. |
imperva.abp.bot_deciding_condition_ids | security_result.detection_fields | Erstellen Sie für jeden Eintrag in imperva.abp.bot_deciding_condition_ids einen neuen detection_fields -Eintrag mit dem Schlüssel bot_deciding_condition_ids_{index} und dem Wert, der dem Eintrag entspricht. |
imperva.abp.bot_deciding_condition_names | security_result.detection_fields | Erstellen Sie für jeden Eintrag in imperva.abp.bot_deciding_condition_names einen neuen detection_fields -Eintrag mit dem Schlüssel bot_deciding_condition_names_{index} und dem Wert, der dem Eintrag entspricht. |
imperva.abp.bot_triggered_condition_ids | security_result.detection_fields | Erstellen Sie für jeden Eintrag in imperva.abp.bot_triggered_condition_ids einen neuen detection_fields -Eintrag mit dem Schlüssel bot_triggered_condition_ids_{index} und dem Wert, der dem Eintrag entspricht. |
imperva.abp.bot_triggered_condition_names | security_result.detection_fields | Erstellen Sie für jeden Eintrag in imperva.abp.bot_triggered_condition_names einen neuen detection_fields -Eintrag mit dem Schlüssel bot_triggered_condition_names_{index} und dem Wert, der dem Eintrag entspricht. |
imperva.abp.bot_violations | security_result.detection_fields | Erstellen Sie für jeden Eintrag in imperva.abp.bot_violations einen neuen detection_fields -Eintrag mit dem Schlüssel bot_violations_{index} und dem Wert, der dem Eintrag entspricht. |
imperva.abp.customer_request_id | network.session_id | Umbenannt von imperva.abp.customer_request_id . |
imperva.abp.headers_accept_encoding | security_result.detection_fields | Wenn imperva.abp.headers_accept_encoding nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel Accept Encoding und dem Wert imperva.abp.headers_accept_encoding . |
imperva.abp.headers_accept_language | security_result.detection_fields | Wenn imperva.abp.headers_accept_language nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel Accept Language und dem Wert imperva.abp.headers_accept_language . |
imperva.abp.headers_connection | security_result.detection_fields | Wenn imperva.abp.headers_connection nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel headers_connection und dem Wert imperva.abp.headers_connection . |
imperva.abp.headers_referer | network.http.referral_url | Umbenannt von imperva.abp.headers_referer . |
imperva.abp.hsig | security_result.detection_fields | Wenn imperva.abp.hsig nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel hsig und dem Wert imperva.abp.hsig . |
imperva.abp.monitor_action | security_result.action, security_result.severity | Wenn imperva.abp.monitor_action mit dem regulären Ausdruck (?i)allow übereinstimmt, setzen Sie security_action auf ALLOW und severity auf INFORMATIONAL . Wenn imperva.abp.monitor_action mit dem regulären Ausdruck (?i)captcha oder (?i)block übereinstimmt, setzen Sie security_action auf BLOCK . |
imperva.abp.pid | principal.process.pid | Umbenannt von imperva.abp.pid . |
imperva.abp.policy_id | security_result.detection_fields | Wenn imperva.abp.policy_id nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel Policy Id und dem Wert imperva.abp.policy_id . |
imperva.abp.policy_name | security_result.detection_fields | Wenn imperva.abp.policy_name nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel Policy Name und dem Wert imperva.abp.policy_name . |
imperva.abp.random_id | additional.fields | Wenn imperva.abp.random_id nicht leer ist, erstellen Sie einen neuen additional.fields -Eintrag mit dem Schlüssel Random Id und dem Wert imperva.abp.random_id . |
imperva.abp.request_type | principal.labels | Wenn imperva.abp.request_type nicht leer ist, erstellen Sie einen neuen principal.labels -Eintrag mit dem Schlüssel request_type und dem Wert imperva.abp.request_type . |
imperva.abp.selector | security_result.detection_fields | Wenn imperva.abp.selector nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel selector und dem Wert imperva.abp.selector . |
imperva.abp.selector_derived_id | security_result.detection_fields | Wenn imperva.abp.selector_derived_id nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel selector_derived_id und dem Wert imperva.abp.selector_derived_id . |
imperva.abp.tls_fingerprint | security_result.description | Umbenannt von imperva.abp.tls_fingerprint . |
imperva.abp.token_id | target.resource.product_object_id | Umbenannt von imperva.abp.token_id . |
imperva.abp.zuid | additional.fields | Wenn imperva.abp.zuid nicht leer ist, erstellen Sie einen neuen additional.fields -Eintrag mit dem Schlüssel zuid und dem Wert imperva.abp.zuid . |
imperva.additional_factors | additional.fields | Erstellen Sie für jeden Eintrag in imperva.additional_factors einen neuen additional.fields -Eintrag mit dem Schlüssel additional_factors_{index} und dem Wert, der dem Eintrag entspricht. |
imperva.audit_trail.event_action | security_result.detection_fields | Wenn imperva.audit_trail.event_action nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel imperva.audit_trail.event_action und dem Wert imperva.audit_trail.event_action_description . |
imperva.audit_trail.event_action_description | security_result.detection_fields | Wird als Wert für den detection_fields -Eintrag verwendet, der aus imperva.audit_trail.event_action erstellt wurde. |
imperva.audit_trail.event_context | security_result.detection_fields | Wenn imperva.audit_trail.event_context nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel imperva.audit_trail.event_context und dem Wert imperva.audit_trail.event_context_description . |
imperva.audit_trail.event_context_description | security_result.detection_fields | Wird als Wert für den detection_fields -Eintrag verwendet, der aus imperva.audit_trail.event_context erstellt wurde. |
imperva.country | principal.location.country_or_region | Umbenannt von imperva.country . |
imperva.declared_client | security_result.detection_fields | Wenn imperva.declared_client nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel declared_client und dem Wert imperva.declared_client . |
imperva.device_reputation | additional.fields | Erstellen Sie für jeden Eintrag in imperva.device_reputation einen neuen additional.fields -Eintrag mit dem Schlüssel device_reputation und einem Listenwert, der den Eintrag enthält. |
imperva.domain_risk | security_result.detection_fields | Wenn imperva.domain_risk nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel domain_risk und dem Wert imperva.domain_risk . |
imperva.failed_logins_last_24h | security_result.detection_fields | In String umgewandelt. Falls nicht leer, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel failed_logins_last_24h und dem Wert failed_logins_last_24h . |
imperva.fingerprint | security_result.detection_fields | Wenn imperva.fingerprint nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel log_imperva_fingerprint und dem Wert imperva.fingerprint . |
imperva.ids.account_id | metadata.product_log_id | Umbenannt von imperva.ids.account_id . |
imperva.ids.account_name | metadata.product_event_type | Umbenannt von imperva.ids.account_name . |
imperva.ids.site_id | additional.fields | Wenn imperva.ids.site_id nicht leer ist, erstellen Sie einen neuen additional.fields -Eintrag mit dem Schlüssel site_id und dem Wert imperva.ids.site_id . |
imperva.ids.site_name | additional.fields | Wenn imperva.ids.site_name nicht leer ist, erstellen Sie einen neuen additional.fields -Eintrag mit dem Schlüssel site_name und dem Wert imperva.ids.site_name . |
imperva.referrer | network.http.referral_url | Umbenannt von imperva.referrer . |
imperva.request_session_id | network.session_id | Umbenannt von imperva.request_session_id . |
imperva.request_user | security_result.detection_fields | Wenn imperva.request_user nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel request_user und dem Wert imperva.request_user . |
imperva.risk_level | security_result.severity_details | Umbenannt von imperva.risk_level . |
imperva.risk_reason | security_result.description | Umbenannt von imperva.risk_reason . |
imperva.significant_domain_name | security_result.detection_fields | Wenn imperva.significant_domain_name nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel significant_domain_name und dem Wert imperva.significant_domain_name . |
imperva.violated_directives | security_result.detection_fields | Erstellen Sie für jeden Eintrag in imperva.violated_directives einen neuen detection_fields -Eintrag mit dem Schlüssel violated_directives und dem Wert, der dem Eintrag entspricht. |
in | network.received_bytes | Umbenannt von in . In eine vorzeichenlose Ganzzahl konvertiert. |
log_timestamp | metadata.event_timestamp | Wenn deviceReceiptTime und kv.start leer sind, wird metadata.event_timestamp festgelegt. |
Nachricht | metadata.description | Wenn message nicht leer ist und event.provider , imperva.ids.account_name und client.ip alle leer sind, wird metadata.description festgelegt. |
postbody | security_result.detection_fields | Wenn postbody nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel post_body_info und dem Wert postbody . |
Proto | network.application_protocol | Umbenannt von proto . |
protoVer | network.tls.version, network.tls.cipher | Wenn protoVer nicht leer ist, wird sie geparst, um tls_version und tls_cipher zu extrahieren, die dann in network.tls.version bzw. network.tls.cipher umbenannt werden. |
Anfrage | target.url | Umbenannt von kv.request . |
requestClientApplication | network.http.user_agent | Umbenannt von requestClientApplication . |
requestMethod | network.http.method | Umbenannt von requestMethod . In Großbuchstaben umgewandelt. |
resource_id | target.resource.id | Umbenannt von resource_id . |
resource_type_key | target.resource.type | Umbenannt von resource_type_key . |
rt | metadata.event_timestamp | Wird geparst, um deviceReceiptTime zu extrahieren, das dann als Datum geparst und auf metadata.event_timestamp gesetzt wird. |
security_result.action | security_result.action | Mit dem Wert des Felds _action zusammengeführt. |
security_result.severity | security_result.severity | Wenn sevs gleich error oder warning ist, wird HIGH festgelegt. Wenn sevs critical ist, legen Sie CRITICAL fest. Wenn sevs gleich medium oder notice ist, wird MEDIUM festgelegt. Wenn sevs gleich information oder info ist, wird LOW festgelegt. |
server.domain | target.hostname, target.asset.hostname | Umbenannt von server.domain . |
server.geo.name | target.location.name | Umbenannt von server.geo.name . |
die Ausprägung | security_result.threat_id | Umbenannt von severity . |
siteid | security_result.detection_fields | Wenn siteid nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel siteid und dem Wert siteid . |
sourceServiceName | target.hostname | Umbenannt von kv.sourceServiceName . |
spt | principal.port | Umbenannt von kv.spt . In Ganzzahl konvertiert. |
src | principal.ip, principal.asset.ip | Wenn src nicht leer ist, wird es in principal.ip und principal.asset.ip zusammengeführt. |
srcPort | principal.port | Umbenannt von srcPort . In Ganzzahl konvertiert. |
start | security_result.detection_fields, metadata.event_timestamp | Wenn start nicht leer ist, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel event_start_time und dem Wert start . Wird auch als Datum geparst und auf metadata.event_timestamp festgelegt, wenn deviceReceiptTime leer ist. |
successful_logins_last_24h | security_result.detection_fields | In String umgewandelt. Falls nicht leer, erstellen Sie einen neuen detection_fields -Eintrag mit dem Schlüssel successful_logins_last_24h und dem Wert successful_logins_last_24h . |
suid | target.user.userid | Umbenannt von suid . |
Zeit | metadata.event_timestamp | In String umgewandelt. Als Datum geparst und auf metadata.event_timestamp festgelegt. |
type_key | metadata.product_event_type | Umbenannt von type_key . |
URL | target.process.file.full_path | Wenn url.path nicht leer oder / ist, setze den Wert auf target.process.file.full_path . |
URL | target.url | Umbenannt von url . Wenn qstr nicht leer ist, wird es mit dem Trennzeichen ? an url angehängt. |
user.email | principal.user.email_addresses | Wenn user.email nicht leer ist und mit dem regulären Ausdruck ^.+@.+$ übereinstimmt, wird es in principal.user.email_addresses zusammengeführt. |
user_agent | network.http.user_agent | Umbenannt von user_agent . |
user_agent.original | network.http.parsed_user_agent | Wenn user_agent.original nicht leer oder * ist, wird es in parseduseragent konvertiert und in network.http.parsed_user_agent umbenannt. |
user_details | principal.user.email_addresses | Wenn user_details nicht leer ist und mit dem regulären Ausdruck ^.+@.+$ übereinstimmt, wird es in principal.user.email_addresses zusammengeführt. |
user_id | principal.user.userid | Umbenannt von user_id . |
ver | network.tls.version, network.tls.cipher | Wenn ver nicht leer ist, wird sie geparst, um tls_version und tls_cipher zu extrahieren, die dann in network.tls.version bzw. network.tls.cipher umbenannt werden. |
xff | intermediary.ip, intermediary.asset.ip, intermediary.hostname, intermediary.asset.hostname | Wenn xff nicht leer ist, wird es verarbeitet, um IP-Adressen und Hostnamen zu extrahieren. IP-Adressen werden in intermediary.ip und intermediary.asset.ip zusammengeführt. Hostnamen sind auf intermediary.hostname und intermediary.asset.hostname festgelegt. |
Benötigen Sie weitere Hilfe? Antworten von Community-Mitgliedern und Google SecOps-Experten erhalten