Compartilhar via


Referência do esquema de normalização da Sessão Web do ASIM (Modelo de Informações de Segurança Avançado) (versão prévia)

O esquema de normalização da Sessão da Web é usado para descrever uma atividade de rede IP. Por exemplo, as atividades de rede IP são relatadas por servidores Web, proxies Web e gateways de segurança da Web.

Para saber mais sobre a normalização no Microsoft Sentinel, confira Normalização e o ASIM (Modelo de Informações de Segurança Avançado).

Importante

Atualmente, o esquema de normalização de Rede está em VERSÃO PRÉVIA. Esse recurso é fornecido sem um contrato de nível de serviço e não é recomendado para cargas de trabalho de produção.

Os termos suplementares de versão prévia do Azure incluem termos legais adicionais que se aplicam aos recursos do Azure que estão em versão beta, versão prévia ou que, de outra forma, ainda não foram lançados em disponibilidade geral.

Visão geral do esquema

O esquema de normalização da Sessão da Web representa qualquer Sessão de Rede HTTP e é adequado para fornecer suporte para tipos de origem comuns, incluindo:

  • Servidores Web
  • Proxies Web
  • Gateways de segurança da Web

O esquema de sessão da Web do ASIM representa a atividade de protocolo HTTP e HTTPS. Como o esquema representa atividade de protocolo, ele é regido por RFCs e listas de parâmetros oficialmente atribuídas, que são referenciadas neste artigo quando apropriado.

O esquema de sessão da Web não representa eventos de auditoria de dispositivos de origem. Por exemplo, um evento que modifica uma política de Gateway de Segurança da Web não pode ser representado pelo esquema de sessão da Web.

Como as sessões HTTP são sessões de camada de aplicativo que utilizam TCP/IP como a sessão de camada de rede subjacente, o esquema de Sessão da Web é um super conjunto do esquema de Sessão de rede do ASIM.

Os campos mais importantes em um esquema de sessão da Web são:

  • URL, que informa a URL solicitada pelo cliente do servidor.
  • O SrcIpAddr (com alias de IpAddr),que representa o endereço IP do qual a solicitação foi gerada.
  • Campo EventResultDetails, que normalmente relata o código de status HTTP.

Os eventos da sessão da Web também podem incluir informações de Usuário e Processo para o usuário e o processo que iniciam a solicitação.

Analisadores

Para obter mais informações sobre os analisadores do ASIM, consulte a Visão geral dos analisadores do ASIM.

Unificando analisadores

Para usar analisadores que unificam todos os analisadores do ASIM e garantir que sua análise seja executado em todas as fontes configuradas, use o _Im_WebSessionanalisador de filtragem ou o _ASim_WebSession analisador sem parâmetros.

Você também pode usar os analisadores ImWebSession e ASimWebSession implantados pelo workspace ao implantá-los no ImWebSession. Para obter mais informações, consulte Analisadores ASIM integrados e analisadores implantados no workspace.

Analisadores específicos da origem e prontos para uso

Para obter a lista dos analisadores de Sessão da Web que o Microsoft Sentinel fornece prontos para uso, consulte a Lista dos analisadores do ASIM

Adicionar seus próprios analisadores normalizados

Ao implementar analisadores personalizados para o modelo de informação da sessão da Web, dê um nome às suas funções KQL usando a seguinte sintaxe:

  • vimWebSession<vendor><Product> para analisadores parametrizados
  • ASimWebSession<vendor><Product> para analisadores regulares

Filtragem de parâmetros de analisador

Os analisadores im e vim* dão suporte a im. Embora esses analisadores sejam opcionais, eles podem melhorar o desempenho da consulta.

Os seguintes parâmetros de filtragem estão disponíveis:

Nome Tipo Descrição
starttime DATETIME Filtrar somente sessões da Web iniciadas nesse horário ou depois dele.
endtime DATETIME Filtrar somente sessões da Web cuja execução iniciou nesse horário ou antes dele.
srcipaddr_has_any_prefix dinâmico Filtrar somente sessões da Web para as quais o prefixo do campo de endereço IP de origem está em um dos valores listados. A lista de valores pode incluir endereços IP, bem como prefixos de endereço IP. Os prefixos devem terminar com um ., por exemplo: 10.0.. O comprimento da lista é limitado a dez mil itens.
ipaddr_has_any_prefix dinâmico Filtrar somente as sessões de rede para as quais o prefixo do campo de endereço IP de destino ou do campo de endereço IP de origem é um dos valores listados. Os prefixos devem terminar com um ., por exemplo: 10.0.. O comprimento da lista é limitado a dez mil itens.

