Netskope-Benachrichtigungslogs v1 erfassen

Unterstützt in:

Übersicht

Dieser Parser extrahiert Netskope-Warnungslogs aus JSON-formatierten Nachrichten und wandelt sie in das UDM von Google Security Operations um. Sie normalisiert Felder, parst Zeitstempel, verarbeitet Benachrichtigungen und Schweregrade, extrahiert Netzwerkinformationen (IPs, Ports, Protokolle), reichert Nutzer- und Dateidaten an und ordnet Felder der UDM-Struktur zu. Der Parser verarbeitet auch bestimmte Netskope-Aktivitäten wie Logins und DLP-Ereignisse und fügt benutzerdefinierte Labels für zusätzlichen Kontext hinzu.

Hinweise

Prüfen Sie, ob die folgenden Voraussetzungen erfüllt sind:

  • Google SecOps-Instanz.
  • Privilegierter Zugriff auf Netskope.

Netskope REST API-Zugriff aktivieren

  1. Melden Sie sich mit Ihren Administratoranmeldedaten im Netskope-Mandanten an.
  2. Rufen Sie die Einstellungen > Tools > REST API v1 auf.
  3. Erstellen Sie einen neuen API-Schlüssel speziell für Google SecOps.
  4. Geben Sie einen aussagekräftigen Namen an, z. B. Google SecOps Key.
  5. Kopieren und speichern Sie den generierten Schlüssel und das Secret.

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:

  1. Rufen Sie die SIEM-Einstellungen > Feeds auf.
  2. Klicken Sie auf Neuen Feed hinzufügen.
  3. Klicken Sie auf der nächsten Seite auf Einen einzelnen Feed konfigurieren.
  4. Geben Sie im Feld Feed name (Feedname) einen Namen für den Feed ein, z. B. Netskope Alert Logs (Netskope-Benachrichtigungsprotokolle).
  5. Wählen Sie Drittanbieter-API als Quelltyp aus.
  6. Wählen Sie Netskope als Logtyp aus.
  7. Klicken Sie auf Weiter.
  8. Geben Sie Werte für die folgenden Eingabeparameter an:
    • Authentifizierungs-HTTP-Header:Schlüsselpaar, das zuvor im <key>:<secret>-Format generiert wurde und zur Authentifizierung bei der Netskope API verwendet wird.
    • API-Hostname:Der FQDN (Fully Qualified Domain Name) Ihres Netskope REST API-Endpunkt, z. B. myinstance.goskope.com.
    • API-Endpunkt:Geben Sie alerts ein.
    • Inhaltstyp:Geben Sie all ein.
  9. Klicken Sie auf Weiter.
  10. 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:

  • Authentifizierungs-HTTP-Header:Schlüsselpaar, das zuvor im <key>:<secret>-Format generiert wurde und zur Authentifizierung bei der Netskope API verwendet wird.
  • API-Hostname:Der FQDN (Fully Qualified Domain Name) Ihres Netskope REST API-Endpunkt, z. B. myinstance.goskope.com.
  • API-Endpunkt:Geben Sie alerts ein.
  • Inhaltstyp:Geben Sie all ein.

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.

Optional: Feedkonfiguration zum Erfassen von Netskope-Ereignisprotokollen hinzufügen

  1. Rufen Sie die SIEM-Einstellungen > Feeds auf.
  2. Klicken Sie auf Neu hinzufügen.
  3. Geben Sie im Feld Feedname einen Namen für den Feed ein, z. B. Netskope Event Logs (Netskope-Ereignisprotokolle).
  4. Wählen Sie Drittanbieter-API als Quelltyp aus.
  5. Wählen Sie Netskope als Logtyp aus.
  6. Klicken Sie auf Weiter.
  7. Geben Sie Werte für die folgenden Eingabeparameter an:
    • Authentifizierungs-HTTP-Header:Schlüsselpaar, das zuvor im <key>:<secret>-Format generiert wurde und zur Authentifizierung bei der Netskope API verwendet wird.
    • API-Hostname:Der FQDN (Fully Qualified Domain Name) Ihres Netskope REST API-Endpunkt, z. B. myinstance.goskope.com.
    • API-Endpunkt:Geben Sie events ein.
    • Inhaltstyp:Geben Sie page, application, audit, infrastructure oder network ein, je nachdem, welche Ereignisse Sie parsen möchten.
    • Asset-Namespace: der Asset-Namespace.
    • Aufnahmelabels: Das Label, das auf die Ereignisse aus diesem Feed angewendet wird.
  8. Klicken Sie auf Weiter.
  9. Prüfen Sie die Feedkonfiguration auf dem Bildschirm Finalize (Abschließen) und klicken Sie dann auf Submit (Senden).

