Coletar registros de proxy da Web do Netskope

Compatível com:

Esse analisador processa registros de proxy da Web do Netskope formatados em CEF e não CEF. Ele extrai campos, realiza transformações de dados (por exemplo, converte carimbos de data/hora ou mescla campos), os mapeia para o UDM e adiciona metadados específicos da Netskope. O analisador usa lógica condicional para processar diferentes formatos de registro e disponibilidade de campo, enriquecendo a UDM com detalhes relevantes de rede, segurança e aplicativo.

Antes de começar

  • Verifique se você tem uma instância do Google Security Operations.
  • Verifique se você tem acesso privilegiado ao Netskope.
  • Verifique se você tem um módulo do Log Shipper configurado.
  • Verifique se você tem uma chave de conta de serviço do Google SecOps. Entre em contato com a equipe do Google SecOps para receber uma conta de serviço com os seguintes escopos: https://www.googleapis.com/auth/malachite-ingestion.

Receber o ID de cliente do Google SecOps

  1. Faça login no console do Google SecOps.
  2. Acesse Configurações do SIEM > Perfil.
  3. Copie e salve o ID do cliente na seção Detalhes da organização.

Configurar o locatário do Netskope no CE

  1. Acesse Configurações > Geral.
  2. Mude a posição da chave Log Shipper para ON.
  3. Em Configurações, acesse Tenants do Netskope.
  4. Se nenhum locatário estiver configurado, clique em Adicionar locatário.
  5. Insira os seguintes valores:
    • Nome: informe um nome fácil de lembrar para o locatário.
    • Nome do locatário: digite o nome real do locatário do Netskope.
    • Token da API V2: insira o token da API Netskope.
    • Alert Filters: adicione os alertas de proxy da Web que você quer importar.
    • Intervalo inicial: insira a quantidade de dados históricos que você quer importar (em dias).
    • Clique em Salvar.

Configurar o plug-in CLS do Netskope

  1. Acesse Configurações > Plugins.
  2. Pesquise e selecione a caixa Netskope (CLS) para abrir a página de criação do plug-in.
  3. Digite os seguintes detalhes:
    • Configuration Name: digite um nome fácil de lembrar para o plug-in.
    • Locatário: selecione o locatário que você criou na etapa anterior na lista.
    • Clique em Próxima.
    • Atualize a lista Tipo de evento conforme necessário.
    • Intervalo inicial: insira a quantidade de dados históricos que você quer importar (em horas).
    • Clique em Salvar.

Configurar um plug-in do Google SecOps no Netskope

  1. Acesse Configurações > Plugins.
  2. Pesquise e selecione a caixa Chronicle (CLS) para abrir a página de criação do plug-in.
  3. Digite os seguintes detalhes:
    • Configuration Name: digite um nome para o plug-in.
    • Mapeamento: mantenha a seleção padrão.
    • Ative a opção ON When enabled logs will be transformed using the selected mapping file.
    • Clique em Próxima.
    • Região: selecione a região do Google SecOps.
    • URL da região personalizada: configuração opcional que só é necessária se a opção Região personalizada foi selecionada na etapa anterior.
    • Chave da conta de serviço: insira a chave JSON fornecida pelo Google SecOps.
    • ID de cliente: insira o ID de cliente do seu locatário do Google SecOps.
    • Clique em Salvar.

Configurar uma regra de negócios do Log Shipper para o Google SecOps

  1. Acesse Envio de registro > Regras de negócios.
  2. Por padrão, há uma regra de negócios que filtra todos os alertas e eventos.
  3. Se você quiser filtrar um tipo específico de alerta ou evento, clique em Criar nova regra e configure uma nova regra de negócios adicionando o nome e o filtro da regra.
  4. Clique em Salvar.

Configurar mapeamentos de SIEM do Log Shipper para o Google SecOps

  1. Acesse Envio de registro > Mapeamentos de SIEM.
  2. Clique em Adicionar mapeamento do SIEM.
  3. Digite os seguintes detalhes:
    • Configuração da origem: selecione o plug-in Netskope CLS.
    • Configuração do destino: selecione o plug-in do Google SecOps.
    • Regra de negócios: selecione a regra que você criou anteriormente.
    • Clique em Salvar.

