Collecter les journaux du proxy Web Netskope

Compatible avec:

Cet analyseur gère les journaux de proxy Web Netskope au format CEF et non CEF. Il extrait des champs, effectue des transformations de données (par exemple, convertit des codes temporels ou fusionne des champs), les met en correspondance avec l'UDM et ajoute des métadonnées spécifiques à Netskope. L'analyseur utilise une logique conditionnelle pour gérer différents formats de journaux et la disponibilité des champs, enrichissant l'UDM de détails pertinents sur le réseau, la sécurité et les applications.

Avant de commencer

  • Assurez-vous de disposer d'une instance Google Security Operations.
  • Assurez-vous de disposer d'un accès privilégié à Netskope.
  • Assurez-vous de disposer d'un module Log Shipper configuré.
  • Assurez-vous de disposer d'une clé de compte de service Google SecOps (contactez l'équipe Google SecOps pour obtenir un compte de service avec les champs d'application suivants: https://www.googleapis.com/auth/malachite-ingestion).

Obtenir le numéro client Google SecOps

  1. Connectez-vous à la console Google SecOps.
  2. Accédez à Paramètres du SIEM > Profil.
  3. Copiez et sauvegardez le numéro client dans la section Détails de l'organisation.

Configurer le locataire Netskope dans CE

  1. Accédez à Paramètres > Général.
  2. Activez l'option Log Shipper (Expéditeur de journaux).
  3. Dans Settings (Paramètres), accédez à Netskope Tenants (Tenants Netskope).
  4. Si aucun locataire n'est configuré, cliquez sur Ajouter un locataire.
  5. Saisissez les valeurs suivantes :
    • Nom: attribuez un nom facile à retenir à votre locataire.
    • Nom du locataire: saisissez le nom réel de votre locataire Netskope.
    • Jeton d'API V2: saisissez votre jeton d'API Netskope.
    • Filtres d'alerte: ajoutez les alertes du proxy Web que vous souhaitez ingérer.
    • Plage initiale: saisissez la quantité de données historiques que vous souhaitez ingérer (en jours).
    • Cliquez sur Enregistrer.

Configurer le plug-in CLS Netskope

  1. Accédez à Paramètres > Modules complémentaires.
  2. Recherchez et sélectionnez la case Netskope (CLS) pour ouvrir la page de création du plug-in.
  3. Saisissez les informations suivantes :
    • Configuration Name (Nom de la configuration) : saisissez un nom facile à retenir pour ce plug-in.
    • Tenant (Tenant) : sélectionnez le locataire que vous avez créé à l'étape précédente dans la liste.
    • Cliquez sur Suivant.
    • Mettez à jour la liste Type d'événement si nécessaire.
    • Plage initiale: saisissez la quantité de données historiques que vous souhaitez ingérer (en heures).
    • Cliquez sur Enregistrer.

Configurer un plug-in Google SecOps dans Netskope

  1. Accédez à Paramètres > Modules complémentaires.
  2. Recherchez et sélectionnez la case Chronicle (CLS) pour ouvrir la page de création du plug-in.
  3. Saisissez les informations suivantes :
    • Configuration Name (Nom de la configuration) : saisissez un nom pour ce plug-in.
    • Mappage: laissez la sélection par défaut.
    • Activez ON When enabled logs will be transformed using the selected mapping file.
    • Cliquez sur Suivant.
    • Région: sélectionnez la région de votre Google SecOps.
    • URL de la région personnalisée: paramètre facultatif qui n'est requis que si l'option Région personnalisée a été sélectionnée à l'étape précédente.
    • Clé de compte de service: saisissez la clé JSON fournie par Google SecOps.
    • Numéro client: saisissez le numéro client de votre locataire Google SecOps.
    • Cliquez sur Enregistrer.

Configurer une règle métier de l'expéditeur de journaux pour Google SecOps

  1. Accédez à Log Shipper > Règles métier.
  2. Par défaut, une règle métier filtre toutes les alertes et tous les événements.
  3. Si vous souhaitez filtrer un type d'alerte ou d'événement spécifique, cliquez sur Créer une règle, puis configurez une règle métier en ajoutant son nom et son filtre.
  4. Cliquez sur Enregistrer.

Configurer les mappages SIEM de Log Shipper pour Google SecOps

  1. Accédez à Log Shipper > Mappages SIEM.
  2. Cliquez sur Ajouter un mappage SIEM.
  3. Saisissez les informations suivantes :
    • Source Configuration (Source de configuration) : sélectionnez le plug-in CLS Netskope.
    • Configuration de la destination: sélectionnez le plug-in Google SecOps.
    • Règle métier: sélectionnez la règle que vous avez créée précédemment.
    • Cliquez sur Enregistrer.

Valider l'extraction et le workflow des événements et des alertes dans Netskope

  1. Accédez à Journalisation dans Netskope Cloud Exchange.
  2. Recherchez les journaux extraits.
  3. Dans Journalisation, recherchez les événements et les alertes ingérés à l'aide du filtre message contains ingested (Le message contient "ingéré").
  4. Les journaux ingérés seront filtrés.