UDM-Zuordnungstabelle

Logfeld UDM-Zuordnung Logik
access_method extensions.auth.auth_details Direkt aus dem Feld access_method zugeordnet.
action security_result.action Direkt aus dem Feld action zugeordnet oder auf QUARANTINE festgelegt, wenn action „alert“ oder „bypass“ ist. ALLOW, wenn action zulässig ist. BLOCK, wenn action blockiert ist.
action security_result.action_details Wird aus dem Feld action zugeordnet, wenn es „alert“ oder „bypass“ ist.
activity security_result.description Direkt aus dem Feld activity zugeordnet.
alert is_alert Wird auf true gesetzt, wenn alert „yes“ ist, andernfalls auf false.
alert_name - Nicht dem IDM-Objekt zugeordnet.
alert_type security_result.category_details Direkt aus dem Feld alert_type zugeordnet.
app target.application Direkt aus dem Feld app zugeordnet.
app_activity additional.fields{key:"app_activity", value:{string_value: }} Direkt aus dem Feld app_activity als Schlüssel/Wert-Paar in additional.fields zugeordnet.
app_session_id target.resource.attribute.labels{key:"App Session Id", value: } Aus dem Feld message mit grok extrahiert und als Label hinzugefügt.
appcategory security_result.category_details Direkt aus dem Feld appcategory zugeordnet, wenn category leer ist.
browser network.http.user_agent Direkt aus dem Feld browser zugeordnet, sofern nicht „unbekannt“.
browser_version network.http.parsed_user_agent.browser_version Direkt aus dem Feld browser_version zugeordnet.
browser_version network.http.parsed_user_agent.family Wird auf „USER_DEFINED“ gesetzt, wenn browser_version vorhanden ist.
category security_result.category_details Direkt aus dem Feld category zugeordnet.
cci security_result.detection_fields{key:"cci", value: } Direkt aus dem Feld cci als Schlüssel/Wert-Paar in detection_fields zugeordnet.
ccl security_result.confidence Wird basierend auf dem Wert von ccl festgelegt: „schlecht“ oder „niedrig“ wird LOW_CONFIDENCE zugeordnet, „mittel“ MEDIUM_CONFIDENCE und „hoch“ oder „ausgezeichnet“ HIGH_CONFIDENCE.
ccl security_result.confidence_details Direkt aus dem Feld ccl zugeordnet.
client_bytes network.sent_bytes Direkt aus dem Feld client_bytes abgeleitet, nachdem es in eine vorzeichenlose Ganzzahl konvertiert wurde.
count additional.fields{key:"count", value:{string_value: }} Direkt aus dem Feld count als Schlüssel/Wert-Paar in additional.fields zugeordnet.
device principal.resource.resource_subtype Direkt aus dem Feld device zugeordnet.
device principal.resource.type Wird auf „DEVICE“ gesetzt, wenn das Feld device vorhanden ist.
dlp_file target.file.full_path Direkt aus dem Feld dlp_file, falls vorhanden, ansonsten aus file_path.
dlp_profile security_result.rule_type Direkt aus dem Feld dlp_profile zugeordnet.
dlp_rule security_result.rule_name Direkt aus dem Feld dlp_rule zugeordnet.
dlp_rule_severity security_result.severity Direkt aus dem Feld dlp_rule_severity zugeordnet, wenn alert_type DLP ist.
dlp_rule_severity _severity Wird aus dem Feld dlp_rule_severity zugeordnet, wenn severity leer ist.
domain target.asset.hostname Direkt aus dem Feld domain zugeordnet.
domain target.hostname Direkt aus dem Feld domain zugeordnet.
dsthost target.asset.hostname Wird direkt aus dem Feld dsthost zugeordnet, wenn es sich nicht um eine IP-Adresse handelt und dstip leer ist. Andernfalls wird es target.hostname zugeordnet.
dsthost target.hostname Direkt aus dem Feld dsthost zugeordnet, wenn es sich nicht um eine IP-Adresse handelt und dstip nicht leer ist.
dstip target.asset.ip Direkt aus dem Feld dstip zugeordnet.
dstip target.ip Direkt aus dem Feld dstip zugeordnet.
dstport target.port Direkt aus dem Feld dstport zugeordnet, nachdem es in eine Ganzzahl konvertiert wurde.
dst_country target.location.country_or_region Direkt aus dem Feld dst_country zugeordnet.
dst_location target.location.city Direkt aus dem Feld dst_location zugeordnet.
dst_region target.location.name Direkt aus dem Feld dst_region zugeordnet.
file_path target.file.full_path Direkt aus dem Feld file_path zugeordnet, wenn dlp_file leer ist.
file_size target.file.size Direkt aus dem Feld file_size abgeleitet, nachdem es in eine vorzeichenlose Ganzzahl konvertiert wurde.
file_type target.file.mime_type Direkt aus dem Feld file_type zugeordnet, sofern nicht „Unbekannt“.
from_user network.email.from Direkt aus dem Feld from_user zugeordnet, wenn es sich um eine E‑Mail-Adresse handelt.
from_user_category principal.resource.attribute.labels{key:"From User Category", value: } Direkt aus dem Feld from_user_category als Schlüssel/Wert-Paar in principal.resource.attribute.labels zugeordnet.
hostname principal.asset.hostname Direkt aus dem Feld hostname zugeordnet, sofern es nicht leer ist, andernfalls aus instance_id.
hostname principal.hostname Direkt aus dem Feld hostname zugeordnet, sofern es nicht leer ist, andernfalls aus instance_id.
id.time metadata.event_timestamp Geparsed und „event_timestamp“ in Metadaten zugeordnet.
instance_id principal.asset.hostname Direkt aus dem Feld instance_id zugeordnet, wenn hostname leer ist.
instance_id principal.hostname Direkt aus dem Feld instance_id zugeordnet, wenn hostname leer ist.
intermediary intermediary Direkt aus dem Feld intermediary zugeordnet.
ip_protocol network.ip_protocol Wird aus dem Feld ip_protocol zugeordnet, nachdem es von der Datei parse_ip_protocol.include geparst wurde.
ja3 network.tls.client.ja3 Direkt aus dem Feld ja3 zugeordnet, wenn es einem hexadezimalen Muster entspricht.
ja3s network.tls.server.ja3s Direkt aus dem Feld ja3s zugeordnet, wenn es einem hexadezimalen Muster entspricht.
malware_id security_result.threat_id Direkt aus dem Feld malware_id zugeordnet.
malware_name security_result.threat_name Direkt aus dem Feld malware_name zugeordnet.
malware_severity security_result.severity Direkt aus dem Feld malware_severity zugeordnet, nachdem es in Großbuchstaben konvertiert wurde.
malware_type security_result.detection_fields{key:"Malware Type", value: } Direkt aus dem Feld malware_type als Schlüssel/Wert-Paar in detection_fields zugeordnet.
matched_username principal.user.email_addresses Direkt aus dem Feld matched_username zugeordnet, wenn es sich um eine E‑Mail-Adresse handelt.
md5 target.file.md5 Direkt aus dem Feld md5 zugeordnet, wenn es nicht leer oder „Nicht verfügbar“ ist.
metadata.event_type metadata.event_type Anfangs auf „GENERIC_EVENT“ festgelegt, wird dann möglicherweise basierend auf anderen Feldern überschrieben. Legen Sie NETWORK_HTTP fest, wenn srcip oder hostname und dstip oder dsthost oder domain vorhanden sind. Wird auf STATUS_UPDATE gesetzt, wenn srcip oder hostname vorhanden sind, aber nicht dstip, dsthost oder domain. Wird auf USER_UNCATEGORIZED gesetzt, wenn user vorhanden ist. Wird auf EMAIL_UNCATEGORIZED gesetzt, wenn activity „Introspection Scan“ ist und shared_with oder from_user vorhanden sind. Auf USER_LOGIN festgelegt, wenn activity „Login Failed“, „Login Successful“ oder „Login Attempt“ ist.
metadata.log_type metadata.log_type Legen Sie diesen Wert auf „NETSKOPE_ALERT“ fest.
metadata.product_log_id metadata.product_log_id Direkt aus dem Feld _id zugeordnet.
metadata.product_name metadata.product_name Auf „Netskope Alert“ festlegen.
metadata.vendor_name metadata.vendor_name Legen Sie diesen Wert auf „Netskope“ fest.
netskope_pop observer.hostname Direkt aus dem Feld netskope_pop zugeordnet.
object additional.fields{key:"Object", value:{string_value: }} Direkt aus dem Feld object als Schlüssel/Wert-Paar in additional.fields zugeordnet.
object_id additional.fields{key:"Object id", value:{string_value: }} Direkt aus dem Feld object_id als Schlüssel/Wert-Paar in additional.fields zugeordnet.
object_type additional.fields{key:"Object type", value:{string_value: }} Direkt aus dem Feld object_type als Schlüssel/Wert-Paar in additional.fields zugeordnet.
organization_unit principal.administrative_domain Direkt aus dem Feld organization_unit zugeordnet.
os principal.platform Zugeordnet aus dem Feld os: „Windows“ wird WINDOWS zugeordnet, „MAC“ MAC und „LINUX“ LINUX.
os_version principal.platform_version Direkt aus dem Feld os_version zugeordnet.
other_categories - Nicht dem IDM-Objekt zugeordnet.
page network.http.referral_url Direkt aus dem Feld page zugeordnet, wenn referer leer ist.
policy security_result.summary Direkt aus dem Feld policy zugeordnet.
principal.user.email_addresses principal.user.email_addresses Wird aus dem Feld user zusammengeführt, wenn es sich um eine E-Mail-Adresse handelt.
protocol network.application_protocol Direkt aus dem Feld protocol abgeleitet, nachdem alles nach dem ersten „/“ entfernt wurde. In Großbuchstaben konvertiert.
publisher_cn additional.fields{key:"publisher_cn", value:{string_value: }} Direkt aus dem Feld publisher_cn als Schlüssel/Wert-Paar in additional.fields zugeordnet.
publisher_name additional.fields{key:"publisher_name", value:{string_value: }} Direkt aus dem Feld publisher_name als Schlüssel/Wert-Paar in additional.fields zugeordnet.
referer network.http.referral_url Direkt aus dem Feld referer zugeordnet.
security_result.alert_state security_result.alert_state Auf „ALERTING“ gesetzt, wenn alert „yes“ ist, auf „NOT_ALERTING“, wenn alert „no“ ist, und auf „UNSPECIFIED“, wenn keine der beiden Bedingungen zutrifft.
security_result.category_details security_result.category_details Zusammengeführt aus den Feldern category, appcategory oder alert_type.
security_result.confidence security_result.confidence Abgeleitet aus dem Feld ccl.
security_result.confidence_details security_result.confidence_details Direkt aus dem Feld ccl zugeordnet.
security_result.description security_result.description Direkt aus dem Feld activity zugeordnet.
security_result.rule_name security_result.rule_name Direkt aus dem Feld dlp_rule zugeordnet.
security_result.rule_type security_result.rule_type Direkt aus dem Feld dlp_profile zugeordnet.
security_result.severity security_result.severity Abgeleitet aus den Feldern _severity, malware_severity oder dlp_rule_severity.
security_result.summary security_result.summary Direkt aus dem Feld policy zugeordnet.
security_result.threat_id security_result.threat_id Direkt aus dem Feld malware_id zugeordnet.
security_result.threat_name security_result.threat_name Direkt aus dem Feld malware_name zugeordnet.
server_bytes network.received_bytes Direkt aus dem Feld server_bytes abgeleitet, nachdem es in eine vorzeichenlose Ganzzahl konvertiert wurde.
severity _severity Direkt aus dem Feld severity zugeordnet.
sha256 target.file.sha256 Direkt aus dem Feld sha256 zugeordnet.
shared_with network.email.to Wird aus dem Feld shared_with geparst und dem Array network.email.to hinzugefügt, wenn es sich um eine E-Mail-Adresse handelt.
site additional.fields{key:"site", value:{string_value: }} Direkt aus dem Feld site als Schlüssel/Wert-Paar in additional.fields zugeordnet.
src_country principal.location.country_or_region Direkt aus dem Feld src_country zugeordnet.
src_latitude principal.location.region_latitude Direkt aus dem Feld src_latitude zugeordnet.
src_location principal.location.city Direkt aus dem Feld src_location zugeordnet.
src_longitude principal.location.region_longitude Direkt aus dem Feld src_longitude zugeordnet.
src_region principal.location.name Direkt aus dem Feld src_region zugeordnet.
srcip principal.asset.ip Aus dem Feld srcip extrahiert, indem grok verwendet wird, und in die Arrays principal.asset.ip und principal.ip zusammengeführt.
srcip principal.ip Aus dem Feld srcip extrahiert, indem grok verwendet wird, und in die Arrays principal.asset.ip und principal.ip zusammengeführt.
srcport principal.port Direkt aus dem Feld srcport zugeordnet, nachdem es in eine Ganzzahl konvertiert wurde.
target.user.email_addresses target.user.email_addresses Wird aus dem Feld to_user zusammengeführt, wenn es sich um eine E-Mail-Adresse handelt.
threat_match_field security_result.detection_fields{key:"Threat Match Field", value: } Direkt aus dem Feld threat_match_field als Schlüssel/Wert-Paar in detection_fields zugeordnet.
timestamp metadata.event_timestamp Aus den Feldern timestamp oder id.time geparst.
to_user target.user.email_addresses Wird aus dem Feld to_user geparst und dem Array target.user.email_addresses hinzugefügt, wenn es sich um eine E-Mail-Adresse handelt.
to_user_category target.resource.attribute.labels{key:"To User Category", value: } Direkt aus dem Feld to_user_category als Schlüssel/Wert-Paar in target.resource.attribute.labels zugeordnet.
traffic_type security_result.detection_fields{key:"traffic_type", value: } Direkt aus dem Feld traffic_type als Schlüssel/Wert-Paar in detection_fields zugeordnet.
tunnel_id additional.fields{key:"tunnel_id", value:{string_value: }} Direkt aus dem Feld tunnel_id als Schlüssel/Wert-Paar in additional.fields zugeordnet.
tunnel_type additional.fields{key:"tunnel_type", value:{string_value: }} Direkt aus dem Feld tunnel_type als Schlüssel/Wert-Paar in additional.fields zugeordnet.
type security_result.detection_fields{key:"type", value: } Direkt aus dem Feld type als Schlüssel/Wert-Paar in detection_fields zugeordnet.
ur_normalized - Nicht dem IDM-Objekt zugeordnet.
url target.url Direkt aus dem Feld url zugeordnet.
user event.idm.read_only_udm.principal.user.userid Direkt aus dem Feld user zugeordnet.
user principal.user.email_addresses Direkt aus dem Feld user zugeordnet, wenn es sich um eine E‑Mail-Adresse handelt.
useragent network.http.user_agent Direkt aus dem Feld useragent zugeordnet.
useragent network.http.parsed_user_agent In „parseduseragent“ konvertiert und network.http.parsed_user_agent zugeordnet.
user_agent network.http.user_agent Direkt aus dem Feld user_agent zugeordnet.
user_agent network.http.parsed_user_agent In „parseduseragent“ konvertiert und network.http.parsed_user_agent zugeordnet.

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