Recopila registros de proxy web de Netskope

Compatible con:

Este analizador controla los registros del proxy web de Netskope con formato CEF y sin formato CEF. Extrae campos, realiza transformaciones de datos (por ejemplo, convierte marcas de tiempo o combina campos), los asigna al UDM y agrega metadatos específicos de Netskope. El analizador utiliza lógica condicional para controlar diferentes formatos de registros y la disponibilidad de campos, lo que enriquece el UDM con detalles relevantes de la red, la seguridad y la aplicación.

Antes de comenzar

  • Asegúrate de tener una instancia de Google Security Operations.
  • Asegúrate de tener acceso con privilegios a Netskope.
  • Asegúrate de tener configurado un módulo de Log Shipper.
  • Asegúrate de tener una clave de cuenta de servicio de Google SecOps (comunícate con el equipo de Google SecOps para obtener una cuenta de servicio con los siguientes alcances: https://www.googleapis.com/auth/malachite-ingestion).

Obtén el ID de cliente de Google SecOps

  1. Accede a la consola de Google SecOps.
  2. Ve a Configuración del SIEM > Perfil.
  3. Copia y guarda el ID de cliente de la sección Detalles de la organización.

Configura el arrendatario de Netskope en CE

  1. Ve a Configuración > General.
  2. Cambia el interruptor Log Shipper a ON.
  3. En Configuración, ve a Netskope Tenants.
  4. Si no hay usuarios configurados, haz clic en Agregar usuario.
  5. Ingrese los siguientes valores:
    • Nombre: Proporciona un nombre memorable para tu arrendatario.
    • Nombre del arrendatario: Ingresa el nombre real de tu arrendatario de Netskope.
    • Token de API de la versión 2: Ingresa tu token de API de Netskope.
    • Alert Filters: Agrega las alertas de proxy web que deseas transferir.
    • Initial Range: Ingresa la cantidad de datos históricos que deseas transferir (en días).
    • Haz clic en Guardar.

Configura el complemento de CLS de Netskope

  1. Ve a Configuración > Complementos.
  2. Busca y selecciona la casilla Netskope (CLS) para abrir la página de creación del complemento.
  3. Ingresa los siguientes detalles:
    • Nombre de la configuración: Ingresa un nombre memorable para este complemento.
    • Tenant: Selecciona el grupo de usuarios que creaste en el paso anterior de la lista.
    • Haz clic en Siguiente.
    • Actualiza la lista de Tipos de eventos según sea necesario.
    • Initial Range: Ingresa la cantidad de datos históricos que deseas transferir (en horas).
    • Haz clic en Guardar.

Configura un complemento de Google SecOps en Netskope

  1. Ve a Configuración > Complementos.
  2. Busca y selecciona la casilla Chronicle (CLS) para abrir la página de creación del complemento.
  3. Ingresa los siguientes detalles:
    • Configuration Name: Ingresa un nombre para este complemento.
    • Asignación: Deja la selección predeterminada.
    • Activa ON When enabled logs will be transformed using the selected mapping file.
    • Haz clic en Siguiente.
    • Región: Selecciona la región de tu Google SecOps.
    • URL de la región personalizada: Es un parámetro de configuración opcional que solo se requiere si se seleccionó Región personalizada en el paso anterior.
    • Clave de la cuenta de servicio: Ingresa la clave JSON que proporciona Google SecOps.
    • ID de cliente: Ingresa el ID de cliente de tu arrendatario de Google SecOps.
    • Haz clic en Guardar.

Configura una regla de negocios de Log Shipper para Google SecOps

  1. Ve a Log Shipper > Reglas de negocio.
  2. De forma predeterminada, hay una regla de negocio que filtra todas las alertas y los eventos.
  3. Si deseas filtrar algún tipo específico de alerta o evento, haz clic en Crear regla nueva y configura una nueva regla comercial agregando el nombre y el filtro de la regla.
  4. Haz clic en Guardar.

Configura las asignaciones de SIEM de Log Shipper para Google SecOps

  1. Ve a Log Shipper > SIEM Mappings.
  2. Haz clic en Agregar asignación de SIEM.
  3. Ingresa los siguientes detalles:
    • Configuración de la fuente: Selecciona el complemento de CLS de Netskope.
    • Configuración de destino: Selecciona el complemento de Google SecOps.
    • Regla de negocios: Selecciona la regla que creaste antes.
    • Haz clic en Guardar.

Valida la extracción y el flujo de trabajo de eventos y alertas en Netskope

  1. Ve a Logging en Netskope Cloud Exchange.
  2. Busca los registros extraídos.
  3. En Logging, busca los eventos y las alertas transferidos con el filtro message contains ingested.
  4. Se filtrarán los registros transferidos.

Tabla de asignación de UDM

Campo de registro Asignación de UDM Lógica
applicationType security_result.detection_fields[].key: "applicationType"
security_result.detection_fields[].value: applicationType
Se asigna directamente desde el campo de CEF correspondiente.
appcategory security_result.category_details[]: appcategory Se asigna directamente desde el campo de CEF correspondiente.
browser security_result.detection_fields[].key: "browser"
security_result.detection_fields[].value: browser
Se asigna directamente desde el campo de CEF correspondiente.
c-ip principal.asset.ip[]: c-ip
principal.ip[]: c-ip
Se asigna directamente desde el campo JSON correspondiente.
cci security_result.detection_fields[].key: "cci"
security_result.detection_fields[].value: cci
Se asigna directamente desde el campo de CEF correspondiente.
ccl security_result.confidence: Valor derivado
security_result.confidence_details: ccl
security_result.confidence se deriva en función del valor de ccl: "excelente" o "alta" se asignan a HIGH_CONFIDENCE, "media" se asigna a MEDIUM_CONFIDENCE, "baja" o "deficiente" se asignan a LOW_CONFIDENCE, y "desconocida" o "not_defined" se asignan a UNKNOWN_CONFIDENCE.
security_result.confidence_details se asigna directamente desde ccl.
clientBytes network.sent_bytes: clientBytes Se asigna directamente desde el campo de CEF correspondiente.
cs-access-method additional.fields[].key: "accessMethod"
additional.fields[].value.string_value: cs-access-method
Se asigna directamente desde el campo JSON correspondiente.
cs-app additional.fields[].key: "x-cs-app"
additional.fields[].value.string_value: cs-app
principal.application: cs-app
Se asigna directamente desde el campo JSON correspondiente.
cs-app-activity additional.fields[].key: "x-cs-app-activity"
additional.fields[].value.string_value: cs-app-activity
Se asigna directamente desde el campo JSON correspondiente.
cs-app-category additional.fields[].key: "x-cs-app-category"
additional.fields[].value.string_value: cs-app-category
Se asigna directamente desde el campo JSON correspondiente.
cs-app-cci additional.fields[].key: "x-cs-app-cci"
additional.fields[].value.string_value: cs-app-cci
Se asigna directamente desde el campo JSON correspondiente.
cs-app-ccl additional.fields[].key: "x-cs-app-ccl"
additional.fields[].value.string_value: cs-app-ccl
Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
cs-app-instance-id additional.fields[].key: "x-cs-app-instance-id"
additional.fields[].value.string_value: cs-app-instance-id
Se asigna directamente desde el campo JSON correspondiente.
cs-app-object-name additional.fields[].key: "x-cs-app-object-name"
additional.fields[].value.string_value: cs-app-object-name
Se asigna directamente desde el campo JSON correspondiente.
cs-app-object-type additional.fields[].key: "x-cs-app-object-type"
additional.fields[].value.string_value: cs-app-object-type
Se asigna directamente desde el campo JSON correspondiente.
cs-app-suite additional.fields[].key: "x-cs-app-suite"
additional.fields[].value.string_value: cs-app-suite
Se asigna directamente desde el campo JSON correspondiente.
cs-app-tags additional.fields[].key: "x-cs-app-tags"
additional.fields[].value.string_value: cs-app-tags
Se asigna directamente desde el campo JSON correspondiente.
cs-bytes network.sent_bytes: cs-bytes Se asigna directamente desde el campo JSON correspondiente.
cs-content-type additional.fields[].key: "sc-content-type"
additional.fields[].value.string_value: cs-content-type
Se asigna directamente desde el campo JSON correspondiente.
cs-dns target.asset.hostname[]: cs-dns
target.hostname: cs-dns
Se asigna directamente desde el campo JSON correspondiente.
cs-host target.asset.hostname[]: cs-host
target.hostname: cs-host
Se asigna directamente desde el campo JSON correspondiente.
cs-method network.http.method: cs-method Se asigna directamente desde el campo JSON correspondiente.
cs-referer network.http.referral_url: cs-referer Se asigna directamente desde el campo JSON correspondiente.
cs-uri additional.fields[].key: "cs-uri"
additional.fields[].value.string_value: cs-uri
Se asigna directamente desde el campo JSON correspondiente.
cs-uri-path additional.fields[].key: "x-cs-uri-path"
additional.fields[].value.string_value: cs-uri-path
Se asigna directamente desde el campo JSON correspondiente.
cs-uri-port additional.fields[].key: "cs-uri-port"
additional.fields[].value.string_value: cs-uri-port
Se asigna directamente desde el campo JSON correspondiente.
cs-uri-scheme network.application_protocol: cs-uri-scheme Se asigna directamente desde el campo JSON correspondiente después de convertirlo a mayúsculas.
cs-user-agent network.http.parsed_user_agent: User agent analizado
network.http.user_agent: cs-user-agent
network.http.parsed_user_agent se deriva del análisis del campo cs-user-agent con el filtro "parseduseragent".
cs-username principal.user.userid: cs-username Se asigna directamente desde el campo JSON correspondiente.
date metadata.event_timestamp.seconds: Segundos de época de los campos date y time
metadata.event_timestamp.nanos: 0
La fecha y la hora se combinan y se convierten en segundos y nanosegundos de época. Los nanosegundos se establecen en 0.
device intermediary.hostname: device Se asigna directamente desde el campo de CEF correspondiente.
dst target.ip[]: dst Se asigna directamente desde el campo de CEF correspondiente.
dst_country target.location.country_or_region: dst_country Se asigna directamente desde el campo correspondiente analizado con Grok.
dst_ip target.asset.ip[]: dst_ip
target.ip[]: dst_ip
Se asigna directamente desde el campo correspondiente analizado con Grok.
dst_location target.location.city: dst_location Se asigna directamente desde el campo correspondiente analizado con Grok.
dst_region target.location.state: dst_region Se asigna directamente desde el campo correspondiente analizado con Grok.
dst_zip Sin asignar Este campo no se asigna al UDM.
duser target.user.email_addresses[]: duser
target.user.user_display_name: duser
Se asigna directamente desde el campo de CEF correspondiente.
dvchost about.hostname: dvchost
target.asset.hostname[]: dvchost
target.hostname: dvchost
Se asigna directamente desde el campo de CEF correspondiente.
event_timestamp metadata.event_timestamp.seconds: event_timestamp Se asigna directamente desde el campo correspondiente analizado con Grok.
hostname target.asset.hostname[]: hostname
target.hostname: hostname
Se asigna directamente desde el campo de CEF correspondiente.
IncidentID security_result.detection_fields[].key: "IncidentID"
security_result.detection_fields[].value: IncidentID
Se asigna directamente desde el campo de CEF correspondiente.
intermediary intermediary: intermediary Se asigna directamente desde el campo de CEF correspondiente.
md5 target.file.md5: md5 Se asigna directamente desde el campo de CEF correspondiente.
message Varios campos de UDM El campo message se analiza en función de si contiene "CEF". Si es así, se trata como un registro de CEF. De lo contrario, se analiza como una cadena delimitada por espacios o como JSON. Consulta la sección "Lógica de análisis" para obtener más detalles.
mime_type1 Sin asignar Este campo no se asigna al UDM.
mime_type2 Sin asignar Este campo no se asigna al UDM.
mwDetectionEngine additional.fields[].key: "mwDetectionEngine"
additional.fields[].value.string_value: mwDetectionEngine
Se asigna directamente desde el campo de CEF correspondiente.
mwType metadata.description: mwType Se asigna directamente desde el campo de CEF correspondiente.
os principal.platform: Valor derivado La plataforma se deriva del campo os: "Windows" se asigna a WINDOWS, "MAC" se asigna a MAC y "LINUX" se asigna a LINUX.
page network.http.referral_url: page Se asigna directamente desde el campo de CEF correspondiente.
port Sin asignar Este campo no se asigna al UDM.
referer network.http.referral_url: referer Se asigna directamente desde el campo de CEF correspondiente.
requestClientApplication network.http.parsed_user_agent: User agent analizado
network.http.user_agent: requestClientApplication
network.http.parsed_user_agent se deriva del análisis del campo requestClientApplication con el filtro "parseduseragent".
request_method network.http.method: request_method Se asigna directamente desde el campo correspondiente analizado con Grok.
request_protocol Sin asignar Este campo no se asigna al UDM.
rs-status additional.fields[].key: "rs-status"
additional.fields[].value.string_value: rs-status
network.http.response_code: rs-status
Se asigna directamente desde el campo JSON correspondiente.
s-ip target.asset.ip[]: s-ip
target.ip[]: s-ip
Se asigna directamente desde el campo JSON correspondiente.
sc-bytes network.received_bytes: sc-bytes Se asigna directamente desde el campo JSON correspondiente.
sc-content-type additional.fields[].key: "sc-content-type"
additional.fields[].value.string_value: sc-content-type
Se asigna directamente desde el campo JSON correspondiente.
sc-status network.http.response_code: sc-status Se asigna directamente desde el campo JSON correspondiente.
serverBytes network.received_bytes: serverBytes Se asigna directamente desde el campo de CEF correspondiente.
sha256 target.file.sha256: sha256 Se asigna directamente desde el campo de CEF correspondiente.
src principal.ip[]: src Se asigna directamente desde el campo de CEF correspondiente.
src_country principal.location.country_or_region: src_country Se asigna directamente desde el campo correspondiente analizado con Grok.
src_ip principal.asset.ip[]: src_ip
principal.ip[]: src_ip
Se asigna directamente desde el campo correspondiente analizado con Grok.
src_latitude Sin asignar Este campo no se asigna al UDM.
src_location principal.location.city: src_location Se asigna directamente desde el campo correspondiente analizado con Grok.
src_longitude Sin asignar Este campo no se asigna al UDM.
src_region principal.location.state: src_region Se asigna directamente desde el campo correspondiente analizado con Grok.
src_zip Sin asignar Este campo no se asigna al UDM.
suser principal.user.user_display_name: suser Se asigna directamente desde el campo de CEF correspondiente.
target_host target.asset.hostname[]: target_host
target.hostname: target_host
Se asigna directamente desde el campo correspondiente analizado con Grok.
time metadata.event_timestamp.seconds: Segundos de época de los campos date y time
metadata.event_timestamp.nanos: 0
La fecha y la hora se combinan y se convierten en segundos y nanosegundos de época. Los nanosegundos se establecen en 0.
timestamp metadata.event_timestamp.seconds: timestamp Se asigna directamente desde el campo de CEF correspondiente.
ts metadata.event_timestamp.seconds: Segundos de época desde ts
metadata.event_timestamp.nanos: 0
La marca de tiempo se convierte en segundos y nanosegundos de época. Los nanosegundos se establecen en 0.
url target.url: url Se asigna directamente desde el campo de CEF correspondiente.
user_agent network.http.parsed_user_agent: User agent analizado
network.http.user_agent: user_agent
network.http.parsed_user_agent se deriva del análisis del campo user_agent con el filtro "parseduseragent".
user_ip Sin asignar Este campo no se asigna al UDM.
user_key principal.user.email_addresses[]: user_key Se asigna directamente desde el campo correspondiente analizado con Grok.
version Sin asignar Este campo no se asigna al UDM.
x-c-browser additional.fields[].key: "x-c-browser"
additional.fields[].value.string_value: x-c-browser
Se asigna directamente desde el campo JSON correspondiente.
x-c-browser-version additional.fields[].key: "x-c-browser-version"
additional.fields[].value.string_value: x-c-browser-version
Se asigna directamente desde el campo JSON correspondiente.
x-c-country principal.location.country_or_region: x-c-country Se asigna directamente desde el campo JSON correspondiente.
x-c-device additional.fields[].key: "x-c-device"
additional.fields[].value.string_value: x-c-device
Se asigna directamente desde el campo JSON correspondiente.
x-c-latitude principal.location.region_coordinates.latitude: x-c-latitude Se asigna directamente desde el campo JSON correspondiente.
x-c-local-time security_result.detection_fields[].key: "x-c-local-time"
security_result.detection_fields[].value: x-c-local-time
Se asigna directamente desde el campo JSON correspondiente.
x-c-location principal.location.name: x-c-location Se asigna directamente desde el campo JSON correspondiente.
x-c-longitude principal.location.region_coordinates.longitude: x-c-longitude Se asigna directamente desde el campo JSON correspondiente.
x-c-os principal.platform: Valor derivado La plataforma se deriva del campo x-c-os: "Windows" se asigna a WINDOWS, "MAC" se asigna a MAC y "LINUX" se asigna a LINUX.
x-c-region principal.location.state: x-c-region Se asigna directamente desde el campo JSON correspondiente.
x-c-zipcode additional.fields[].key: "x-c-zipcode"
additional.fields[].value.string_value: x-c-zipcode
Se asigna directamente desde el campo JSON correspondiente.
x-category additional.fields[].key: "x-category"
additional.fields[].value.string_value: x-category
Se asigna directamente desde el campo JSON correspondiente.
x-category-id additional.fields[].key: "x-category-id"
additional.fields[].value.string_value: x-category-id
Se asigna directamente desde el campo JSON correspondiente.
x-cs-access-method additional.fields[].key: "accessMethod"
additional.fields[].value.string_value: x-cs-access-method
Se asigna directamente desde el campo JSON correspondiente.
x-cs-app principal.application: x-cs-app
additional.fields[].key: "x-cs-app"
additional.fields[].value.string_value: x-cs-app
Se asigna directamente desde el campo JSON correspondiente.
x-cs-app-activity additional.fields[].key: "x-cs-app-activity"
additional.fields[].value.string_value: x-cs-app-activity
Se asigna directamente desde el campo JSON correspondiente.
x-cs-app-category additional.fields[].key: "x-cs-app-category"
additional.fields[].value.string_value: x-cs-app-category
Se asigna directamente desde el campo JSON correspondiente.
x-cs-app-cci additional.fields[].key: "x-cs-app-cci"
additional.fields[].value.string_value: x-cs-app-cci
Se asigna directamente desde el campo JSON correspondiente.
x-cs-app-from-user additional.fields[].key: "x-cs-app-from-user"
additional.fields[].value.string_value: x-cs-app-from-user
Se asigna directamente desde el campo JSON correspondiente.
x-cs-app-object-id additional.fields[].key: "x-cs-app-object-id"
additional.fields[].value.string_value: x-cs-app-object-id
Se asigna directamente desde el campo JSON correspondiente.
x-cs-app-object-name additional.fields[].key: "x-cs-app-object-name"
additional.fields[].value.string_value: x-cs-app-object-name
Se asigna directamente desde el campo JSON correspondiente.
x-cs-app-object-type additional.fields[].key: "x-cs-app-object-type"
additional.fields[].value.string_value: x-cs-app-object-type
Se asigna directamente desde el campo JSON correspondiente.
x-cs-app-suite additional.fields[].key: "x-cs-app-suite"
additional.fields[].value.string_value: x-cs-app-suite
Se asigna directamente desde el campo JSON correspondiente.
x-cs-app-tags additional.fields[].key: "x-cs-app-tags"
additional.fields[].value.string_value: x-cs-app-tags
Se asigna directamente desde el campo JSON correspondiente.
x-cs-app-to-user additional.fields[].key: "x-cs-app-to-user"
additional.fields[].value.string_value: x-cs-app-to-user
Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
x-cs-http-version security_result.detection_fields[].key: "x-cs-http-version"
security_result.detection_fields[].value: x-cs-http-version
Se asigna directamente desde el campo JSON correspondiente.
x-cs-page-id additional.fields[].key: "x-cs-page-id"
additional.fields[].value.string_value: x-cs-page-id
Se asigna directamente desde el campo JSON correspondiente.
x-cs-session-id network.session_id: x-cs-session-id Se asigna directamente desde el campo JSON correspondiente.
x-cs-site additional.fields[].key: "x-cs-site"
additional.fields[].value.string_value: x-cs-site
Se asigna directamente desde el campo JSON correspondiente.
x-cs-sni network.tls.client.server_name: x-cs-sni Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
x-cs-ssl-cipher network.tls.cipher: x-cs-ssl-cipher Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
x-cs-ssl-ja3 network.tls.client.ja3: x-cs-ssl-ja3 Se asigna directamente desde el campo JSON correspondiente.
x-cs-ssl-version network.tls.version: x-cs-ssl-version Se asigna directamente desde el campo JSON correspondiente.
x-cs-timestamp metadata.event_timestamp.seconds: x-cs-timestamp Se asigna directamente desde el campo JSON correspondiente.
x-cs-traffic-type additional.fields[].key: "trafficType"
additional.fields[].value.string_value: x-cs-traffic-type
Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
x-cs-uri-path additional.fields[].key: "x-cs-uri-path"
additional.fields[].value.string_value: x-cs-uri-path
Se asigna directamente desde el campo JSON correspondiente.
x-cs-url target.url: x-cs-url Se asigna directamente desde el campo JSON correspondiente.
x-cs-userip security_result.detection_fields[].key: "x-cs-userip"
security_result.detection_fields[].value: x-cs-userip
Se asigna directamente desde el campo JSON correspondiente.
x-other-category security_result.category_details[]: x-other-category Se asigna directamente desde el campo JSON correspondiente.
x-other-category-id security_result.detection_fields[].key: "x-other-category-id"
security_result.detection_fields[].value: x-other-category-id
Se asigna directamente desde el campo JSON correspondiente.
x-policy-action security_result.action: Valor derivado
security_result.action_details: x-policy-action
security_result.action se deriva de la conversión de x-policy-action a mayúsculas. Si el valor en mayúsculas es "ALLOW" o "BLOCK", se usa directamente. De lo contrario, no se asigna.
security_result.action_details se asigna directamente desde 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
Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
x-policy-dst-ip security_result.detection_fields[].key: "x-policy-dst-ip"
security_result.detection_fields[].value: x-policy-dst-ip
Se asigna directamente desde el campo JSON correspondiente.
x-policy-name security_result.rule_name: x-policy-name Se asigna directamente desde el campo JSON correspondiente.
x-policy-src-ip security_result.detection_fields[].key: "x-policy-src-ip"
security_result.detection_fields[].value: x-policy-src-ip
Se asigna directamente desde el campo JSON correspondiente.
x-r-cert-enddate network.tls.server.certificate.not_after.seconds: Segundos de época desde x-r-cert-enddate La fecha se convierte a segundos desde la época.
x-r-cert-expired additional.fields[].key: "x-r-cert-expired"
additional.fields[].value.string_value: x-r-cert-expired
Se asigna directamente desde el campo JSON correspondiente.
x-r-cert-incomplete-chain additional.fields[].key: "x-r-cert-incomplete-chain"
additional.fields[].value.string_value: x-r-cert-incomplete-chain
Se asigna directamente desde el campo JSON correspondiente.
x-r-cert-issuer-cn network.tls.server.certificate.issuer: x-r-cert-issuer-cn Se asigna directamente desde el campo JSON correspondiente.
x-r-cert-mismatch additional.fields[].key: "x-r-cert-mismatch"
additional.fields[].value.string_value: x-r-cert-mismatch
Se asigna directamente desde el campo JSON correspondiente.
x-r-cert-revoked additional.fields[].key: "x-r-cert-revoked"
additional.fields[].value.string_value: x-r-cert-revoked
Se asigna directamente desde el campo JSON correspondiente.
x-r-cert-self-signed additional.fields[].key: "x-r-cert-self-signed"
additional.fields[].value.string_value: x-r-cert-self-signed
Se asigna directamente desde el campo JSON correspondiente.
x-r-cert-startdate network.tls.server.certificate.not_before.seconds: Segundos de época desde x-r-cert-startdate La fecha se convierte a segundos desde la época.
x-r-cert-subject-cn network.tls.server.certificate.subject: x-r-cert-subject-cn Se asigna directamente desde el campo JSON correspondiente.
x-r-cert-untrusted-root additional.fields[].key: "x-r-cert-untrusted-root"
additional.fields[].value.string_value: x-r-cert-untrusted-root
Se asigna directamente desde el campo JSON correspondiente.
x-r-cert-valid additional.fields[].key: "x-r-cert-valid"
additional.fields[].value.string_value: x-r-cert-valid
Se asigna directamente desde el campo JSON correspondiente.
x-request-id additional.fields[].key: "requestId"
additional.fields[].value.string_value: x-request-id
Se asigna directamente desde el campo JSON correspondiente.
x-rs-file-category additional.fields[].key: "x-rs-file-category"
additional.fields[].value.string_value: x-rs-file-category
Se asigna directamente desde el campo JSON correspondiente.
x-rs-file-type additional.fields[].key: "x-rs-file-type"
additional.fields[].value.string_value: x-rs-file-type
Se asigna directamente desde el campo JSON correspondiente.
x-s-country target.location.country_or_region: x-s-country Se asigna directamente desde el campo JSON correspondiente.
x-s-dp-name additional.fields[].key: "x-s-dp-name"
additional.fields[].value.string_value: x-s-dp-name
Se asigna directamente desde el campo JSON correspondiente.
x-s-latitude target.location.region_coordinates.latitude: x-s-latitude Se asigna directamente desde el campo JSON correspondiente.
x-s-location target.location.name: x-s-location Se asigna directamente desde el campo JSON correspondiente.
x-s-longitude target.location.region_coordinates.longitude: x-s-longitude Se asigna directamente desde el campo JSON correspondiente.
x-s-region target.location.state: x-s-region Se asigna directamente desde el campo JSON correspondiente.
x-s-zipcode additional.fields[].key: "x-s-zipcode"
additional.fields[].value.string_value: x-s-zipcode
Se asigna directamente desde el campo JSON correspondiente.
x-sr-ssl-cipher security_result.detection_fields[].key: "x-sr-ssl-cipher"
security_result.detection_fields[].value: x-sr-ssl-cipher
Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
x-sr-ssl-ja3s network.tls.server.ja3s: x-sr-ssl-ja3s Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
x-sr-ssl-version security_result.detection_fields[].key: "x-sr-ssl-version"
security_result.detection_fields[].value: x-sr-ssl-version
Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
x-ssl-bypass security_result.detection_fields[].key: "SSL BYPASS"
security_result.detection_fields[].value: x-ssl-bypass o x-ssl-bypass-reason
Si x-ssl-bypass es "Sí" y x-ssl-bypass-reason está presente, se usa el valor de x-ssl-bypass-reason. De lo contrario, se usa el valor de x-ssl-bypass.
x-ssl-policy-action security_result.detection_fields[].key: "x-ssl-policy-action"
security_result.detection_fields[].value: x-ssl-policy-action
Se asigna directamente desde el campo JSON correspondiente.
x-ssl-policy-categories security_result.category_details[]: x-ssl-policy-categories Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
x-ssl-policy-name security_result.rule_name: x-ssl-policy-name Se asigna directamente desde el campo JSON correspondiente.
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
Se asigna directamente desde el campo JSON correspondiente.
x-sr-dst-ip security_result.detection_fields[].key: "x-sr-dst-ip"
security_result.detection_fields[].value: x-sr-dst-ip
Se asigna directamente desde el campo JSON correspondiente.
x-sr-dst-port security_result.detection_fields[].key: "x-sr-dst-port"
security_result.detection_fields[].value: x-sr-dst-port
Se asigna directamente desde el campo JSON correspondiente.
x-type additional.fields[].key: "xType"
additional.fields[].value.string_value: x-type
Se asigna directamente desde el campo JSON correspondiente.
x-transaction-id additional.fields[].key: "transactionId"
additional.fields[].value.string_value: x-transaction-id
Se asigna directamente desde el campo JSON correspondiente.
N/A metadata.vendor_name: "Netskope" Valor hard-coded en el analizador.
N/A metadata.product_name: "Netskope Webproxy" Se establece en "Netskope Webproxy" si aún no está presente.
N/A metadata.log_type: "NETSKOPE_WEBPROXY" Valor hard-coded en el analizador.

¿Necesitas más ayuda? Obtén respuestas de miembros de la comunidad y profesionales de Google SecOps.