Tableau de mappage UDM

Champ de journal Mappage UDM Logique
applicationType security_result.detection_fields[].key: "applicationType"
security_result.detection_fields[].value: applicationType
Mappé directement à partir du champ CEF correspondant.
appcategory security_result.category_details[] : appcategory Mappé directement à partir du champ CEF correspondant.
browser security_result.detection_fields[].key: "browser"
security_result.detection_fields[].value: browser
Mappé directement à partir du champ CEF correspondant.
c-ip principal.asset.ip[]: c-ip
principal.ip[]: c-ip
Mappé directement à partir du champ JSON correspondant.
cci security_result.detection_fields[].key: "cci"
security_result.detection_fields[].value: cci
Mappé directement à partir du champ CEF correspondant.
ccl security_result.confidence: valeur dérivée
security_result.confidence_details: ccl
security_result.confidence est dérivé de la valeur de ccl: "excellent" ou "high" correspond à HIGH_CONFIDENCE, "medium" correspond à MEDIUM_CONFIDENCE, "low" ou "poor" correspond à LOW_CONFIDENCE, et "unknown" ou "not_defined" correspond à UNKNOWN_CONFIDENCE.
security_result.confidence_details est mappé directement à partir de ccl.
clientBytes network.sent_bytes : clientBytes Mappé directement à partir du champ CEF correspondant.
cs-access-method additional.fields[].key: "accessMethod"
additional.fields[].value.string_value: cs-access-method
Mappé directement à partir du champ JSON correspondant.
cs-app additional.fields[].key: "x-cs-app"
additional.fields[].value.string_value: cs-app
principal.application: cs-app
Mappé directement à partir du champ JSON correspondant.
cs-app-activity additional.fields[].key: "x-cs-app-activity"
additional.fields[].value.string_value: cs-app-activity
Mappé directement à partir du champ JSON correspondant.
cs-app-category additional.fields[].key: "x-cs-app-category"
additional.fields[].value.string_value: cs-app-category
Mappé directement à partir du champ JSON correspondant.
cs-app-cci additional.fields[].key: "x-cs-app-cci"
additional.fields[].value.string_value: cs-app-cci
Mappé directement à partir du champ JSON correspondant.
cs-app-ccl additional.fields[].key: "x-cs-app-ccl"
additional.fields[].value.string_value: cs-app-ccl
Mappé directement à partir du champ JSON correspondant.
cs-app-from-user additional.fields[].key: "x-cs-app-from-user"
additional.fields[].value.string_value: cs-app-from-user
principal.user.email_addresses[]: cs-app-from-user
Mappé directement à partir du champ JSON correspondant.
cs-app-instance-id additional.fields[].key: "x-cs-app-instance-id"
additional.fields[].value.string_value: cs-app-instance-id
Mappé directement à partir du champ JSON correspondant.
cs-app-object-name additional.fields[].key: "x-cs-app-object-name"
additional.fields[].value.string_value: cs-app-object-name
Mappé directement à partir du champ JSON correspondant.
cs-app-object-type additional.fields[].key: "x-cs-app-object-type"
additional.fields[].value.string_value: cs-app-object-type
Mappé directement à partir du champ JSON correspondant.
cs-app-suite additional.fields[].key: "x-cs-app-suite"
additional.fields[].value.string_value: cs-app-suite
Mappé directement à partir du champ JSON correspondant.
cs-app-tags additional.fields[].key: "x-cs-app-tags"
additional.fields[].value.string_value: cs-app-tags
Mappé directement à partir du champ JSON correspondant.
cs-bytes network.sent_bytes : cs-bytes Mappé directement à partir du champ JSON correspondant.
cs-content-type additional.fields[].key: "sc-content-type"
additional.fields[].value.string_value: cs-content-type
Mappé directement à partir du champ JSON correspondant.
cs-dns target.asset.hostname[]: cs-dns
target.hostname: cs-dns
Mappé directement à partir du champ JSON correspondant.
cs-host target.asset.hostname[]: cs-host
target.hostname: cs-host
Mappé directement à partir du champ JSON correspondant.
cs-method network.http.method : cs-method Mappé directement à partir du champ JSON correspondant.
cs-referer network.http.referral_url : cs-referer Mappé directement à partir du champ JSON correspondant.
cs-uri additional.fields[].key: "cs-uri"
additional.fields[].value.string_value: cs-uri
Mappé directement à partir du champ JSON correspondant.
cs-uri-path additional.fields[].key: "x-cs-uri-path"
additional.fields[].value.string_value: cs-uri-path
Mappé directement à partir du champ JSON correspondant.
cs-uri-port additional.fields[].key: "cs-uri-port"
additional.fields[].value.string_value: cs-uri-port
Mappé directement à partir du champ JSON correspondant.
cs-uri-scheme network.application_protocol : cs-uri-scheme Mappé directement à partir du champ JSON correspondant après conversion en majuscules.
cs-user-agent network.http.parsed_user_agent: user-agent analysé
network.http.user_agent: cs-user-agent
network.http.parsed_user_agent est dérivé de l'analyse du champ cs-user-agent à l'aide du filtre "parseduseragent".
cs-username principal.user.userid : cs-username Mappé directement à partir du champ JSON correspondant.
date metadata.event_timestamp.seconds: secondes d'epoch à partir des champs date et time
metadata.event_timestamp.nanos: 0
La date et l'heure sont combinées et converties en secondes et nanosecondes d'epoch. Les nanosecondes sont définies sur 0.
device intermediary.hostname : device Mappé directement à partir du champ CEF correspondant.
dst target.ip[] : dst Mappé directement à partir du champ CEF correspondant.
dst_country target.location.country_or_region : dst_country Mappé directement à partir du champ grokked correspondant.
dst_ip target.asset.ip[]: dst_ip
target.ip[]: dst_ip
Mappé directement à partir du champ grokked correspondant.
dst_location target.location.city : dst_location Mappé directement à partir du champ grokked correspondant.
dst_region target.location.state : dst_region Mappé directement à partir du champ grokked correspondant.
dst_zip Non mappé Ce champ n'est pas mappé à l'UDM.
duser target.user.email_addresses[]: duser
target.user.user_display_name: duser
Mappé directement à partir du champ CEF correspondant.
dvchost about.hostname: dvchost
target.asset.hostname[]: dvchost
target.hostname: dvchost
Mappé directement à partir du champ CEF correspondant.
event_timestamp metadata.event_timestamp.seconds : event_timestamp Mappé directement à partir du champ grokked correspondant.
hostname target.asset.hostname[]: hostname
target.hostname: hostname
Mappé directement à partir du champ CEF correspondant.
IncidentID security_result.detection_fields[].key: "IncidentID"
security_result.detection_fields[].value: IncidentID
Mappé directement à partir du champ CEF correspondant.
intermediary intermediary: intermediary Mappé directement à partir du champ CEF correspondant.
md5 target.file.md5 : md5 Mappé directement à partir du champ CEF correspondant.
message Divers champs UDM Le champ message est analysé en fonction de son contenu (s'il contient "CEF"). Si c'est le cas, il est traité comme un journal CEF. Sinon, il est analysé en tant que chaîne délimitée par des espaces ou en tant que JSON. Pour en savoir plus, consultez la section "Logique d'analyse".
mime_type1 Non mappé Ce champ n'est pas mappé à l'UDM.
mime_type2 Non mappé Ce champ n'est pas mappé à l'UDM.
mwDetectionEngine additional.fields[].key: "mwDetectionEngine"
additional.fields[].value.string_value: mwDetectionEngine
Mappé directement à partir du champ CEF correspondant.
mwType metadata.description : mwType Mappé directement à partir du champ CEF correspondant.
os principal.platform: valeur dérivée La plate-forme est dérivée du champ os: "Windows" est mappé sur WINDOWS, "MAC" sur MAC et "LINUX" sur LINUX.
page network.http.referral_url : page Mappé directement à partir du champ CEF correspondant.
port Non mappé Ce champ n'est pas mappé à l'UDM.
referer network.http.referral_url : referer Mappé directement à partir du champ CEF correspondant.
requestClientApplication network.http.parsed_user_agent: user-agent analysé
network.http.user_agent: requestClientApplication
network.http.parsed_user_agent est dérivé de l'analyse du champ requestClientApplication à l'aide du filtre "parseduseragent".
request_method network.http.method : request_method Mappé directement à partir du champ grokked correspondant.
request_protocol Non mappé Ce champ n'est pas mappé à l'UDM.
rs-status additional.fields[].key: "rs-status"
additional.fields[].value.string_value: rs-status
network.http.response_code: rs-status
Mappé directement à partir du champ JSON correspondant.
s-ip target.asset.ip[]: s-ip
target.ip[]: s-ip
Mappé directement à partir du champ JSON correspondant.
sc-bytes network.received_bytes : sc-bytes Mappé directement à partir du champ JSON correspondant.
sc-content-type additional.fields[].key: "sc-content-type"
additional.fields[].value.string_value: sc-content-type
Mappé directement à partir du champ JSON correspondant.
sc-status network.http.response_code : sc-status Mappé directement à partir du champ JSON correspondant.
serverBytes network.received_bytes : serverBytes Mappé directement à partir du champ CEF correspondant.
sha256 target.file.sha256 : sha256 Mappé directement à partir du champ CEF correspondant.
src principal.ip[] : src Mappé directement à partir du champ CEF correspondant.
src_country principal.location.country_or_region : src_country Mappé directement à partir du champ grokked correspondant.
src_ip principal.asset.ip[]: src_ip
principal.ip[]: src_ip
Mappé directement à partir du champ grokked correspondant.
src_latitude Non mappé Ce champ n'est pas mappé à l'UDM.
src_location principal.location.city : src_location Mappé directement à partir du champ grokked correspondant.
src_longitude Non mappé Ce champ n'est pas mappé à l'UDM.
src_region principal.location.state : src_region Mappé directement à partir du champ grokked correspondant.
src_zip Non mappé Ce champ n'est pas mappé à l'UDM.
suser principal.user.user_display_name : suser Mappé directement à partir du champ CEF correspondant.
target_host target.asset.hostname[]: target_host
target.hostname: target_host
Mappé directement à partir du champ grokked correspondant.
time metadata.event_timestamp.seconds: secondes d'epoch à partir des champs date et time
metadata.event_timestamp.nanos: 0
La date et l'heure sont combinées et converties en secondes et nanosecondes d'epoch. Les nanosecondes sont définies sur 0.
timestamp metadata.event_timestamp.seconds : timestamp Mappé directement à partir du champ CEF correspondant.
ts metadata.event_timestamp.seconds: secondes depuis l'epoch à partir de ts
metadata.event_timestamp.nanos: 0
Le code temporel est converti en secondes et nanosecondes d'epoch. Les nanosecondes sont définies sur 0.
url target.url : url Mappé directement à partir du champ CEF correspondant.
user_agent network.http.parsed_user_agent: user-agent analysé
network.http.user_agent: user_agent
network.http.parsed_user_agent est dérivé de l'analyse du champ user_agent à l'aide du filtre "parseduseragent".
user_ip Non mappé Ce champ n'est pas mappé à l'UDM.
user_key principal.user.email_addresses[] : user_key Mappé directement à partir du champ grokked correspondant.
version Non mappé Ce champ n'est pas mappé à l'UDM.
x-c-browser additional.fields[].key: "x-c-browser"
additional.fields[].value.string_value: x-c-browser
Mappé directement à partir du champ JSON correspondant.
x-c-browser-version additional.fields[].key: "x-c-browser-version"
additional.fields[].value.string_value: x-c-browser-version
Mappé directement à partir du champ JSON correspondant.
x-c-country principal.location.country_or_region : x-c-country Mappé directement à partir du champ JSON correspondant.
x-c-device additional.fields[].key: "x-c-device"
additional.fields[].value.string_value: x-c-device
Mappé directement à partir du champ JSON correspondant.
x-c-latitude principal.location.region_coordinates.latitude : x-c-latitude Mappé directement à partir du champ JSON correspondant.
x-c-local-time security_result.detection_fields[].key: "x-c-local-time"
security_result.detection_fields[].value: x-c-local-time
Mappé directement à partir du champ JSON correspondant.
x-c-location principal.location.name : x-c-location Mappé directement à partir du champ JSON correspondant.
x-c-longitude principal.location.region_coordinates.longitude : x-c-longitude Mappé directement à partir du champ JSON correspondant.
x-c-os principal.platform: valeur dérivée La plate-forme est dérivée du champ x-c-os: "Windows" est mappé sur WINDOWS, "MAC" sur MAC et "LINUX" sur LINUX.
x-c-region principal.location.state : x-c-region Mappé directement à partir du champ JSON correspondant.
x-c-zipcode additional.fields[].key: "x-c-zipcode"
additional.fields[].value.string_value: x-c-zipcode
Mappé directement à partir du champ JSON correspondant.
x-category additional.fields[].key: "x-category"
additional.fields[].value.string_value: x-category
Mappé directement à partir du champ JSON correspondant.
x-category-id additional.fields[].key: "x-category-id"
additional.fields[].value.string_value: x-category-id
Mappé directement à partir du champ JSON correspondant.
x-cs-access-method additional.fields[].key: "accessMethod"
additional.fields[].value.string_value: x-cs-access-method
Mappé directement à partir du champ JSON correspondant.
x-cs-app principal.application: x-cs-app
additional.fields[].key: "x-cs-app"
additional.fields[].value.string_value: x-cs-app
Mappé directement à partir du champ JSON correspondant.
x-cs-app-activity additional.fields[].key: "x-cs-app-activity"
additional.fields[].value.string_value: x-cs-app-activity
Mappé directement à partir du champ JSON correspondant.
x-cs-app-category additional.fields[].key: "x-cs-app-category"
additional.fields[].value.string_value: x-cs-app-category
Mappé directement à partir du champ JSON correspondant.
x-cs-app-cci additional.fields[].key: "x-cs-app-cci"
additional.fields[].value.string_value: x-cs-app-cci
Mappé directement à partir du champ JSON correspondant.
x-cs-app-from-user additional.fields[].key: "x-cs-app-from-user"
additional.fields[].value.string_value: x-cs-app-from-user
Mappé directement à partir du champ JSON correspondant.
x-cs-app-object-id additional.fields[].key: "x-cs-app-object-id"
additional.fields[].value.string_value: x-cs-app-object-id
Mappé directement à partir du champ JSON correspondant.
x-cs-app-object-name additional.fields[].key: "x-cs-app-object-name"
additional.fields[].value.string_value: x-cs-app-object-name
Mappé directement à partir du champ JSON correspondant.
x-cs-app-object-type additional.fields[].key: "x-cs-app-object-type"
additional.fields[].value.string_value: x-cs-app-object-type
Mappé directement à partir du champ JSON correspondant.
x-cs-app-suite additional.fields[].key: "x-cs-app-suite"
additional.fields[].value.string_value: x-cs-app-suite
Mappé directement à partir du champ JSON correspondant.
x-cs-app-tags additional.fields[].key: "x-cs-app-tags"
additional.fields[].value.string_value: x-cs-app-tags
Mappé directement à partir du champ JSON correspondant.
x-cs-app-to-user additional.fields[].key: "x-cs-app-to-user"
additional.fields[].value.string_value: x-cs-app-to-user
Mappé directement à partir du champ JSON correspondant.
x-cs-dst-ip security_result.detection_fields[].key: "x-cs-dst-ip"
security_result.detection_fields[].value: x-cs-dst-ip
target.asset.ip[]: x-cs-dst-ip
target.ip[]: x-cs-dst-ip
Mappé directement à partir du champ JSON correspondant.
x-cs-dst-port security_result.detection_fields[].key: "x-cs-dst-port"
security_result.detection_fields[].value: x-cs-dst-port
target.port: x-cs-dst-port
Mappé directement à partir du champ JSON correspondant.
x-cs-http-version security_result.detection_fields[].key: "x-cs-http-version"
security_result.detection_fields[].value: x-cs-http-version
Mappé directement à partir du champ JSON correspondant.
x-cs-page-id additional.fields[].key: "x-cs-page-id"
additional.fields[].value.string_value: x-cs-page-id
Mappé directement à partir du champ JSON correspondant.
x-cs-session-id network.session_id : x-cs-session-id Mappé directement à partir du champ JSON correspondant.
x-cs-site additional.fields[].key: "x-cs-site"
additional.fields[].value.string_value: x-cs-site
Mappé directement à partir du champ JSON correspondant.
x-cs-sni network.tls.client.server_name : x-cs-sni Mappé directement à partir du champ JSON correspondant.
x-cs-src-ip principal.asset.ip[]: x-cs-src-ip
principal.ip[]: x-cs-src-ip
security_result.detection_fields[].key: "x-cs-src-ip"
security_result.detection_fields[].value: x-cs-src-ip
Mappé directement à partir du champ JSON correspondant.
x-cs-src-ip-egress principal.asset.ip[]: x-cs-src-ip-egress
principal.ip[]: x-cs-src-ip-egress
security_result.detection_fields[].key: "x-cs-src-ip-egress"
security_result.detection_fields[].value: x-cs-src-ip-egress
Mappé directement à partir du champ JSON correspondant.
x-cs-src-port principal.port: x-cs-src-port
security_result.detection_fields[].key: "x-cs-src-port"
security_result.detection_fields[].value: x-cs-src-port
Mappé directement à partir du champ JSON correspondant.
x-cs-ssl-cipher network.tls.cipher : x-cs-ssl-cipher Mappé directement à partir du champ JSON correspondant.
x-cs-ssl-fronting-error security_result.detection_fields[].key: "x-cs-ssl-fronting-error"
security_result.detection_fields[].value: x-cs-ssl-fronting-error
Mappé directement à partir du champ JSON correspondant.
x-cs-ssl-handshake-error security_result.detection_fields[].key: "x-cs-ssl-handshake-error"
security_result.detection_fields[].value: x-cs-ssl-handshake-error
Mappé directement à partir du champ JSON correspondant.
x-cs-ssl-ja3 network.tls.client.ja3 : x-cs-ssl-ja3 Mappé directement à partir du champ JSON correspondant.
x-cs-ssl-version network.tls.version : x-cs-ssl-version Mappé directement à partir du champ JSON correspondant.
x-cs-timestamp metadata.event_timestamp.seconds : x-cs-timestamp Mappé directement à partir du champ JSON correspondant.
x-cs-traffic-type additional.fields[].key: "trafficType"
additional.fields[].value.string_value: x-cs-traffic-type
Mappé directement à partir du champ JSON correspondant.
x-cs-tunnel-src-ip security_result.detection_fields[].key: "x-cs-tunnel-src-ip"
security_result.detection_fields[].value: x-cs-tunnel-src-ip
Mappé directement à partir du champ JSON correspondant.
x-cs-uri-path additional.fields[].key: "x-cs-uri-path"
additional.fields[].value.string_value: x-cs-uri-path
Mappé directement à partir du champ JSON correspondant.
x-cs-url target.url : x-cs-url Mappé directement à partir du champ JSON correspondant.
x-cs-userip security_result.detection_fields[].key: "x-cs-userip"
security_result.detection_fields[].value: x-cs-userip
Mappé directement à partir du champ JSON correspondant.
x-other-category security_result.category_details[] : x-other-category Mappé directement à partir du champ JSON correspondant.
x-other-category-id security_result.detection_fields[].key: "x-other-category-id"
security_result.detection_fields[].value: x-other-category-id
Mappé directement à partir du champ JSON correspondant.
x-policy-action security_result.action: valeur dérivée
security_result.action_details: x-policy-action
security_result.action est dérivé de la conversion de x-policy-action en majuscules. Si la valeur en majuscules est "ALLOW" ou "BLOCK", elle est utilisée directement. Sinon, il n'est pas mappé.
security_result.action_details est mappé directement à partir de x-policy-action.
x-policy-dst-host security_result.detection_fields[].key: "x-policy-dst-host"
security_result.detection_fields[].value: x-policy-dst-host
Mappé directement à partir du champ JSON correspondant.
x-policy-dst-host-source security_result.detection_fields[].key: "x-policy-dst-host-source"
security_result.detection_fields[].value: x-policy-dst-host-source
Mappé directement à partir du champ JSON correspondant.
x-policy-dst-ip security_result.detection_fields[].key: "x-policy-dst-ip"
security_result.detection_fields[].value: x-policy-dst-ip
Mappé directement à partir du champ JSON correspondant.
x-policy-name security_result.rule_name : x-policy-name Mappé directement à partir du champ JSON correspondant.
x-policy-src-ip security_result.detection_fields[].key: "x-policy-src-ip"
security_result.detection_fields[].value: x-policy-src-ip
Mappé directement à partir du champ JSON correspondant.
x-r-cert-enddate network.tls.server.certificate.not_after.seconds: secondes d'epoch à partir de x-r-cert-enddate La date est convertie en secondes d'epoch.
x-r-cert-expired additional.fields[].key: "x-r-cert-expired"
additional.fields[].value.string_value: x-r-cert-expired
Mappé directement à partir du champ JSON correspondant.
x-r-cert-incomplete-chain additional.fields[].key: "x-r-cert-incomplete-chain"
additional.fields[].value.string_value: x-r-cert-incomplete-chain
Mappé directement à partir du champ JSON correspondant.
x-r-cert-issuer-cn network.tls.server.certificate.issuer : x-r-cert-issuer-cn Mappé directement à partir du champ JSON correspondant.
x-r-cert-mismatch additional.fields[].key: "x-r-cert-mismatch"
additional.fields[].value.string_value: x-r-cert-mismatch
Mappé directement à partir du champ JSON correspondant.
x-r-cert-revoked additional.fields[].key: "x-r-cert-revoked"
additional.fields[].value.string_value: x-r-cert-revoked
Mappé directement à partir du champ JSON correspondant.
x-r-cert-self-signed additional.fields[].key: "x-r-cert-self-signed"
additional.fields[].value.string_value: x-r-cert-self-signed
Mappé directement à partir du champ JSON correspondant.
x-r-cert-startdate network.tls.server.certificate.not_before.seconds: secondes d'epoch à partir de x-r-cert-startdate La date est convertie en secondes d'epoch.
x-r-cert-subject-cn network.tls.server.certificate.subject : x-r-cert-subject-cn Mappé directement à partir du champ JSON correspondant.
x-r-cert-untrusted-root additional.fields[].key: "x-r-cert-untrusted-root"
additional.fields[].value.string_value: x-r-cert-untrusted-root
Mappé directement à partir du champ JSON correspondant.
x-r-cert-valid additional.fields[].key: "x-r-cert-valid"
additional.fields[].value.string_value: x-r-cert-valid
Mappé directement à partir du champ JSON correspondant.
x-request-id additional.fields[].key: "requestId"
additional.fields[].value.string_value: x-request-id
Mappé directement à partir du champ JSON correspondant.
x-rs-file-category additional.fields[].key: "x-rs-file-category"
additional.fields[].value.string_value: x-rs-file-category
Mappé directement à partir du champ JSON correspondant.
x-rs-file-type additional.fields[].key: "x-rs-file-type"
additional.fields[].value.string_value: x-rs-file-type
Mappé directement à partir du champ JSON correspondant.
x-s-country target.location.country_or_region : x-s-country Mappé directement à partir du champ JSON correspondant.
x-s-dp-name additional.fields[].key: "x-s-dp-name"
additional.fields[].value.string_value: x-s-dp-name
Mappé directement à partir du champ JSON correspondant.
x-s-latitude target.location.region_coordinates.latitude : x-s-latitude Mappé directement à partir du champ JSON correspondant.
x-s-location target.location.name : x-s-location Mappé directement à partir du champ JSON correspondant.
x-s-longitude target.location.region_coordinates.longitude : x-s-longitude Mappé directement à partir du champ JSON correspondant.
x-s-region target.location.state : x-s-region Mappé directement à partir du champ JSON correspondant.
x-s-zipcode additional.fields[].key: "x-s-zipcode"
additional.fields[].value.string_value: x-s-zipcode
Mappé directement à partir du champ JSON correspondant.
x-sr-ssl-cipher security_result.detection_fields[].key: "x-sr-ssl-cipher"
security_result.detection_fields[].value: x-sr-ssl-cipher
Mappé directement à partir du champ JSON correspondant.
x-sr-ssl-client-certificate-error security_result.detection_fields[].key: "x-sr-ssl-client-certificate-error"
security_result.detection_fields[].value: x-sr-ssl-client-certificate-error
Mappé directement à partir du champ JSON correspondant.
x-sr-ssl-engine-action security_result.detection_fields[].key: "x-sr-ssl-engine-action"
security_result.detection_fields[].value: x-sr-ssl-engine-action
Mappé directement à partir du champ JSON correspondant.
x-sr-ssl-engine-action-reason security_result.detection_fields[].key: "x-sr-ssl-engine-action-reason"
security_result.detection_fields[].value: x-sr-ssl-engine-action-reason
Mappé directement à partir du champ JSON correspondant.
x-sr-ssl-handshake-error security_result.detection_fields[].key: "x-sr-ssl-handshake-error"
security_result.detection_fields[].value: x-sr-ssl-handshake-error
Mappé directement à partir du champ JSON correspondant.
x-sr-ssl-ja3s network.tls.server.ja3s : x-sr-ssl-ja3s Mappé directement à partir du champ JSON correspondant.
x-sr-ssl-malformed-ssl security_result.detection_fields[].key: "x-sr-ssl-malformed-ssl"
security_result.detection_fields[].value: x-sr-ssl-malformed-ssl
Mappé directement à partir du champ JSON correspondant.
x-sr-ssl-version security_result.detection_fields[].key: "x-sr-ssl-version"
security_result.detection_fields[].value: x-sr-ssl-version
Mappé directement à partir du champ JSON correspondant.
x-s-custom-signing-ca-error security_result.detection_fields[].key: "x-s-custom-signing-ca-error"
security_result.detection_fields[].value: x-s-custom-signing-ca-error
Mappé directement à partir du champ JSON correspondant.
x-ssl-bypass security_result.detection_fields[].key: "SSL BYPASS"
security_result.detection_fields[].value: x-ssl-bypass ou x-ssl-bypass-reason
Si x-ssl-bypass est défini sur "Oui" et que x-ssl-bypass-reason est présent, la valeur de x-ssl-bypass-reason est utilisée. Sinon, la valeur x-ssl-bypass est utilisée.
x-ssl-policy-action security_result.detection_fields[].key: "x-ssl-policy-action"
security_result.detection_fields[].value: x-ssl-policy-action
Mappé directement à partir du champ JSON correspondant.
x-ssl-policy-categories security_result.category_details[] : x-ssl-policy-categories Mappé directement à partir du champ JSON correspondant.
x-ssl-policy-dst-host security_result.detection_fields[].key: "x-ssl-policy-dst-host"
security_result.detection_fields[].value: x-ssl-policy-dst-host
Mappé directement à partir du champ JSON correspondant.
x-ssl-policy-dst-host-source security_result.detection_fields[].key: "x-ssl-policy-dst-host-source"
security_result.detection_fields[].value: x-ssl-policy-dst-host-source
Mappé directement à partir du champ JSON correspondant.
x-ssl-policy-dst-ip security_result.detection_fields[].key: "x-ssl-policy-dst-ip"
security_result.detection_fields[].value: x-ssl-policy-dst-ip
Mappé directement à partir du champ JSON correspondant.
x-ssl-policy-name security_result.rule_name : x-ssl-policy-name Mappé directement à partir du champ JSON correspondant.
x-ssl-policy-src-ip security_result.detection_fields[].key: "x-ssl-policy-src-ip"
security_result.detection_fields[].value: x-ssl-policy-src-ip
Mappé directement à partir du champ JSON correspondant.
x-sr-dst-ip security_result.detection_fields[].key: "x-sr-dst-ip"
security_result.detection_fields[].value: x-sr-dst-ip
Mappé directement à partir du champ JSON correspondant.
x-sr-dst-port security_result.detection_fields[].key: "x-sr-dst-port"
security_result.detection_fields[].value: x-sr-dst-port
Mappé directement à partir du champ JSON correspondant.
x-type additional.fields[].key: "xType"
additional.fields[].value.string_value: x-type
Mappé directement à partir du champ JSON correspondant.
x-transaction-id additional.fields[].key: "transactionId"
additional.fields[].value.string_value: x-transaction-id
Mappé directement à partir du champ JSON correspondant.
N/A metadata.vendor_name: "Netskope" Valeur codée en dur dans l'analyseur.
N/A metadata.product_name: "Netskope Webproxy" Définissez-le sur "Netskope Webproxy" s'il n'est pas déjà présent.
N/A metadata.log_type: "NETSKOPE_WEBPROXY" Valeur codée en dur dans l'analyseur.

Modifications

2024-06-04

  • Ajout de Grok pour gérer les journaux non analysés.
  • Mappage de "url" sur "target.url".
  • Mappage de "appSessionId" sur "network.session_id".
  • Mappage de "page" sur "network.http.referral_url".
  • Mappage de "appcategory" sur "security_result.category_details".
  • Mappage de "clientBytes" sur "network.sent_bytes".
  • Mappage de "serverBytes" sur "network.received_bytes".
  • Mappage de "ccl" sur "security_result.confidence_details".
  • Mappage des champs "IncidentID", "applicationType", "browser" et "cci" sur "security_result.detection_fields".

2024-04-22

  • "x-cs-app-ccl","x-cs-app-instance-id","x-cs-app-tags" ,"x-cs-app-instance-name" ,"x-cs-app-instance-tag", "x-cs-app-to-user","x-cs-app-object-id" et "x-cs-app-from-user" mappés sur "additional.fields".

2024-02-26

  • Modification de la mise en correspondance de "cs-bytes" de "network.received_bytes" à "network.sent_bytes".
  • Modification de la mise en correspondance de "sc-bytes" de "network.sent_bytes" à "network.received_bytes".
  • Mappage de "x-cs-app-object-name" sur "additional.fields".
  • Mappage de "x-cs-app-from-user" sur "principal.user.email_addresses".

2023-12-22

  • Si la valeur "cs-dns" est "null", le mappage "cs-host" est modifié de "principal.hostname" à "target.hostname".
  • Modification du mappage "cs-dns" de "principal.hostname" à "target.hostname".
  • Si la valeur "sc-status" est "null", mappez "rs-status" sur "network.http.response_code".
  • Mappage de "x-cs-app" sur "principal.application".
  • Mappage de "x-cs-src-ip-egress" sur "principal.ip".

2023-12-08

  • Ajout d'une vérification on_error pour analyser les journaux d'erreur.
  • Définissez "metadata.vendor_name" sur "Netskope" et "metadata.product_name" sur "Netskope Webproxy".
  • Ajout d'une vérification conditionnelle pour "src_region", "src_country", "src_location", "dst_region", "dst_country" et "dst_location" avant le mappage.

2023-10-09

  • "dvchost" a été mappé sur "target.hostname" si "target.hostname" n'est pas présent.
  • Ajout d'une vérification de valeur nulle avant le mappage "requestClientApplication".

2023-09-12

  • Mappage de "x-cs-dst-ip" sur "target.ip".
  • Mappage de "x-cs-src-ip" sur "principal.ip".
  • Mappage de "x-cs-src-port" sur "principal.port".
  • Mappage de "x-cs-dst-port" sur "target.port".
  • Ajout de la vérification on_error pour le filtre de date.
  • Ajout de vérifications conditionnelles avant la mise en correspondance de "metadata.event_type".

2023-08-28

  • Mappage de "cs-uri" sur "additional.fields".
  • Mappage de "cs-uri-port" sur "additional.fields".
  • Mappage de "x-s-zipcode" sur "additional.fields".
  • Mappage de "x-c-zipcode" sur "additional.fields".
  • Mappage de "x-cs-site" sur "additional.fields".
  • Mappage de "x-category" sur "additional.fields".
  • Mappage de "x-sr-ssl-version" sur "security_result.detection_fields".
  • Mappage de "x-sr-ssl-cipher" sur "security_result.detection_fields".
  • Mappage de "x-cs-src-ip-egress" sur "security_result.detection_fields".
  • Mappage de "x-cs-userip" sur "security_result.detection_fields".
  • Mappage de "x-cs-url" sur "target.url".
  • Mappage de "x-cs-uri-path" sur "additional.fields".
  • Mappage de "x-cs-app-cci" sur "additional.fields".
  • "x-cs-app-object-type" a été mappé sur "additional.fields".
  • "x-rs-file-type" a été mappé sur "additional.fields".
  • Mappage de "x-rs-file-category" sur "additional.fields".

2023-08-17

  • Prise en charge du nouveau format de journal au format JSON.

2023-06-22

  • Prise en charge du nouveau format de journal SYSLOG+JSON.

2023-05-30

  • Mappage de "duser" sur "target.user.email_addresses".
  • Mappage de "requestClientApplication" sur "network.http.parsed_user_agent".

2023-02-03

  • "Domaine" a été mappé sur "principal.administrative_domain".

2023-01-09

  • Ajout de vérifications conditionnelles pour le mappage de différents types d'événements en fonction des paramètres obligatoires présents.
  • Analyse des différents formats de "rt".

2022-04-06

  • Amélioration : ajout de mises en correspondance pour les nouveaux champs
  • md5, mwDetectionEngine, mwProfile, mwType mappés sur udm.

Vous avez encore besoin d'aide ? Obtenez des réponses de membres de la communauté et de professionnels Google SecOps.