Recopila registros de proxy web de Netskope
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
- Accede a la consola de Google SecOps.
- Ve a Configuración del SIEM > Perfil.
- Copia y guarda el ID de cliente de la sección Detalles de la organización.
Configura el arrendatario de Netskope en CE
- Ve a Configuración > General.
- Cambia el interruptor Log Shipper a ON.
- En Configuración, ve a Netskope Tenants.
- Si no hay usuarios configurados, haz clic en Agregar usuario.
- 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
- Ve a Configuración > Complementos.
- Busca y selecciona la casilla Netskope (CLS) para abrir la página de creación del complemento.
- 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
- Ve a Configuración > Complementos.
- Busca y selecciona la casilla Chronicle (CLS) para abrir la página de creación del complemento.
- 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
- Ve a Log Shipper > Reglas de negocio.
- De forma predeterminada, hay una regla de negocio que filtra todas las alertas y los eventos.
- 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.
- Haz clic en Guardar.
Configura las asignaciones de SIEM de Log Shipper para Google SecOps
- Ve a Log Shipper > SIEM Mappings.
- Haz clic en Agregar asignación de SIEM.
- 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
- Ve a Logging en Netskope Cloud Exchange.
- Busca los registros extraídos.
- En Logging, busca los eventos y las alertas transferidos con el filtro message contains ingested.
- 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 derivadosecurity_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 analizadonetwork.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 analizadonetwork.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 analizadonetwork.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 derivadosecurity_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.