O campo ASimMatchingIpAddr é definido com um dos valores SrcIpAddr, DstIpAddr, ou Both para refletir os campos ou campos correspondentes.
url_has_any dinâmico Filtrar somente sessões da Web para as quais o prefixo do campo URL está em um dos valores listados. O analisador poderá ignorar o esquema da URL passada como um parâmetro se a origem não o relatar. Se ele for especificado e a sessão não for uma sessão da Web, nenhum resultado será retornado. O comprimento da lista é limitado a dez mil itens.
httpuseragent_has_any dinâmico Filtrar somente sessões da Web para as quais o prefixo do campo de agente do usuário está em um dos valores listados. Se ele for especificado e a sessão não for uma sessão da Web, nenhum resultado será retornado. O comprimento da lista é limitado a dez mil itens.
eventresultdetails_in dinâmico Filtrar somente sessões da Web para as quais o código de status HTTP, armazenado no campo EventResultDetails, está em um dos valores listados.
eventresult string Filtre somente sessões de rede com um valor EventResult específico.

Alguns parâmetros podem aceitar uma lista de valores do tipo dynamic ou um só valor de cadeia de caracteres. Para passar uma lista literal para parâmetros que esperam um valor dinâmico, use explicitamente um literal dinâmico. Por exemplo: dynamic(['192.168.','10.'])

Por exemplo, para filtrar somente sessões da Web para uma lista especificada de nomes de domínio, use:

let torProxies=dynamic(["tor2web.org", "tor2web.com", "torlink.co"]);
_Im_WebSession (url_has_any = torProxies)

Detalhes do esquema

O modelo de informação de sessões da Web está alinhado com o esquema de entidade de Rede OSSEM e o esquema de entidade HTTP OSSEM.

Para estar em conformidade com as melhores práticas do setor, o esquema de sessão da Web usa os descritores Src e Dst para identificar os dispositivos de origem e destino da sessão, sem incluir o token Dvc no nome do campo.

Portanto, por exemplo, o nome do host do dispositivo de origem e o endereço IP são chamados SrcHostname e SrcIpAddr, respectivamente, não SrcDvcHostname e SrcDvcIpAddr. O prefixo Dvc é usado apenas para o dispositivo de relatório ou intermediário, conforme aplicável.

Os campos que descrevem o usuário e o aplicativo associado aos dispositivos de origem e de destino também usam os descritores Src e Dst.

Outros esquemas ASIM normalmente usam o Destino em vez de Dst.

Campos comuns do ASIM

Importante

Os campos comuns a todos os esquemas estão descritos em detalhes no artigo Campos comuns do ASIM.

Campos comuns com diretrizes específicas

A lista a seguir menciona os campos que têm diretrizes específicas para eventos de sessão da Web:

Campo Classe Tipo Descrição
EventType Obrigatório Enumerated Descreve a operação relatada pelo registro. Valores permitidos são:
- HTTPsession: indica uma sessão de rede usada para HTTP ou HTTPS, normalmente relatada por um dispositivo intermediário, como um proxy ou um gateway de segurança da Web.
- WebServerSession: indica uma solicitação HTTP relatada por um servidor Web. Esse evento normalmente tem menos informações relacionadas à rede. A URL relatada não deve incluir um esquema e um nome de servidor, mas só o caminho e parte dos parâmetros da URL.
- ApiRequest: indica uma solicitação HTTP relatada associada a uma chamada à API, normalmente relatada por um servidor de aplicativos. Esse evento normalmente tem menos informações relacionadas à rede. Quando relatada por um servidor de aplicativos, a URL relatada não deve incluir um esquema e um nome de servidor, mas só o caminho e parte dos parâmetros da URL.
EventResult Obrigatório Enumerated Descreve o resultado do evento, normalizado para um dos seguintes valores:
- Success
- Partial
- Failure
- NA (não aplicável)

Para uma sessão HTTP, Success é definido como um código de status menor que 400, e Failure é definido como um código de status maior que 400. Para obter uma lista de códigos de status HTTP, confira W3 Org.