Validar a extração e o fluxo de trabalho de eventos e alertas no Netskope

  1. Acesse Registros na Netskope Cloud Exchange.
  2. Pesquise os registros extraídos.
  3. Em Registros, pesquise eventos e alertas ingeridos com o filtro a mensagem contém "ingerida".
  4. Os registros ingeridos serão filtrados.

Tabela de mapeamento do UDM

Campo de registro Mapeamento do UDM Lógica
applicationType security_result.detection_fields[].key: "applicationType"
security_result.detection_fields[].value: applicationType
Mapeado diretamente do campo CEF correspondente.
appcategory security_result.category_details[]: appcategory Mapeado diretamente do campo CEF correspondente.
browser security_result.detection_fields[].key: "browser"
security_result.detection_fields[].value: browser
Mapeado diretamente do campo CEF correspondente.
c-ip principal.asset.ip[]: c-ip
principal.ip[]: c-ip
Mapeado diretamente do campo JSON correspondente.
cci security_result.detection_fields[].key: "cci"
security_result.detection_fields[].value: cci
Mapeado diretamente do campo CEF correspondente.
ccl security_result.confidence: valor derivado
security_result.confidence_details: ccl
security_result.confidence é derivado com base no valor de ccl: "excellent" ou "high" são mapeados para HIGH_CONFIDENCE, "medium" para MEDIUM_CONFIDENCE, "low" ou "poor" para LOW_CONFIDENCE e "unknown" ou "not_defined" para UNKNOWN_CONFIDENCE.
security_result.confidence_details é mapeado diretamente de ccl.
clientBytes network.sent_bytes: clientBytes Mapeado diretamente do campo CEF correspondente.
cs-access-method additional.fields[].key: "accessMethod"
additional.fields[].value.string_value: cs-access-method
Mapeado diretamente do campo JSON correspondente.
cs-app additional.fields[].key: "x-cs-app"
additional.fields[].value.string_value: cs-app
principal.application: cs-app
Mapeado diretamente do campo JSON correspondente.
cs-app-activity additional.fields[].key: "x-cs-app-activity"
additional.fields[].value.string_value: cs-app-activity
Mapeado diretamente do campo JSON correspondente.
cs-app-category additional.fields[].key: "x-cs-app-category"
additional.fields[].value.string_value: cs-app-category
Mapeado diretamente do campo JSON correspondente.
cs-app-cci additional.fields[].key: "x-cs-app-cci"
additional.fields[].value.string_value: cs-app-cci
Mapeado diretamente do campo JSON correspondente.
cs-app-ccl additional.fields[].key: "x-cs-app-ccl"
additional.fields[].value.string_value: cs-app-ccl
Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
cs-app-instance-id additional.fields[].key: "x-cs-app-instance-id"
additional.fields[].value.string_value: cs-app-instance-id
Mapeado diretamente do campo JSON correspondente.
cs-app-object-name additional.fields[].key: "x-cs-app-object-name"
additional.fields[].value.string_value: cs-app-object-name
Mapeado diretamente do campo JSON correspondente.
cs-app-object-type additional.fields[].key: "x-cs-app-object-type"
additional.fields[].value.string_value: cs-app-object-type
Mapeado diretamente do campo JSON correspondente.
cs-app-suite additional.fields[].key: "x-cs-app-suite"
additional.fields[].value.string_value: cs-app-suite
Mapeado diretamente do campo JSON correspondente.
cs-app-tags additional.fields[].key: "x-cs-app-tags"
additional.fields[].value.string_value: cs-app-tags
Mapeado diretamente do campo JSON correspondente.
cs-bytes network.sent_bytes: cs-bytes Mapeado diretamente do campo JSON correspondente.
cs-content-type additional.fields[].key: "sc-content-type"
additional.fields[].value.string_value: cs-content-type
Mapeado diretamente do campo JSON correspondente.
cs-dns target.asset.hostname[]: cs-dns
target.hostname: cs-dns
Mapeado diretamente do campo JSON correspondente.
cs-host target.asset.hostname[]: cs-host
target.hostname: cs-host
Mapeado diretamente do campo JSON correspondente.
cs-method network.http.method: cs-method Mapeado diretamente do campo JSON correspondente.
cs-referer network.http.referral_url: cs-referer Mapeado diretamente do campo JSON correspondente.
cs-uri additional.fields[].key: "cs-uri"
additional.fields[].value.string_value: cs-uri
Mapeado diretamente do campo JSON correspondente.
cs-uri-path additional.fields[].key: "x-cs-uri-path"
additional.fields[].value.string_value: cs-uri-path
Mapeado diretamente do campo JSON correspondente.
cs-uri-port additional.fields[].key: "cs-uri-port"
additional.fields[].value.string_value: cs-uri-port
Mapeado diretamente do campo JSON correspondente.
cs-uri-scheme network.application_protocol: cs-uri-scheme Mapeado diretamente do campo JSON correspondente após a conversão para maiúsculas.
cs-user-agent network.http.parsed_user_agent: agente do usuário analisado
network.http.user_agent: cs-user-agent
network.http.parsed_user_agent é derivado da análise do campo cs-user-agent usando o filtro "parseduseragent".
cs-username principal.user.userid: cs-username Mapeado diretamente do campo JSON correspondente.
date metadata.event_timestamp.seconds: segundos da Era Unix dos campos date e time
metadata.event_timestamp.nanos: 0
A data e a hora são combinadas e convertidas em segundos e nanossegundos da época. Os nanossegundos são definidos como 0.
device intermediary.hostname: device Mapeado diretamente do campo CEF correspondente.
dst target.ip[]: dst Mapeado diretamente do campo CEF correspondente.
dst_country target.location.country_or_region: dst_country Mapeado diretamente do campo grokked correspondente.
dst_ip target.asset.ip[]: dst_ip
target.ip[]: dst_ip
Mapeado diretamente do campo grokked correspondente.
dst_location target.location.city: dst_location Mapeado diretamente do campo grokked correspondente.
dst_region target.location.state: dst_region Mapeado diretamente do campo grokked correspondente.
dst_zip Não mapeados Este campo não está mapeado para o UDM.
duser target.user.email_addresses[]: duser
target.user.user_display_name: duser
Mapeado diretamente do campo CEF correspondente.
dvchost about.hostname: dvchost
target.asset.hostname[]: dvchost
target.hostname: dvchost
Mapeado diretamente do campo CEF correspondente.
event_timestamp metadata.event_timestamp.seconds: event_timestamp Mapeado diretamente do campo grokked correspondente.
hostname target.asset.hostname[]: hostname
target.hostname: hostname
Mapeado diretamente do campo CEF correspondente.
IncidentID security_result.detection_fields[].key: "IncidentID"
security_result.detection_fields[].value: IncidentID
Mapeado diretamente do campo CEF correspondente.
intermediary intermediary: intermediary Mapeado diretamente do campo CEF correspondente.
md5 target.file.md5: md5 Mapeado diretamente do campo CEF correspondente.
message Vários campos do UDM O campo message é analisado com base em se ele contém "CEF". Se for o caso, ele será tratado como um registro do CEF. Caso contrário, ele será analisado como uma string delimitada por espaços ou JSON. Consulte a seção "Lógica de análise" para mais detalhes.
mime_type1 Não mapeados Este campo não está mapeado para o UDM.
mime_type2 Não mapeados Este campo não está mapeado para o UDM.
mwDetectionEngine additional.fields[].key: "mwDetectionEngine"
additional.fields[].value.string_value: mwDetectionEngine
Mapeado diretamente do campo CEF correspondente.
mwType metadata.description: mwType Mapeado diretamente do campo CEF correspondente.
os principal.platform: valor derivado A plataforma é derivada do campo os: "Windows" é mapeado para WINDOWS, "MAC" para MAC e "LINUX" para LINUX.
page network.http.referral_url: page Mapeado diretamente do campo CEF correspondente.
port Não mapeados Este campo não está mapeado para o UDM.
referer network.http.referral_url: referer Mapeado diretamente do campo CEF correspondente.
requestClientApplication network.http.parsed_user_agent: agente do usuário analisado
network.http.user_agent: requestClientApplication
network.http.parsed_user_agent é derivado da análise do campo requestClientApplication usando o filtro "parseduseragent".
request_method network.http.method: request_method Mapeado diretamente do campo grokked correspondente.
request_protocol Não mapeados Este campo não está mapeado para o UDM.
rs-status additional.fields[].key: "rs-status"
additional.fields[].value.string_value: rs-status
network.http.response_code: rs-status
Mapeado diretamente do campo JSON correspondente.
s-ip target.asset.ip[]: s-ip
target.ip[]: s-ip
Mapeado diretamente do campo JSON correspondente.
sc-bytes network.received_bytes: sc-bytes Mapeado diretamente do campo JSON correspondente.
sc-content-type additional.fields[].key: "sc-content-type"
additional.fields[].value.string_value: sc-content-type
Mapeado diretamente do campo JSON correspondente.
sc-status network.http.response_code: sc-status Mapeado diretamente do campo JSON correspondente.
serverBytes network.received_bytes: serverBytes Mapeado diretamente do campo CEF correspondente.
sha256 target.file.sha256: sha256 Mapeado diretamente do campo CEF correspondente.
src principal.ip[]: src Mapeado diretamente do campo CEF correspondente.
src_country principal.location.country_or_region: src_country Mapeado diretamente do campo grokked correspondente.
src_ip principal.asset.ip[]: src_ip
principal.ip[]: src_ip
Mapeado diretamente do campo grokked correspondente.
src_latitude Não mapeados Este campo não está mapeado para o UDM.
src_location principal.location.city: src_location Mapeado diretamente do campo grokked correspondente.
src_longitude Não mapeados Este campo não está mapeado para o UDM.
src_region principal.location.state: src_region Mapeado diretamente do campo grokked correspondente.
src_zip Não mapeados Este campo não está mapeado para o UDM.
suser principal.user.user_display_name: suser Mapeado diretamente do campo CEF correspondente.
target_host target.asset.hostname[]: target_host
target.hostname: target_host
Mapeado diretamente do campo grokked correspondente.
time metadata.event_timestamp.seconds: segundos da Era Unix dos campos date e time
metadata.event_timestamp.nanos: 0
A data e a hora são combinadas e convertidas em segundos e nanossegundos da época. Os nanossegundos são definidos como 0.
timestamp metadata.event_timestamp.seconds: timestamp Mapeado diretamente do campo CEF correspondente.
ts metadata.event_timestamp.seconds: segundos de época de ts
metadata.event_timestamp.nanos: 0
O carimbo de data/hora é convertido em segundos e nanossegundos da época. Os nanossegundos são definidos como 0.
url target.url: url Mapeado diretamente do campo CEF correspondente.
user_agent network.http.parsed_user_agent: agente do usuário analisado
network.http.user_agent: user_agent
network.http.parsed_user_agent é derivado da análise do campo user_agent usando o filtro "parseduseragent".
user_ip Não mapeados Este campo não está mapeado para o UDM.
user_key principal.user.email_addresses[]: user_key Mapeado diretamente do campo grokked correspondente.
version Não mapeados Este campo não está mapeado para o UDM.
x-c-browser additional.fields[].key: "x-c-browser"
additional.fields[].value.string_value: x-c-browser
Mapeado diretamente do campo JSON correspondente.
x-c-browser-version additional.fields[].key: "x-c-browser-version"
additional.fields[].value.string_value: x-c-browser-version
Mapeado diretamente do campo JSON correspondente.
x-c-country principal.location.country_or_region: x-c-country Mapeado diretamente do campo JSON correspondente.
x-c-device additional.fields[].key: "x-c-device"
additional.fields[].value.string_value: x-c-device
Mapeado diretamente do campo JSON correspondente.
x-c-latitude principal.location.region_coordinates.latitude: x-c-latitude Mapeado diretamente do campo JSON correspondente.
x-c-local-time security_result.detection_fields[].key: "x-c-local-time"
security_result.detection_fields[].value: x-c-local-time
Mapeado diretamente do campo JSON correspondente.
x-c-location principal.location.name: x-c-location Mapeado diretamente do campo JSON correspondente.
x-c-longitude principal.location.region_coordinates.longitude: x-c-longitude Mapeado diretamente do campo JSON correspondente.
x-c-os principal.platform: valor derivado A plataforma é derivada do campo x-c-os: "Windows" é mapeado para WINDOWS, "MAC" para MAC e "LINUX" para LINUX.
x-c-region principal.location.state: x-c-region Mapeado diretamente do campo JSON correspondente.
x-c-zipcode additional.fields[].key: "x-c-zipcode"
additional.fields[].value.string_value: x-c-zipcode
Mapeado diretamente do campo JSON correspondente.
x-category additional.fields[].key: "x-category"
additional.fields[].value.string_value: x-category
Mapeado diretamente do campo JSON correspondente.
x-category-id additional.fields[].key: "x-category-id"
additional.fields[].value.string_value: x-category-id
Mapeado diretamente do campo JSON correspondente.
x-cs-access-method additional.fields[].key: "accessMethod"
additional.fields[].value.string_value: x-cs-access-method
Mapeado diretamente do campo JSON correspondente.
x-cs-app principal.application: x-cs-app
additional.fields[].key: "x-cs-app"
additional.fields[].value.string_value: x-cs-app
Mapeado diretamente do campo JSON correspondente.
x-cs-app-activity additional.fields[].key: "x-cs-app-activity"
additional.fields[].value.string_value: x-cs-app-activity
Mapeado diretamente do campo JSON correspondente.
x-cs-app-category additional.fields[].key: "x-cs-app-category"
additional.fields[].value.string_value: x-cs-app-category
Mapeado diretamente do campo JSON correspondente.
x-cs-app-cci additional.fields[].key: "x-cs-app-cci"
additional.fields[].value.string_value: x-cs-app-cci
Mapeado diretamente do campo JSON correspondente.
x-cs-app-from-user additional.fields[].key: "x-cs-app-from-user"
additional.fields[].value.string_value: x-cs-app-from-user
Mapeado diretamente do campo JSON correspondente.
x-cs-app-object-id additional.fields[].key: "x-cs-app-object-id"
additional.fields[].value.string_value: x-cs-app-object-id
Mapeado diretamente do campo JSON correspondente.
x-cs-app-object-name additional.fields[].key: "x-cs-app-object-name"
additional.fields[].value.string_value: x-cs-app-object-name
Mapeado diretamente do campo JSON correspondente.
x-cs-app-object-type additional.fields[].key: "x-cs-app-object-type"
additional.fields[].value.string_value: x-cs-app-object-type
Mapeado diretamente do campo JSON correspondente.
x-cs-app-suite additional.fields[].key: "x-cs-app-suite"
additional.fields[].value.string_value: x-cs-app-suite
Mapeado diretamente do campo JSON correspondente.
x-cs-app-tags additional.fields[].key: "x-cs-app-tags"
additional.fields[].value.string_value: x-cs-app-tags
Mapeado diretamente do campo JSON correspondente.
x-cs-app-to-user additional.fields[].key: "x-cs-app-to-user"
additional.fields[].value.string_value: x-cs-app-to-user
Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
x-cs-http-version security_result.detection_fields[].key: "x-cs-http-version"
security_result.detection_fields[].value: x-cs-http-version
Mapeado diretamente do campo JSON correspondente.
x-cs-page-id additional.fields[].key: "x-cs-page-id"
additional.fields[].value.string_value: x-cs-page-id
Mapeado diretamente do campo JSON correspondente.
x-cs-session-id network.session_id: x-cs-session-id Mapeado diretamente do campo JSON correspondente.
x-cs-site additional.fields[].key: "x-cs-site"
additional.fields[].value.string_value: x-cs-site
Mapeado diretamente do campo JSON correspondente.
x-cs-sni network.tls.client.server_name: x-cs-sni Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
x-cs-ssl-cipher network.tls.cipher: x-cs-ssl-cipher Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
x-cs-ssl-ja3 network.tls.client.ja3: x-cs-ssl-ja3 Mapeado diretamente do campo JSON correspondente.
x-cs-ssl-version network.tls.version: x-cs-ssl-version Mapeado diretamente do campo JSON correspondente.
x-cs-timestamp metadata.event_timestamp.seconds: x-cs-timestamp Mapeado diretamente do campo JSON correspondente.
x-cs-traffic-type additional.fields[].key: "trafficType"
additional.fields[].value.string_value: x-cs-traffic-type
Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
x-cs-uri-path additional.fields[].key: "x-cs-uri-path"
additional.fields[].value.string_value: x-cs-uri-path
Mapeado diretamente do campo JSON correspondente.
x-cs-url target.url: x-cs-url Mapeado diretamente do campo JSON correspondente.
x-cs-userip security_result.detection_fields[].key: "x-cs-userip"
security_result.detection_fields[].value: x-cs-userip
Mapeado diretamente do campo JSON correspondente.
x-other-category security_result.category_details[]: x-other-category Mapeado diretamente do campo JSON correspondente.
x-other-category-id security_result.detection_fields[].key: "x-other-category-id"
security_result.detection_fields[].value: x-other-category-id
Mapeado diretamente do campo JSON correspondente.
x-policy-action security_result.action: valor derivado
security_result.action_details: x-policy-action
security_result.action é derivado da conversão de x-policy-action em letras maiúsculas. Se o valor em maiúsculas for "ALLOW" ou "BLOCK", ele será usado diretamente. Caso contrário, ele não será mapeado.
security_result.action_details é mapeado diretamente 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
Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
x-policy-dst-ip security_result.detection_fields[].key: "x-policy-dst-ip"
security_result.detection_fields[].value: x-policy-dst-ip
Mapeado diretamente do campo JSON correspondente.
x-policy-name security_result.rule_name: x-policy-name Mapeado diretamente do campo JSON correspondente.
x-policy-src-ip security_result.detection_fields[].key: "x-policy-src-ip"
security_result.detection_fields[].value: x-policy-src-ip
Mapeado diretamente do campo JSON correspondente.
x-r-cert-enddate network.tls.server.certificate.not_after.seconds: segundos de Epoch a partir de x-r-cert-enddate A data é convertida em segundos de época.
x-r-cert-expired additional.fields[].key: "x-r-cert-expired"
additional.fields[].value.string_value: x-r-cert-expired
Mapeado diretamente do campo JSON correspondente.
x-r-cert-incomplete-chain additional.fields[].key: "x-r-cert-incomplete-chain"
additional.fields[].value.string_value: x-r-cert-incomplete-chain
Mapeado diretamente do campo JSON correspondente.
x-r-cert-issuer-cn network.tls.server.certificate.issuer: x-r-cert-issuer-cn Mapeado diretamente do campo JSON correspondente.
x-r-cert-mismatch additional.fields[].key: "x-r-cert-mismatch"
additional.fields[].value.string_value: x-r-cert-mismatch
Mapeado diretamente do campo JSON correspondente.
x-r-cert-revoked additional.fields[].key: "x-r-cert-revoked"
additional.fields[].value.string_value: x-r-cert-revoked
Mapeado diretamente do campo JSON correspondente.
x-r-cert-self-signed additional.fields[].key: "x-r-cert-self-signed"
additional.fields[].value.string_value: x-r-cert-self-signed
Mapeado diretamente do campo JSON correspondente.
x-r-cert-startdate network.tls.server.certificate.not_before.seconds: segundos de Epoch a partir de x-r-cert-startdate A data é convertida em segundos de época.
x-r-cert-subject-cn network.tls.server.certificate.subject: x-r-cert-subject-cn Mapeado diretamente do campo JSON correspondente.
x-r-cert-untrusted-root additional.fields[].key: "x-r-cert-untrusted-root"
additional.fields[].value.string_value: x-r-cert-untrusted-root
Mapeado diretamente do campo JSON correspondente.
x-r-cert-valid additional.fields[].key: "x-r-cert-valid"
additional.fields[].value.string_value: x-r-cert-valid
Mapeado diretamente do campo JSON correspondente.
x-request-id additional.fields[].key: "requestId"
additional.fields[].value.string_value: x-request-id
Mapeado diretamente do campo JSON correspondente.
x-rs-file-category additional.fields[].key: "x-rs-file-category"
additional.fields[].value.string_value: x-rs-file-category
Mapeado diretamente do campo JSON correspondente.
x-rs-file-type additional.fields[].key: "x-rs-file-type"
additional.fields[].value.string_value: x-rs-file-type
Mapeado diretamente do campo JSON correspondente.
x-s-country target.location.country_or_region: x-s-country Mapeado diretamente do campo JSON correspondente.
x-s-dp-name additional.fields[].key: "x-s-dp-name"
additional.fields[].value.string_value: x-s-dp-name
Mapeado diretamente do campo JSON correspondente.
x-s-latitude target.location.region_coordinates.latitude: x-s-latitude Mapeado diretamente do campo JSON correspondente.
x-s-location target.location.name: x-s-location Mapeado diretamente do campo JSON correspondente.
x-s-longitude target.location.region_coordinates.longitude: x-s-longitude Mapeado diretamente do campo JSON correspondente.
x-s-region target.location.state: x-s-region Mapeado diretamente do campo JSON correspondente.
x-s-zipcode additional.fields[].key: "x-s-zipcode"
additional.fields[].value.string_value: x-s-zipcode
Mapeado diretamente do campo JSON correspondente.
x-sr-ssl-cipher security_result.detection_fields[].key: "x-sr-ssl-cipher"
security_result.detection_fields[].value: x-sr-ssl-cipher
Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
x-sr-ssl-ja3s network.tls.server.ja3s: x-sr-ssl-ja3s Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
x-sr-ssl-version security_result.detection_fields[].key: "x-sr-ssl-version"
security_result.detection_fields[].value: x-sr-ssl-version
Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
x-ssl-bypass security_result.detection_fields[].key: "SSL BYPASS"
security_result.detection_fields[].value: x-ssl-bypass ou x-ssl-bypass-reason
Se x-ssl-bypass for "Sim" e x-ssl-bypass-reason estiver presente, o valor de x-ssl-bypass-reason será usado. Caso contrário, o valor de x-ssl-bypass será usado.
x-ssl-policy-action security_result.detection_fields[].key: "x-ssl-policy-action"
security_result.detection_fields[].value: x-ssl-policy-action
Mapeado diretamente do campo JSON correspondente.
x-ssl-policy-categories security_result.category_details[]: x-ssl-policy-categories Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
x-ssl-policy-name security_result.rule_name: x-ssl-policy-name Mapeado diretamente do campo JSON correspondente.
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
Mapeado diretamente do campo JSON correspondente.
x-sr-dst-ip security_result.detection_fields[].key: "x-sr-dst-ip"
security_result.detection_fields[].value: x-sr-dst-ip
Mapeado diretamente do campo JSON correspondente.
x-sr-dst-port security_result.detection_fields[].key: "x-sr-dst-port"
security_result.detection_fields[].value: x-sr-dst-port
Mapeado diretamente do campo JSON correspondente.
x-type additional.fields[].key: "xType"
additional.fields[].value.string_value: x-type
Mapeado diretamente do campo JSON correspondente.
x-transaction-id additional.fields[].key: "transactionId"
additional.fields[].value.string_value: x-transaction-id
Mapeado diretamente do campo JSON correspondente.
N/A metadata.vendor_name: "Netskope" Valor codificado no analisador.
N/A metadata.product_name: "Netskope Webproxy" Defina como "Netskope Webproxy" se ele ainda não estiver presente.
N/A metadata.log_type: "NETSKOPE_WEBPROXY" Valor codificado no analisador.

