Coletar registros de proxy da Web do Netskope
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
- Faça login no console do Google SecOps.
- Acesse Configurações do SIEM > Perfil.
- Copie e salve o ID do cliente na seção Detalhes da organização.
Configurar o locatário do Netskope no CE
- Acesse Configurações > Geral.
- Mude a posição da chave Log Shipper para ON.
- Em Configurações, acesse Tenants do Netskope.
- Se nenhum locatário estiver configurado, clique em Adicionar locatário.
- 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
- Acesse Configurações > Plugins.
- Pesquise e selecione a caixa Netskope (CLS) para abrir a página de criação do plug-in.
- 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
- Acesse Configurações > Plugins.
- Pesquise e selecione a caixa Chronicle (CLS) para abrir a página de criação do plug-in.
- 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
- Acesse Envio de registro > Regras de negócios.
- Por padrão, há uma regra de negócios que filtra todos os alertas e eventos.
- 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.
- Clique em Salvar.
Configurar mapeamentos de SIEM do Log Shipper para o Google SecOps
- Acesse Envio de registro > Mapeamentos de SIEM.
- Clique em Adicionar mapeamento do SIEM.
- 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
- Acesse Registros na Netskope Cloud Exchange.
- Pesquise os registros extraídos.
- Em Registros, pesquise eventos e alertas ingeridos com o filtro a mensagem contém "ingerida".
- 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 derivadosecurity_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 analisadonetwork.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 analisadonetwork.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 analisadonetwork.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 derivadosecurity_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.