A origem pode fornecer apenas um valor para o campo EventResultDetails, que deve ser analisado para obter o valor de EventResult.
EventResultDetails Recomendadas String O código de status do HTTP.

Observação: O valor pode ser fornecido no registro de origem usando diferentes termos, que devem ser normalizados para esses valores. O valor original deve ser armazenado no campo EventOriginalResultDetails.
EventSchema Obrigatório String O nome do esquema documentado aqui é WebSession.
EventSchemaVersion Obrigatório String A versão do esquema. A versão do esquema documentado aqui é a 0.2.6
Campos Dvc Para eventos de sessão da Web, os campos do dispositivo referem-se ao sistema que relata o evento de sessão da Web. Normalmente, esse é um dispositivo intermediário para eventos HTTPSession, e o servidor Web ou de aplicativo de destino para eventos WebServerSession e ApiRequest.

Todos campos comuns

Os campos que aparecem na tabela abaixo são comuns a todos os esquemas do ASIM. Qualquer diretriz especificada acima substitui as diretrizes gerais do campo. Por exemplo, um campo pode ser opcional em geral, mas obrigatório para um esquema específico. Para saber mais sobre cada campo, confira o artigo Campos comuns do ASIM.

Classe Fields
Obrigatório - EventCount
- EventStartTime
- EventEndTime
- EventType
- EventResult
- EventProduct
- EventVendor
- EventSchema
- EventSchemaVersion
- Dvc
Recomendadas - EventResultDetails
- EventSeverity
- EventUid
- DvcIpAddr
- DvcHostname
- DvcDomain
- DvcDomainType
- DvcFQDN
- DvcId
- DvcIdType
- DvcAction
Opcional - EventMessage
- EventSubType
- EventOriginalUid
- EventOriginalType
- EventOriginalSubType
- EventOriginalResultDetails
- EventOriginalSeverity
- EventProductVersion
- EventReportUrl
- EventOwner
- DvcZone
- DvcMacAddr
- DvcOs
- DvcOsVersion
- DvcOriginalAction
- DvcInterface
- AdditionalFields
- DvcDescription
- DvcScopeId
- DvcScope

Campos da sessão de rede

As sessões HTTP são sessões de camada de aplicativo que utilizam TCP/IP como a sessão de camada de rede subjacente. O esquema de Sessão da Web é um superconjunto de esquema de Sessão de Rede do ASIM e todos os Campos de Esquema de Rede também estão incluídos no esquema de Sessão da Web.

Os seguintes campos do esquema de Sessão de Rede do ASIM têm diretrizes específicas quando usados para um evento de Sessão da Web:

  • O alias Usuário deve se referir a SrcUsername e não a DstUsername.
  • O campo EventOriginalResultDetails pode conter qualquer resultado relatado pela origem, além do código de status HTTP armazenado em EventResultDetails.
  • Para Sessões da Web, o campo de destino principal é o campo URL. O DstDomain é opcional, em vez de recomendado. Especificamente, se ele não estiver disponível, não será necessário extraí-lo da URL no analisador.
  • Os campos NetworkRuleName e NetworkRuleNumber são renomeados RuleName e RuleNumber, respectivamente.

Eventos da Sessão da Web normalmente são relatados por dispositivos intermediários que encerram a conexão HTTP do cliente e iniciam uma nova conexão com o servidor, atuando como um proxy. Para representar o dispositivo intermediário, use os campos Dispositivo intermediário do esquema de sessão de rede do ASIM

Campos de sessão HTTP

Os seguintes campos são os campos adicionais específicos das sessões da Web:

Campo Classe Tipo Descrição
URL Obrigatório String A URL da solicitação HTTP, incluindo parâmetros. Para eventos HTTPSession, a URL pode incluir o esquema e deve incluir o nome do servidor. Para WebServerSession e ApiRequest, a URL normalmente não incluiria o esquema e o servidor, que podem ser encontrados nos campos NetworkApplicationProtocol e DstFQDN, respectivamente.

Exemplo: https://contoso.com/fo/?k=v&amp;q=u#f
UrlCategory Opcional Cadeia de caracteres O agrupamento definido de uma URL ou a parte do domínio da URL. Normalmente, a categoria é fornecida pelos gateways de segurança da Web e é baseada no conteúdo do site para o qual a URL aponta.