Alterações

2024-06-04

  • O Grok foi adicionado para processar registros não analisados.
  • "url" foi mapeado para "target.url".
  • "appSessionId" foi mapeado para "network.session_id".
  • "Page" foi mapeado para "network.http.referral_url".
  • "appcategory" foi mapeado para "security_result.category_details".
  • "clientBytes" foi associado a "network.sent_bytes".
  • "serverBytes" foi associado a "network.received_bytes".
  • "ccl" foi mapeado para "security_result.confidence_details".
  • Mapeamos "IncidentID", "applicationType", "browser" e "cci" para "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" e "x-cs-app-from-user" foram mapeados para "additional.fields".

2024-02-26

  • O mapeamento de "cs-bytes" mudou de "network.received_bytes" para "network.sent_bytes".
  • O mapeamento de "sc-bytes" mudou de "network.sent_bytes" para "network.received_bytes".
  • O mapeamento "x-cs-app-object-name" foi mapeado para "additional.fields".
  • "x-cs-app-from-user" foi associado a "principal.user.email_addresses".

2023-12-22

  • Se o valor "cs-dns" for "null", mude o mapeamento "cs-host" de "principal.hostname" para "target.hostname".
  • O mapeamento "cs-dns" foi alterado de "principal.hostname" para "target.hostname".
  • Se o valor "sc-status" for "null", mapeie "rs-status" para "network.http.response_code".
  • "x-cs-app" foi mapeado para "principal.application".
  • "x-cs-src-ip-egress" foi mapeado para "principal.ip".

