A referência do esquema de normalização do DNS do ASIM (Modelo Avançado de Informações de Segurança

O modelo de informações DNS é usado para descrever eventos relatados por um servidor DNS ou um sistema de segurança DNS e é usado pelo Microsoft Sentinel para habilitar análises independentes de origem.

Para obter mais informações, consulte Normalização e o ASIM (Modelo Avançado de Informações de Segurança).

Visão geral do esquema

O esquema DNS do ASIM representa a atividade do protocolo DNS. Tanto os servidores DNS quanto os dispositivos que enviam solicitações DNS para um servidor DNS registram a atividade DNS. A atividade do protocolo DNS inclui consultas DNS, atualizações de servidor DNS e transferências de dados em massa de DNS. Como o esquema representa a atividade do protocolo, ele é regido por RFCs e listas de parâmetros atribuídas oficialmente, que são referenciadas neste artigo quando apropriado. O esquema DNS não representa eventos de auditoria do servidor DNS.

A atividade mais importante relatada pelos servidores DNS é uma consulta DNS, para a qual o EventType campo está definido como Query.

Os campos mais importantes em um evento DNS são:

  • DnsQuery, que informa o nome de domínio para o qual a consulta foi emitida.

  • O SrcIpAddr (alias para IpAddr), que representa o endereço IP do qual a solicitação foi gerada. Os servidores DNS normalmente fornecem o campo SrcIpAddr, mas os clientes DNS às vezes não fornecem esse campo e fornecem apenas o campo SrcHostname .

  • EventResultDetails, que informa se a solicitação foi bem-sucedida e, se não, por quê.

  • Quando disponível, DnsResponseName, que contém a resposta fornecida pelo servidor à consulta. O ASIM não requer a análise da resposta e seu formato varia entre as fontes.

    Para usar esse campo em conteúdo independente de origem, pesquise o conteúdo com os has operadores ou contains .

Os eventos DNS coletados no dispositivo cliente também podem incluir informações do Usuário e do Processo .

Diretrizes para coletar eventos DNS

O DNS é um protocolo exclusivo, pois pode atravessar um grande número de computadores. Além disso, como o DNS usa UDP, as solicitações e respostas são desacopladas e não estão diretamente relacionadas entre si.

A imagem a seguir mostra um fluxo de solicitação de DNS simplificado, incluindo quatro segmentos. Uma solicitação do mundo real pode ser mais complexa, com mais segmentos envolvidos.

Fluxo de solicitação DNS simplificado.

Como os segmentos de solicitação e resposta não estão diretamente conectados entre si no fluxo de solicitação DNS, o registro em log completo pode resultar em duplicação significativa.

O segmento mais valioso a ser registrado é a resposta ao cliente. A resposta fornece as consultas de nome de domínio, o resultado da pesquisa e o endereço IP do cliente. Embora muitos sistemas DNS registrem apenas esse segmento, há valor em registrar as outras partes. Por exemplo, um ataque de envenenamento de cache DNS geralmente tira proveito de respostas falsas de um servidor upstream.

Se sua fonte de dados der suporte ao log DNS completo e você tiver optado por registrar vários segmentos, ajuste suas consultas para evitar a duplicação de dados no Microsoft Sentinel.

Por exemplo, você pode modificar sua consulta com a seguinte normalização:

_Im_Dns | where SrcIpAddr != "127.0.0.1" and EventSubType == "response"

Analisadores

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

Analisadores prontos para uso

Para usar analisadores que unificam todos os analisadores prontos para uso do ASIM e garantir que sua análise seja executada em todas as fontes configuradas, use o analisador _Im_Dns unificador como o nome da tabela em sua consulta.

Para obter a lista dos analisadores DNS Microsoft Sentinel fornece prontos para uso, consulte a lista de analisadores ASIM.

Adicionar seus próprios analisadores normalizados

Ao implementar analisadores personalizados para o modelo de informações DNS, nomeie suas funções KQL usando o formato vimDns<vendor><Product>. Consulte o artigo Gerenciando analisadores ASIM para saber como adicionar seus analisadores personalizados ao analisador unificador de DNS.

Parâmetros do analisador filtrante

Os analisadores DNS suportam parâmetros de filtragem. Embora esses parâmetros 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 Filtre somente consultas DNS executadas nesse horário ou após esse período. Esse parâmetro é filtrado TimeGenerated no campo, que é o designador padrão para a hora do evento, independentemente do mapeamento específico do analisador dos campos EventStartTime e EventEndTime.
Hora de Término datetime Filtre somente as consultas DNS que terminaram de ser executadas nesse horário ou antes disso. Esse parâmetro é filtrado TimeGenerated no campo, que é o designador padrão para a hora do evento, independentemente do mapeamento específico do analisador dos campos EventStartTime e EventEndTime.
srcipaddr cadeia Filtre apenas consultas DNS deste endereço IP de origem.
domain_has_any dinâmico/cadeia de caracteres Filtrar somente consultas DNS em que ( domain ou query) tem qualquer um dos nomes de domínio listados, incluindo como parte do domínio do evento. O comprimento da lista é limitado a 10.000 itens.
ResponseCodeName cadeia Filtrar somente consultas DNS para as quais o nome do código de resposta corresponde ao valor fornecido.
Por exemplo: NXDOMAIN
response_has_ipv4 cadeia Filtrar somente consultas DNS nas quais o campo de resposta inclui o endereço IP fornecido ou o prefixo de endereço IP. Use este parâmetro quando quiser filtrar em um único endereço IP ou prefixo.

Os resultados não são retornados para fontes que não fornecem uma resposta.
response_has_any_prefix dinâmico Filtrar somente consultas DNS nas quais o campo de resposta inclui qualquer um dos endereços IP ou prefixos de endereços IP listados. Os prefixos devem terminar com um ., por exemplo: 10.0..

Use este parâmetro quando quiser filtrar em uma lista de endereços IP ou prefixos.

Os resultados não são retornados para fontes que não fornecem uma resposta. O comprimento da lista é limitado a 10.000 itens.
Tipo de evento cadeia Filtrar somente consultas DNS do tipo especificado. Se nenhum valor for especificado, somente as consultas de pesquisa serão retornadas.

Por exemplo, para filtrar somente as consultas DNS do último dia que não conseguiram resolver o nome de domínio, use:

_Im_Dns (responsecodename = 'NXDOMAIN', starttime = ago(1d), endtime=now())

Para filtrar apenas consultas DNS para uma lista especificada de nomes de domínio, use:

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

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

Conteúdo normalizado

Para obter uma lista completa de regras de análise que usam eventos DNS normalizados, consulte Conteúdo de segurança de consulta DNS.

Detalhes do esquema

O modelo de informações DNS está alinhado com o esquema de entidade DNS OSSEM.

Para obter mais informações, consulte a referência do parâmetro DNS da IANA (Internet Assigned Numbers Authority).

Campos ASIM comuns

Importante

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

Campos comuns com diretrizes específicas

A lista a seguir menciona campos que têm diretrizes específicas para eventos DNS:

Field Classe Tipo Descrição
EventType Obrigatório Enumerado Indica a operação relatada pelo registro.

Para registros DNS, esse valor seria o código de operação DNS.

Exemplo: Query
EventSubType Opcional Enumerado Pode ser request ou response.

Para a maioria das fontes, somente as respostas são registradas e, portanto, o valor geralmente é resposta.
EventResultDetails Obrigatório Enumerado Para eventos DNS, esse campo fornece o código de resposta DNS.

Observações:
- A IANA não define o caso para os valores, portanto, a análise deve normalizar o caso.
- Se a fonte fornecer apenas um código de resposta numérico e não um nome de código de resposta, o analisador deverá incluir uma tabela de pesquisa para enriquecer com esse valor.
- Se este registro representar uma solicitação e não uma resposta, defina como NA.

Exemplo: NXDOMAIN
EventSchemaVersion Obrigatório SchemaVersion (cadeia de caracteres) A versão do esquema documentada aqui é a 1.0.0.
EventSchema Obrigatório Enumerado O nome do esquema documentado aqui é DNS.
Campos Dvc - - Para eventos DNS, os campos de dispositivo referem-se ao sistema que relata o evento DNS.

Todos os campos comuns

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

Classe Fields
Obrigatório - EventCount
- EventStartTime
- EventEndTime
- Tipo de evento
- EventResult
- EventProduct
- EventVendor
- EventSchema
- EventSchemaVersion
- DVC
Recomendado - EventResultDetails
- EventSeveridade
- EventUid
- DvcIpAddr
- Nome do host do DVC
- DvcDomain
- DvcDomainType
- DvcFQDN
- DvcId
- DvcIdType
- DvcAction
Opcional - EventMessage
- EventSubType
- EventOriginalUid
- EventOriginalType
- EventOriginalSubType
- EventOriginalResultDetails
- EventOriginalSeverity
- EventProductVersion
- EventReportUrl
- EventOwner
- DvcZone
- DvcMacAddr
- DvcOs
- DvcOsVersion
- DvcOriginalAction
- Interface DvcInterface
- AdditionalFields
- DvcDescription
- DvcScopeId
- DvcScope

Campos do sistema de origem

Campo Classe Tipo Descrição
SRC Alias Cadeia de caracteres Um identificador exclusivo do dispositivo de origem.

Esse campo pode alias para os campos SrcDvcId, SrcHostname ou SrcIpAddr .

Exemplo: 192.168.12.1
SrcIpAddr Recomendado Endereço IP O endereço IP do cliente que enviou a solicitação DNS. Para uma solicitação DNS recursiva, esse valor normalmente seria o dispositivo de relatório e, na maioria dos casos, definido como 127.0.0.1.

Exemplo: 192.168.12.1
SrcPortNumber Opcional Número inteiro Porta de origem da consulta DNS.

Exemplo: 54312
IpAddr Alias Alias para SrcIpAddr
SrcGeoCountry Opcional País/Região O país/região associado ao endereço IP de origem.

Exemplo: USA
SrcGeoRegion Opcional Região A região associada ao endereço IP de origem.

Exemplo: Vermont
SrcGeoCity Opcional Cidade A cidade associada ao endereço IP de origem.

Exemplo: Burlington
SrcGeoLatitude Opcional Latitude A latitude da coordenada geográfica associada ao endereço IP de origem.

Exemplo: 44.475833
SrcGeoLongitude Opcional Longitude A longitude da coordenada geográfica associada ao endereço IP de origem.

Exemplo: 73.211944
SrcRiskLevel Opcional Número inteiro O nível de risco associado à origem. O valor deve ser ajustado para um intervalo de 0 até , com 0 para benigno 100e 100 para alto risco.

Exemplo: 90
SrcOriginalRiskLevel Opcional Cadeia de caracteres O nível de risco associado à origem, conforme relatado pelo dispositivo de relatório.

Exemplo: Suspicious
SrcHostname Recomendado Nome do host (cadeia de caracteres) O nome do host do dispositivo de origem, excluindo informações de domínio.

Exemplo: DESKTOP-1282V4D
Nome do host Alias Alias para SrcHostname
SrcDomain Recomendado Domínio (cadeia de caracteres) O domínio do dispositivo de origem.

Exemplo: Contoso
SrcDomainType Condicional Enumerado O tipo de SrcDomain, se conhecido. Os valores possíveis incluem:
- Windows (como : contoso)
- FQDN (como : microsoft.com)

Obrigatório se SrcDomain for usado.
SrcFQDN Opcional FQDN (Cadeia de caracteres) O nome do host do dispositivo de origem, incluindo informações de domínio, quando disponíveis.

Observação: este campo suporta o formato FQDN tradicional e o formato domínio\nome do host do Windows. O campo SrcDomainType reflete o formato usado.

Exemplo: Contoso\DESKTOP-1282V4D
SrcDvcId Opcional Cadeia de caracteres A ID do dispositivo de origem, conforme relatado no registro.

Por exemplo: ac7e9755-8eae-4ffc-8a02-50ed7a2216c3
SrcDvcScopeId Opcional Cadeia de caracteres A ID do escopo da plataforma de nuvem à qual o dispositivo pertence. Mapa SrcDvcScopeId para uma ID de assinatura no Azure e para uma ID de conta no AWS.
SrcDvcScope Opcional Cadeia de caracteres O escopo da plataforma de nuvem ao qual o dispositivo pertence. Mapa SrcDvcScope para uma ID de assinatura no Azure e para uma ID de conta no AWS.
SrcDvcIdType Condicional Enumerado O tipo de SrcDvcId, se conhecido. Os valores possíveis incluem:
- AzureResourceId
- MDEid

Se várias IDs estiverem disponíveis, use a primeira da lista e armazene as outras em SrcDvcAzureResourceId e SrcDvcMDEid, respectivamente.

Observação: esse campo é obrigatório se SrcDvcId for usado.
SrcDeviceType Opcional Enumerado O tipo do dispositivo de origem. Os valores possíveis incluem:
- Computer
- Mobile Device
- IOT Device
- Other
SrcDescription Opcional Cadeia de caracteres Um texto descritivo associado ao dispositivo. Por exemplo: Primary Domain Controller.

Campos de usuário de origem

Campo Classe Tipo Descrição
SrcUserId Opcional Cadeia de caracteres Uma representação exclusiva, alfanumérica e legível por máquina do usuário de origem. Para obter mais informações e campos alternativos para IDs adicionais, consulte A entidade User.

Exemplo: S-1-12-1-4141952679-1282074057-627758481-2916039507
SrcUserScope Opcional Cadeia de caracteres O escopo, como o locatário do Microsoft Entra, no qual SrcUserId e SrcUsername são definidos. ou obter mais informações e uma lista de valores permitidos, consulte UserScope no artigo Visão geral do esquema.
SrcUserScopeId Opcional Cadeia de caracteres A ID do escopo, como a ID do Microsoft Entra Directory, na qual SrcUserId e SrcUsername são definidos. para obter mais informações e uma lista de valores permitidos, consulte UserScopeId no artigo Visão geral do esquema.
SrcUserIdType Condicional UserIdType O tipo da ID armazenada no campo SrcUserId . Para obter mais informações e uma lista de valores permitidos, consulte UserIdType no artigo Visão geral do esquema.
SrcUsername Opcional Nome de usuário (cadeia de caracteres) O nome de usuário de origem, incluindo informações de domínio, quando disponíveis. Para obter mais informações, consulte A entidade User.

Exemplo: AlbertE
SrcUsernameType Condicional UsernameType Especifica o tipo do nome de usuário armazenado no campo SrcUsername . Para obter mais informações e uma lista de valores permitidos, consulte UsernameType no artigo Visão geral do esquema.

Exemplo: Windows
Usuário Alias Alias para SrcUsername
SrcUserType Opcional UserType O tipo do usuário de origem. Para obter mais informações e uma lista de valores permitidos, consulte UserType no artigo Visão geral do esquema.

Por exemplo: Guest
SrcUserSessionId Opcional Cadeia de caracteres O ID exclusivo da sessão de login do Ator.

Exemplo: 102pTUgC3p8RIqHvzxLCHnFlg
SrcOriginalUserType Opcional Cadeia de caracteres O tipo de usuário de origem original, se fornecido pela fonte.

Campos de processo de origem

Campo Classe Tipo Descrição
SrcProcessName Opcional Cadeia de caracteres O nome do arquivo do processo que iniciou a solicitação DNS. Esse nome normalmente é considerado o nome do processo.

Exemplo: C:\Windows\explorer.exe
Processo Alias Alias para o SrcProcessName

Exemplo: C:\Windows\System32\rundll32.exe
SrcProcessId Opcional Cadeia de caracteres A ID do processo (PID) do processo que iniciou a solicitação DNS.

Exemplo: 48610176

Observação: o tipo é definido como cadeia de caracteres para dar suporte a sistemas variados, mas no Windows e no Linux esse valor deve ser numérico.

Se você estiver usando um computador Windows ou Linux e usou um tipo diferente, certifique-se de converter os valores. Por exemplo, se você usou um valor hexadecimal, converta-o em um valor decimal.
SrcProcessGuid Opcional GUID (cadeia de caracteres) Um identificador exclusivo gerado (GUID) do processo que iniciou a solicitação DNS.

Exemplo: EF3BD0BD-2B74-60C5-AF5C-010000001E00

Campos do sistema de destino

Campo Classe Tipo Descrição
Horário de verão Alias Cadeia de caracteres Um identificador exclusivo do servidor que recebeu a solicitação DNS.

Esse campo pode ser alias dos campos DstDvcId, DstHostname ou DstIpAddr .

Exemplo: 192.168.12.1
DstIpAddr Opcional Endereço IP O endereço IP do servidor que recebeu a solicitação DNS. Para uma solicitação DNS regular, esse valor normalmente seria o dispositivo de relatório e, na maioria dos casos, definido como 127.0.0.1.

Exemplo: 127.0.0.1
DstGeoCountry Opcional País/Região O país/região associado ao endereço IP de destino. Para obter mais informações, consulte Tipos lógicos.

Exemplo: USA
DstGeoRegion Opcional Região A região, ou estado, associado com o endereço IP de destino. Para obter mais informações, consulte Tipos lógicos.

Exemplo: Vermont
DstGeoCity Opcional Cidade A cidade associada ao endereço IP de destino. Para obter mais informações, consulte Tipos lógicos.

Exemplo: Burlington
DstGeoLatitude Opcional Latitude A latitude da coordenada geográfica associada ao endereço IP de destino. Para obter mais informações, consulte Tipos lógicos.

Exemplo: 44.475833
DstGeoLongitude Opcional Longitude A longitude da coordenada geográfica associada ao endereço IP de destino. Para obter mais informações, consulte Tipos lógicos.

Exemplo: 73.211944
DstRiskLevel Opcional Número inteiro O nível de risco associado ao destino. O valor deve ser ajustado para um intervalo de 0 a 100, sendo 0 benigno e 100 de alto risco.

Exemplo: 90
DstOriginalRiskLevel Opcional Cadeia de caracteres O nível de risco associado ao destino, conforme relatado pelo dispositivo de relatório.

Exemplo: Malicious
DstPortNumber Opcional Número inteiro Número da porta de destino.

Exemplo: 53
Nome do host de DST Opcional Nome do host (cadeia de caracteres) O nome do host do dispositivo de destino, excluindo informações de domínio. Se nenhum nome de dispositivo estiver disponível, armazene o endereço IP relevante nesse campo.

Exemplo: DESKTOP-1282V4D

Observação: esse valor será obrigatório se DstIpAddr for especificado.
DstDomain Opcional Domínio (cadeia de caracteres) O domínio do dispositivo de destino.

Exemplo: Contoso
DstDomainType Condicional Enumerado O tipo de DstDomain, se conhecido. Os valores possíveis incluem:
- Windows (contoso\mypc)
- FQDN (learn.microsoft.com)

Obrigatório se DstDomain for usado.
DstFQDN Opcional FQDN (Cadeia de caracteres) O nome do host do dispositivo de destino, incluindo informações de domínio, quando disponíveis.

Exemplo: Contoso\DESKTOP-1282V4D

Observação: este campo suporta o formato FQDN tradicional e o formato domínio\nome do host do Windows. O DstDomainType reflete o formato usado.
DstDvcId Opcional Cadeia de caracteres A ID do dispositivo de destino, conforme relatado no registro.

Exemplo: ac7e9755-8eae-4ffc-8a02-50ed7a2216c3
DstDvcScopeId Opcional Cadeia de caracteres A ID do escopo da plataforma de nuvem à qual o dispositivo pertence. Mapa de DstDvcScopeId para uma ID de assinatura no Azure e para uma ID de conta no AWS.
DstDvcScope Opcional Cadeia de caracteres O escopo da plataforma de nuvem ao qual o dispositivo pertence. Mapa DstDvcScope para uma ID de assinatura no Azure e para uma ID de conta no AWS.
DstDvcIdType Condicional Enumerado O tipo de DstDvcId, se conhecido. Os valores possíveis incluem:
- AzureResourceId
- MDEidIf

Se várias IDs estiverem disponíveis, use a primeira na lista acima e armazene as outras nos campos DstDvcAzureResourceId ou DstDvcMDEid , respectivamente.

Obrigatório se DstDeviceId for usado.
DstDeviceType Opcional Enumerado O tipo do dispositivo de destino. Os valores possíveis incluem:
- Computer
- Mobile Device
- IOT Device
- Other
DstDescription Opcional Cadeia de caracteres Um texto descritivo associado ao dispositivo. Por exemplo: Primary Domain Controller.

Campos específicos do DNS

Campo Classe Tipo Descrição
DnsQuery Obrigatório Cadeia de caracteres O domínio que a solicitação tenta resolver.

Observações:
- Algumas fontes enviam consultas FQDN válidas em um formato diferente. Por exemplo, no próprio protocolo DNS, a consulta inclui um ponto (.) no final, que deve ser removido.
- Embora o protocolo DNS limite o tipo de valor nesse campo a um FQDN, a maioria dos servidores DNS permite qualquer valor e, portanto, esse campo não se limita apenas a valores FQDN. Mais notavelmente, os ataques de túnel DNS podem usar valores FQDN inválidos no campo de consulta.
- Embora o protocolo DNS permita várias consultas em uma única solicitação, esse cenário é raro, se for encontrado. Se a solicitação tiver várias consultas, armazene a primeira nesse campo e, opcionalmente, mantenha o restante no campo AdditionalFields .

Exemplo: www.malicious.com
Domínio Alias Alias para DnsQuery.
DnsQueryType Opcional Número inteiro Os códigos do Tipo de Registro de Recurso DNS.

Exemplo: 28
DnsQueryTypeName Recomendado Enumerado Os nomes do Tipo de Registro de Recurso DNS .

Observações:
- A IANA não define o caso para os valores, portanto, a análise deve normalizar o caso conforme necessário.
- O valor ANY é compatível com o código de resposta 255.
- O valor TYPExxxx é suportado para códigos de resposta não mapeados, onde xxxx é o valor numérico do código de resposta, conforme relatado pelo servidor DNS BIND.
-Se a origem fornecer apenas um código numérico do tipo de consulta e não um nome de tipo de consulta, o analisador deverá incluir uma tabela de pesquisa para enriquecer com esse valor.

Exemplo: AAAA
DnsResponseName Opcional Cadeia de caracteres O conteúdo da resposta, conforme incluído no registro.

Os dados de resposta do DNS são inconsistentes em todos os dispositivos de relatório, são complexos de analisar e têm menos valor para análises independentes de origem. Portanto, o modelo de informações não requer análise e normalização, e o Microsoft Sentinel usa uma função auxiliar para fornecer informações de resposta. Para obter mais informações, consulte Manipulando resposta DNS.
DnsResponseCodeName Alias Alias para EventResultDetails
DnsResponseCode Opcional Número inteiro O código de resposta numérica DNS.

Exemplo: 3
TransactionIdHex Recomendado Hexadecimal (cadeia de caracteres) A ID exclusiva de consulta DNS conforme atribuída pelo cliente DNS, em formato hexadecimal. Observe que esse valor faz parte do protocolo DNS e é diferente do DnsSessionId, a ID da sessão da camada de rede, normalmente atribuída pelo dispositivo de relatório.
NetworkProtocol Opcional Enumerado O protocolo de transporte usado pelo evento de resolução de rede. O valor pode ser UDP ou TCP e é mais comumente definido como UDP para DNS.

Exemplo: UDP
NetworkProtocolVersion Opcional Enumerado A versão do NetworkProtocol. Ao usá-lo para distinguir entre a versão IP, use os valores IPv4 e IPv6.
DnsQueryClass Opcional Número inteiro A ID da classe DNS.

Na prática, somente a classe IN (ID 1) é usada e, portanto, esse campo é menos valioso.
DnsQueryClassName Recomendado DnsQueryClassName (String) O nome da classe DNS.

Na prática, somente a classe IN (ID 1) é usada e, portanto, esse campo é menos valioso.

Exemplo: IN
DnsFlags Opcional Cadeia de caracteres O campo sinalizadores, conforme fornecido pelo dispositivo de relatório. Se informações de sinalizadores forem fornecidas em vários campos, concatene-os com vírgula como separador.

Como os sinalizadores DNS são complexos de analisar e são usados com menos frequência por análise, a análise e a normalização não são necessárias. O Microsoft Sentinel pode usar uma função auxiliar para fornecer informações de sinalizadores. Para obter mais informações, consulte Manipulando resposta DNS.

Exemplo: ["DR"]
DnsNetworkDuration Opcional Número inteiro A quantidade de tempo, em milissegundos, para a conclusão da solicitação DNS.

Exemplo: 1500
Duration Alias Alias para DnsNetworkDuration
DnsFlagsAuthenticated Opcional booleano O sinalizador DNS AD , que está relacionado ao DNSSEC, indica em uma resposta que todos os dados incluídos nas seções de resposta e autoridade da resposta foram verificados pelo servidor de acordo com as políticas desse servidor. Para obter mais informações, consulte RFC 3655 Seção 6.1 para obter mais informações.
DnsFlagsAuthoritative Opcional booleano O sinalizador DNS AA indica se a resposta do servidor foi autoritativa
DnsFlagsCheckingDisabled Opcional booleano O sinalizador DNS CD , que está relacionado ao DNSSEC, indica em uma consulta que dados não verificados são aceitáveis para o sistema que envia a consulta. Para obter mais informações, consulte RFC 3655 Seção 6.1 para obter mais informações.
DnsFlagsRecursionAvailable Opcional booleano O sinalizador DNS RA indica em uma resposta que o servidor dá suporte a consultas recursivas.
DnsFlagsRecursionDesired Opcional booleano O sinalizador DNS RD indica em uma solicitação que o cliente deseja que o servidor use consultas recursivas.
DnsFlagsTruncated Opcional booleano O sinalizador DNS TC indica que uma resposta foi truncada porque excedeu o tamanho máximo de resposta.
DnsFlagsZ Opcional booleano O sinalizador DNS Z é um sinalizador DNS preterido, que pode ser relatado por sistemas DNS mais antigos.
DnsSessionId Opcional cadeia O identificador de sessão DNS conforme relatado pelo dispositivo de relatório. Esse valor é diferente de TransactionIdHex, a ID exclusiva de consulta DNS atribuída pelo cliente DNS.

Exemplo: EB4BFA28-2EAD-4EF7-BC8A-51DF4FDF5B55
ID da sessão Alias Alias para DnsSessionId
DnsResponseIpCountry Opcional País/Região O país/região associado a um dos endereços IP na resposta DNS. Para obter mais informações, consulte Tipos lógicos.

Exemplo: USA
DnsResponseIpRegion Opcional Região A região, ou o estado, associado a um dos endereços IP na resposta DNS. Para obter mais informações, consulte Tipos lógicos.

Exemplo: Vermont
DnsResponseIpCity Opcional Cidade A cidade associada a um dos endereços IP na resposta DNS. Para obter mais informações, consulte Tipos lógicos.

Exemplo: Burlington
DnsResponseIpLatitude Opcional Latitude A latitude da coordenada geográfica associada a um dos endereços IP na resposta DNS. Para obter mais informações, consulte Tipos lógicos.

Exemplo: 44.475833
DnsResponseIpLongitude Opcional Longitude A longitude da coordenada geográfica associada a um dos endereços IP na resposta DNS. Para obter mais informações, consulte Tipos lógicos.

Exemplo: 73.211944

Campos de inspeção

Os campos a seguir são usados para representar uma inspeção, realizada por um dispositivo de segurança DNS. Os campos relacionados a ameaças representam uma única ameaça associada ao endereço de origem, ao endereço de destino, a um dos endereços IP na resposta ou ao domínio de consulta DNS. Se mais de uma ameaça foi identificada como uma ameaça, as informações sobre outros endereços IP podem ser armazenadas no campo AdditionalFields.

Campo Classe Tipo Descrição
UrlCategory Opcional Cadeia de caracteres Uma origem de evento DNS também pode pesquisar a categoria dos domínios solicitados. O campo é chamado UrlCategory para se alinhar ao esquema de rede do Microsoft Sentinel.

DomainCategory é adicionado como um alias que se ajusta ao DNS.

Exemplo: Educational \\ Phishing
Categoria de domínio Alias Alias para UrlCategory.
RuleName Opcional Cadeia de caracteres O nome ou ID da regra que identificou a ameaça.

Exemplo: AnyAnyDrop
RuleNumber Opcional Número inteiro O número da regra que identificou a ameaça.

Exemplo: 23
Rule Alias Cadeia de caracteres O valor de RuleName ou o valor de RuleNumber. Se o valor de RuleNumber for usado, o tipo deverá ser convertido em cadeia de caracteres.
RuleNumber Opcional int O número da regra associada ao alerta.

por exemplo, 123456
RuleName Opcional cadeia O nome ou a ID da regra associada ao alerta.

por exemplo, Server PSEXEC Execution via Remote Access
ID da Ameaça Opcional Cadeia de caracteres A ID da ameaça ou malware identificado na sessão de rede.

Exemplo: Tr.124
ThreatCategory Opcional Cadeia de caracteres Se uma origem de evento DNS também fornecer segurança DNS, ela também poderá avaliar o evento DNS. Por exemplo, ele pode pesquisar o endereço IP ou domínio em um banco de dados de inteligência contra ameaças e atribuir ao domínio ou endereço IP uma Categoria de Ameaça.
ThreatIpAddr Opcional Endereço IP Um endereço IP para o qual uma ameaça foi identificada. O campo ThreatField contém o nome do campo que ThreatIpAddr representa. Se uma ameaça for identificada no campo Domínio , esse campo deverá estar vazio.
ThreatField Condicional Enumerado O campo para o qual uma ameaça foi identificada. O valor é SrcIpAddr, DstIpAddr, Domainou DnsResponseName.
Nome da Ameaça Opcional Cadeia de caracteres O nome da ameaça identificada, conforme relatado pelo dispositivo de relatório.
ThreatConfidence Opcional ConfidenceLevel (inteiro) O nível de confiança da ameaça identificada, normalizado para um valor entre 0 e 100.
ThreatOriginalConfidence Opcional Cadeia de caracteres O nível de confiança original da ameaça identificada, conforme relatado pelo dispositivo de relatório.
ThreatRiskLevel Opcional RiskLevel (Inteiro) O nível de risco associado à ameaça identificada, normalizado para um valor entre 0 e 100.
ThreatOriginalRiskLevel Opcional Cadeia de caracteres O nível de risco original associado à ameaça identificada, conforme relatado pelo dispositivo de relatório.
ThreatIsActive Opcional booleano Verdadeiro se a ameaça identificada for considerada uma ameaça ativa.
ThreatFirstReportedTime Opcional datetime A primeira vez que o endereço IP ou domínio foi identificado como uma ameaça.
ThreatLastReportedTime Opcional datetime A última vez em que o endereço IP ou domínio foi identificado como uma ameaça.

Aliases e campos preteridos

Os campos a seguir são aliases mantidos para compatibilidade com versões anteriores. Eles foram removidos do esquema em 31 de dezembro de 2021.

  • Query (alias para DnsQuery)
  • QueryType (alias para DnsQueryType)
  • QueryTypeName (alias para DnsQueryTypeName)
  • ResponseName (alias para DnsResponseName)
  • ResponseCodeName (alias para DnsResponseCodeName)
  • ResponseCode (alias para DnsResponseCode)
  • QueryClass (alias para DnsQueryClass)
  • QueryClassName (alias para DnsQueryClassName)
  • Flags (alias para DnsFlags)
  • SrcUserDomain

Campos de correlação de entidades

Observação

Os colaboradores não precisam preencher esses campos. Os analisadores aplicáveis os preencherão quando o suporte interno da Microsoft for adicionado.

Campo Classe Tipo Descrição
DstSystemEntityKey Opcional Cadeia de caracteres Um identificador de string estável e determinístico que identifica de forma única o sistema de destino dentro de um único namespace. Esse identificador único em todo o sistema permite correlação com entidades em outros eventos e inventários de entidades.
SrcProcessEntityKey Opcional Cadeia de caracteres Um identificador de string estável e determinístico que identifica de forma única o processo fonte dentro de um único namespace. Esse identificador único em todo o sistema permite correlação com entidades em outros eventos e inventários de entidades.
SrcSystemEntityKey Opcional Cadeia de caracteres Um identificador de string estável e determinístico que identifica de forma única o sistema de origem dentro de um único namespace. Esse identificador único em todo o sistema permite correlação com entidades em outros eventos e inventários de entidades.
SrcUserAdditionalIds Opcional Dinâmico Para a estrutura e uso dos campos, veja Campos com sufixo com AdditionalIds.
SrcUserEntityKey Opcional Cadeia de caracteres Um identificador de string estável e determinístico que identifica de forma única o usuário de origem dentro de um único namespace. Esse identificador único em todo o sistema permite correlação com entidades em outros eventos e inventários de entidades.

Atualizações de esquema

Versão Alterações
0.1.2 - Adicionou o campo EventSchema.
- Adicionados campos de flag dedicados, que aumentam o campo combinado de Flags : DnsFlagsAuthoritative, DnsFlagsCheckingDisabled, DnsFlagsRecursionAvailable, DnsFlagsRecursionDesired, DnsFlagsTruncated, e DnsFlagsZ.
0.1.3 - Documentou explicitamente os Src*campos, Dst*, , Process*e User* .
- Adicionaram mais Dvc* campos para corresponder à definição mais recente de campos comuns.
- Adicionado Src e Dst como aliases a um identificador inicial para os sistemas de origem e destino.
- Adicionou o campo opcional DnsNetworkDuration e Duration como um alias a ele.
- Adicionados campos opcionais de geolocalização e nível de risco.
0.1.4 Adicionados os campos ThreatIpAddropcionais , ThreatField, ThreatName, ThreatOriginalRiskLevelThreatOriginalConfidenceThreatIsActiveThreatConfidence, , ThreatFirstReportedTime, , e .ThreatLastReportedTime
0.1.5 Adicionados os campos SrcUserScope, SrcUserSessionId, SrcDvcScopeId, SrcDvcScope, DstDvcScopeIdDstDvcScope, DvcScopeIde DvcScope.
0.1.6 Adicionados os campos DnsResponseIpCountry, DnsResponseIpRegion, DnsResponseIpCity, DnsResponseIpLatitudee DnsResponseIpLongitude.
0.1.7 Adicionados os campos SrcDescription, SrcOriginalRiskLevel, DstDescription, DstOriginalRiskLevel, SrcUserScopeIdNetworkProtocolVersion, , Rule, RuleName, , RuleNumber, e ThreatId.
1.0.0 Adicionaram campos de correlação de entidades.

Discrepâncias específicas da origem

O objetivo da normalização é garantir que todas as fontes forneçam telemetria consistente. Uma fonte que não fornece a telemetria necessária, como campos de esquema obrigatórios, não pode ser normalizada. No entanto, as fontes que normalmente fornecem toda a telemetria necessária, mesmo que haja algumas discrepâncias, podem ser normalizadas. Discrepâncias podem afetar a integridade dos resultados da consulta.

A tabela a seguir lista discrepâncias conhecidas:

Origem Discrepâncias
Servidor DNS da Microsoft Coletado usando o conector DNS e o Agente do Log Analytics O conector não fornece o campo DnsQuery obrigatório para a ID de evento original 264 (resposta a uma atualização dinâmica). Os dados estão disponíveis na fonte, mas não são encaminhados pelo conector.
Corelight Zeek O Corelight Zeek pode não fornecer o campo DnsQuery obrigatório. Observamos esse comportamento em determinados casos em que o nome do código de resposta DNS é NXDOMAIN.

Manipulando a resposta DNS

Na maioria dos casos, os eventos DNS registrados não incluem informações de resposta, que podem ser grandes e detalhadas. Se o registro incluir mais informações de resposta, armazene-as no campo ResponseName como aparece no registro.

Você também pode fornecer uma função KQL extra chamada _imDNS<vendor>Response_, que usa a resposta não analisada como entrada e retorna o valor dinâmico com a seguinte estrutura:

[
    {
        "part": "answer"
        "query": "yahoo.com."
        "TTL": 1782
        "Class": "IN"
        "Type": "A"
        "Response": "74.6.231.21"
    }
    {
        "part": "authority"
        "query": "yahoo.com."
        "TTL": 113066
        "Class": "IN"
        "Type": "NS"
        "Response": "ns5.yahoo.com"
    }
    ...
]

Os campos em cada dicionário no valor dinâmico correspondem aos campos em cada resposta DNS. A part entrada deve incluir , answerauthority, ou additional para refletir a parte da resposta à qual o dicionário pertence.

Dica

Para garantir o desempenho ideal, chame a imDNS<vendor>Response função somente quando necessário e somente após uma filtragem inicial para garantir um melhor desempenho.

Manipulando sinalizadores DNS

Análise e normalização não são necessárias para dados de sinalizador. Em vez disso, armazene os dados do sinalizador fornecidos pelo dispositivo de relatório no campo Sinalizadores . Se a determinação do valor de sinalizadores individuais for direta, você também poderá usar os campos sinalizadores dedicados.

Você também pode fornecer uma função KQL extra chamada _imDNS<vendor>Flags_, que usa a resposta não analisada ou campos de sinalizador dedicados como entrada e retorna uma lista dinâmica, com valores boolianos que representam cada sinalizador na seguinte ordem:

  • Autenticado (AD)
  • Autoritativo (AA)
  • Verificação Desabilitada (CD)
  • Recursão Disponível (RA)
  • Recursão Desejada (RD)
  • Truncado (TC)
  • Z