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_WebSession
analisador 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 parametrizadosASimWebSession<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
eNetworkRuleNumber
são renomeadosRuleName
eRuleNumber
, 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&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:
- Assista ao Webinar do ASIM ou examine os slides
- Visão geral do ASIM (Modelo de Informações de Segurança Avançado)
- Esquemas do ASIM (Modelo de Informações de Segurança Avançado)
- Analisadores do ASIM (Modelo de Informações de Segurança Avançado)
- Conteúdo do ASIM (Modelo de Informações de Segurança Avançado)