2023-12-08

  • Adição de verificação on_error para analisar os registros com falha.
  • Defina "metadata.vendor_name" como "Netskope" e "metadata.product_name" como "Netskope Webproxy".
  • Foi adicionada uma verificação condicional para "src_region", "src_country", "src_location", "dst_region", "dst_country" e "dst_location" antes do mapeamento.

2023-10-09

  • O "dvchost" foi mapeado para "target.hostname" se "target.hostname" não estiver presente.
  • Foi adicionada uma verificação de nulos antes do mapeamento "requestClientApplication".

2023-09-12

  • "x-cs-dst-ip" foi mapeado para "target.ip".
  • "x-cs-src-ip" foi mapeado para "principal.ip".
  • "x-cs-src-port" foi mapeado para "principal.port".
  • O "x-cs-dst-port" foi mapeado para "target.port".
  • Adição de verificação de on_error para o filtro de data.
  • Foram adicionadas verificações condicionais antes do mapeamento de "metadata.event_type".

2023-08-28

  • "Cs-uri" foi mapeado para "additional.fields".
  • "Cs-uri-port" foi mapeado para "additional.fields".
  • Mapeamos "x-s-zipcode" para "additional.fields".
  • "x-c-zipcode" foi associado a "additional.fields".
  • Mapeamos "x-cs-site" para "additional.fields".
  • "x-category" foi mapeado para "additional.fields".
  • "x-sr-ssl-version" foi associado a "security_result.detection_fields".
  • "x-sr-ssl-cipher" foi associado a "security_result.detection_fields".
  • "x-cs-src-ip-egress" foi mapeado para "security_result.detection_fields".
  • "x-cs-userip" foi associado a "security_result.detection_fields".
  • "x-cs-url" foi associado a "target.url".
  • "x-cs-uri-path" foi mapeado para "additional.fields".
  • "x-cs-app-cci" foi mapeado para "additional.fields".
  • "x-cs-app-object-type" foi mapeado para "additional.fields".
  • "x-rs-file-type" foi mapeado para "additional.fields".
  • "x-rs-file-category" foi mapeado para "additional.fields".

2023-08-17

  • Adição de suporte ao novo formato de registro de tipo JSON.

2023-06-22

  • Adição de suporte para o novo formato de registro do tipo SYSLOG+JSON.

2023-05-30

  • Mapeamos "duser" para "target.user.email_addresses".
  • "requestClientApplication" foi associado a "network.http.parsed_user_agent".

2023-02-03

  • "Domain" foi mapeado para "principal.administrative_domain".

2023-01-09

  • Adicionamos verificações condicionais para mapear diferentes event_type com base nos parâmetros obrigatórios presentes.
  • Analisou diferentes formatos de "rt".

2022-04-06

  • Melhoria: mapeamentos adicionados para novos campos
  • md5, mwDetectionEngine, mwProfile, mwType mapeados para udm.