Exemplo: mecanismos de pesquisa, conteúdo adulto, notícias, anúncios e domínios estacionados.
UrlOriginal Opcional Cadeia de caracteres O valor original da URL, quando a URL foi modificada pelo dispositivo de relatório e ambos os valores são fornecidos.
HttpVersion Opcional String A versão da solicitação HTTP.

Exemplo: 2.0
HttpRequestMethod Recomendadas Enumerated O método HTTP. Os valores são definidos na RFC 7231 e na RFC 5789 e incluem GET, HEAD, POST, PUT, DELETE, CONNECT, OPTIONS, TRACE e PATCH.

Exemplo: GET
HttpStatusCode Alias O código de status HTTP. Alias para EventResultDetails.
HttpContentType Opcional String O cabeçalho de tipo de conteúdo da resposta HTTP.

Observação: o campo HttpContentType pode incluir o formato de conteúdo e parâmetros extra, como a codificação usada para obter o formato real.

Exemplo: text/html; charset=ISO-8859-4
HttpContentFormat Opcional String A parte do formato de conteúdo de HttpContentType

Exemplo: text/html
HttpReferrer Opcional String O cabeçalho do referenciador HTTP.

Observação: o ASIM, em sincronia com o OSSEM, usa a grafia correta para o referenciador e não a grafia do cabeçalho HTTP original.

Exemplo: https://developer.mozilla.org/docs
HttpUserAgent Opcional String O cabeçalho do agente do usuário HTTP.

Exemplo:
Mozilla/5.0 (Windows NT 10.0; WOW64)
AppleWebKit/537.36 (KHTML, como o Gecko)
Chrome/83.0.4103.97 Safari/537.36
UserAgent Alias Alias para HttpUserAgent
HttpRequestXff Opcional Endereço IP O cabeçalho HTTP X-Forwarded-For.

Exemplo: 120.12.41.1
HttpRequestTime Opcional Inteiro O tempo, em milissegundos, necessário para enviar a solicitação ao servidor, se aplicável.

Exemplo: 700
HttpResponseTime Opcional Inteiro O tempo, em milissegundos, necessário para receber uma resposta no servidor, se aplicável.

Exemplo: 800
HttpHost Opcional String O servidor Web virtual que a solicitação HTTP tem como destino. Esse valor normalmente se baseia no cabeçalho do Host HTTP.
FileName Opcional Cadeia de caracteres Para uploads HTTP, o nome do arquivo carregado.
FileMD5 Opcional MD5 Para uploads HTTP, o hash MD5 do arquivo carregado.

Exemplo: 75a599802f1fa166cdadb360960b1dd0
FileSHA1 Opcional SHA1 Para uploads HTTP, o hash SHA1 do arquivo carregado.

Exemplo:
d55c5a4df19b46db8c54
c801c4665d3338acdab0
FileSHA256 Opcional SHA256 Para uploads HTTP, o hash SHA256 do arquivo carregado.

Exemplo:
e81bb824c4a09a811af17deae22f22dd
2e1ec8cbb00b22629d2899f7c68da274
FileSHA512 Opcional SHA512 Para uploads HTTP, o hash SHA512 do arquivo carregado.
Hash Alias Alias para o campo Hash disponível.
FileHashType Opcional Enumerated O tipo do hash no campo Hash. Os valores possíveis incluem: MD5, SHA1, SHA256 e SHA512.
FileSize Opcional long Para uploads HTTP, o tamanho em bytes do arquivo carregado.
FileContentType Opcional Cadeia de caracteres Para uploads HTTP, o tipo de conteúdo do arquivo carregado.

Outros campos

Se o evento for relatado por um dos pontos de extremidade da sessão da Web, ele poderá incluir informações sobre o processo que iniciou ou encerrou a sessão. Nesses casos, o esquema de Evento de Processo do ASIM usado para normalizar essas informações.

Atualizações de esquema

O esquema de Sessão da Web depende do esquema de Sessão da Rede. Portanto, as atualizações de esquema de Sessão da Rede também se aplicam ao esquema de Sessão da Web.

Estas são as alterações na versão 0.2.5 do esquema:

  • Adicionou o campo HttpHost.

Estas são as alterações na versão 0.2.6 do esquema:

  • O tipo de FileSize foi alterado de Inteiro para Longo.

Próximas etapas

Para obter mais informações, consulte: