Transmitir e filtrar dados de servidores DNS do Windows com o conector AMA

Este artigo descreve como usar o conector AMA (Agente do Azure Monitor) para transmitir e filtrar eventos dos logs do seu servidor DNS (Sistema de Nomes de Domínio) do Windows. Em seguida, você pode analisar os seus dados com profundidade para proteger os seus servidores DNS contra ameaças e ataques.

O AMA e a respectiva extensão DNS são instalados no seu Windows Server para carregar dados dos seus logs analíticos DNS para o seu workspace do Microsoft Sentinel. Saiba mais sobre o conector.

Visão geral

Por que é importante monitorar a atividade DNS

O DNS é um protocolo amplamente usado, que mapeia entre nomes de host e endereços IP legíveis do computador. Como o DNS não foi projetado com a segurança em mente, o serviço é alvo frequente de atividades mal-intencionadas, tornando o registro em log uma parte essencial do monitoramento de segurança.

Algumas ameaças conhecidas direcionadas aos servidores DNS incluem:

  • DDoS direcionados a servidores DNS
  • Amplificação de DDoS no DNS
  • Sequestro de DNS
  • Túnel de DNS
  • Envenenamento de DNS
  • Falsificação de DNS
  • Ataque NXDOMAIN
  • Ataques de domínio fantasma

Eventos DNS do Windows por meio do conector AMA

Embora alguns mecanismos tenham sido introduzidos para aprimorar a segurança geral desse protocolo, os servidores DNS ainda são um serviço altamente visado. As organizações podem monitorar logs de DNS para entender melhor a atividade de rede e identificar comportamentos suspeitos ou ataques direcionados a recursos na rede. Os Eventos DNS do Windows por meio do conector AMA fornecem esse tipo de visibilidade.

Com o conector, você pode:

  • Identificar clientes que tentam resolver nomes de domínio mal-intencionados.
  • Exibir e monitorar as cargas de solicitação em servidores DNS.
  • Exibir falhas de registro de DNS dinâmico.
  • Identificar os nomes de domínio consultados com frequência e clientes DNS comunicativos.
  • Identificar registros de recursos obsoletos.
  • Exibir todos os logs relacionados ao DNS em um só lugar.

Como a coleção funciona com os Eventos DNS do Windows por meio do conector AMA

  1. O conector AMA usa a extensão DNS instalada para coletar e analisar os logs.

    Observação

    Atualmente, os Eventos DNS do Windows por meio do conector AMA são compatíveis apenas com atividades de eventos analíticos.

  2. O conector transmite os eventos para o workspace do Microsoft Sentinel para que sejam analisados com mais profundidade.

  3. Agora você pode usar filtros avançados para filtrar eventos ou informações específicas. Com filtros avançados, você carrega apenas os dados valiosos que deseja monitorar, reduzindo os custos e o uso de largura de banda.

Normalização usando ASIM

Este conector é totalmente normalizado usando analisadores do ASIM (Modelo de informações de segurança avançado). O conector transmite eventos originados dos logs analíticos na tabela normalizada chamada ASimDnsActivityLogs. Essa tabela atua como um tradutor, usando um idioma unificado, compartilhado entre todos os conectores DNS que estão por vir.

Para obter um analisador independente de origem que unifique todos os dados DNS e garanta que a sua análise seja executada em todas as origens configuradas, use o analisador unificador de DNS do ASIM_Im_Dns.

O analisador unificador do ASIM complementa a tabela nativa ASimDnsActivityLogs. Embora a tabela nativa seja compatível com ASIM, o analisador é necessário para adicionar capacidades, como aliases, disponíveis somente no momento da consulta e para combinar ASimDnsActivityLogs com outras fontes de dados de DNS.

O esquema DNS do ASIM representa a atividade do protocolo DNS, conforme registrado no servidor DNS do Windows nos logs analíticos. O esquema é regido por listas de parâmetros oficiais e RFCs que definem campos e valores.

Confira a lista dos campos do servidor DNS do Windows traduzidos em nomes de campo normalizados.

Configurar o DNS do Windows por meio do conector AMA

Você pode configurar o conector de duas maneiras:

  • Portal do Microsoft Sentinel. Com essa configuração, você pode criar, gerenciar e excluir uma única DCR (Regra de Coleta de Dados) por workspace. Mesmo se você definir várias DCRs por meio da API, o portal mostrará apenas uma única DCR.
  • API. Com esta configuração, você pode criar, gerenciar e excluir várias DCRs.

Pré-requisitos

Antes de começar, verifique se você tem:

  • A solução do Microsoft Sentinel habilitada.
  • Um workspace do Microsoft Sentinel definido.
  • O Windows Server 2012 R2 com hotfix de auditoria e posterior.
  • Um Servidor DNS do Windows.
  • Para coletar eventos de qualquer sistema que não seja uma máquina virtual do Azure, verifique se o Azure Arc está instalado. Instale e habilite o Azure Arc antes de habilitar o conector baseado no Agente do Azure Monitor. Esse requisito inclui:
    • Servidores Windows instalados em computadores físicos
    • Servidores Windows instalados em máquinas virtuais locais
    • Servidores Windows instalados em máquinas virtuais em nuvens não Azure

Configurar o conector no portal do Microsoft Sentinel (interface do usuário)

Abrir a página do conector e criar a DCR

  1. Abra o portal do Azure, navegue até o serviço Microsoft Azure Sentinel.
  2. Na folha Conectores de dados, na barra de pesquisa, digite DNS.
  3. Selecione os Eventos DNS do Windows por meio do conector AMA.
  4. Abaixo da descrição do conector, selecione Abrir página do conector.
  5. Na área Configuração, selecione Criar regra de coleta de dados. Você pode criar uma única DCR por workspace. Se você precisar criar várias DCRs, use a API.

O nome, a assinatura e o grupo de recursos da DCR são definidos automaticamente com base no nome do workspace, na assinatura atual e no grupo de recursos do qual o conector foi selecionado.

Screenshot of creating a new D C R for the Windows D N S over A M A connector.

Definir recursos (VMs)

  1. Selecione a guia Recursos e selecione Adicionar Recursos.

  2. Selecione as VMs nas quais você deseja instalar o conector para coletar logs.

    Screenshot of selecting resources for the Windows D N S over A M A connector.

  3. Examine as suas alterações e selecione Salvar>Aplicar.

Filtrar eventos indesejados

Quando você usa filtros, exclui o evento especificado pelo filtro. Em outras palavras, o Microsoft Sentinel não coleta dados para o evento especificado. Embora essa etapa não seja necessária, ela pode ajudar a reduzir custos e simplificar a triagem de eventos.

Para criar filtros:

  1. Na página do conector, na área Configuração, selecione Adicionar filtros de coleta de dados.

  2. Digite um nome para o filtro e selecione o tipo de filtro. O tipo de filtro é um parâmetro que reduz o número de eventos coletados. Os parâmetros são normalizados de acordo com o esquema normalizado de DNS. Confira a lista de campos disponíveis para filtragem.

    Screenshot of creating a filter for the Windows D N S over A M A connector.

  3. Escolha os valores para os quais você deseja filtrar o campo entre os valores listados na lista suspensa.

    Screenshot of adding fields to a filter for the Windows D N S over A M A connector.

  4. Para adicionar filtros complexos, selecione Adicionar campo de exclusão a ser filtrado e adicione o campo relevante. Veja exemplos na seção Usar filtros avançados abaixo.

  5. Para adicionar mais filtros novos, selecione Adicionar novo filtro de exclusão.

  6. Após terminar de adicionar filtros, selecione Adicionar.

  7. Na página principal do conector, selecione Aplicar alterações para salvar e implantar os filtros em seus conectores. Para editar ou excluir filtros ou campos existentes, selecione os ícones de edição ou exclusão na tabela na área de Configuração.

  8. Para adicionar campos ou filtros após a implantação inicial, selecione Adicionar filtros de coleta de dados novamente.

Configurar o conector com a API

Você pode criar DCRs usando a API. Use essa opção se precisar criar várias DCRs.

Use este exemplo como um modelo para criar ou atualizar uma DCR:

URL e cabeçalho da solicitação


PUT 

    https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dataCollectionRuleName}?api-version=2019-11-01-preview 

Corpo da solicitação


{
    "properties": {
        "dataSources": {
            "windowsEventLogs": [],
            "extensions": [
                {
                    "streams": [
                        "Microsoft-ASimDnsActivityLogs"
                    ],
                    "extensionName": "MicrosoftDnsAgent",
                    "extensionSettings": {
                        "Filters": [
                            {
                                "FilterName": "SampleFilter",
                                "Rules": [
                                    {
                                        "Field": "EventOriginalType",
                                        "FieldValues": [
                                            "260"
                                        ]
                                    }
                                ]
                            }
                        ]
                    },
                    "name": "SampleDns"
                }
            ]
        },
        "destinations": {
            "logAnalytics": [
                {
                    "workspaceResourceId": "/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.OperationalInsights/workspaces/{sentinelWorkspaceName}",
                    "workspaceId": {WorkspaceGuid}",
                    "name": "WorkspaceDestination"
                }
            ]
        },
        "dataFlows": [
            {
                "streams": [
                    "Microsoft-ASimDnsActivityLogs"
                ],
                "destinations": [
                    " WorkspaceDestination "
                ]
            }
        ],
    },
    "location": "eastus2",
    "tags": {},
    "kind": "Windows",
    "id":"/subscriptions/{subscriptionId}/resourceGroups/{resourceGroup}/providers/Microsoft.Insights/dataCollectionRules/{workspaceName}-microsoft-sentinel-asimdnsactivitylogs ",
    "name": " {workspaceName}-microsoft-sentinel-asimdnsactivitylogs ",
    "type": "Microsoft.Insights/dataCollectionRules",
}

Usar filtros avançados

Os logs de eventos do servidor DNS podem conter um grande número de eventos. Você pode usar a filtragem avançada para filtrar eventos desnecessários antes que os dados sejam carregados, economizando tempo e custos valiosos de triagem. Os filtros removem os dados desnecessários do fluxo de eventos carregado no workspace.

Os filtros são baseados em uma combinação de vários campos.

  • Você pode usar vários valores para cada campo usando uma lista separada por vírgulas.
  • Para criar filtros compostos, use campos diferentes com uma relação AND.
  • Para combinar filtros diferentes, use uma relação OR entre eles.

Examine os campos disponíveis para filtragem.

Use curingas

Você pode usar caracteres curinga em filtros avançados. Examine estas considerações sobre o uso de caracteres curinga:

  • Adicione um ponto após cada asterisco (*.).
  • Não use espaços entre a lista de domínios.
  • Caracteres curinga se aplicam somente aos subdomínios do domínio, incluindo www.domain.com, independentemente do protocolo. Por exemplo, se você usar *.domain.com em um filtro avançado:
    • O filtro se aplica a www.domain.com e subdomain.domain.com, independentemente de o protocolo ser HTTPS, FTP e assim por diante.
    • O filtro não se aplica a domain.com. Para aplicar um filtro a domain.com, especifique o domínio diretamente, sem usar um caractere curinga.

Exemplos de filtro avançados

Não colete IDs de eventos específicos

Esse filtro instrui o conector a não coletar EventID 256 ou EventID 257 ou EventID 260 com endereços IPv6.

Usando o portal do Microsoft Sentinel:

  1. Crie um filtro com o campo EventOriginalType, usando o operador Equals, com os valores 256, 257 e 260.

    Screenshot of filtering out event IDs for the Windows D N S over A M A connector.

  2. Crie um filtro com o campo EventOriginalType definido acima e usando o operador And, incluindo também o campo DnsQueryTypeName definido como AAAA.

    Screenshot of filtering out event IDs and IPv6 addresses for the Windows D N S over A M A connector.

Usando a API:

"Filters": [
    {
        "FilterName": "SampleFilter",
        "Rules": [
            {
                "Field": "EventOriginalType",
                "FieldValues": [
                    "256", "257", "260"                                                                              
                ]
            },
            {
                "Field": "DnsQueryTypeName",
                "FieldValues": [
                    "AAAA"                                        
                ]
            }
        ]
    },
    {
        "FilterName": "EventResultDetails",
        "Rules": [
            {
                "Field": "EventOriginalType",
                "FieldValues": [
                    "230"                                        
                ]
            },
            {
                "Field": "EventResultDetails",
                "FieldValues": [
                    "BADKEY","NOTZONE"                                        
                ]
            }
        ]
    }
]

Não coletar eventos com domínios específicos

Esse filtro instrui o conector a não coletar eventos de nenhum subdomínio de microsoft.com, google.com, amazon.com ou eventos de facebook.com ou center.local.

Usando o portal do Microsoft Sentinel:

Defina o campo DnsQuery usando o operador Equals, com a lista *.microsoft.com,*.google.com,facebook.com,*.amazon.com,center.local.

Examine essas considerações sobre o uso de curingas.

Screenshot of filtering out domains for the Windows D N S over A M A connector.

Para definir valores diferentes em um único campo, use o operador OR.

Usando a API:

Examine essas considerações sobre o uso de curingas.

"Filters": [ 

    { 

        "FilterName": "SampleFilter", 

        "Rules": [ 

            { 

                "Field": "DnsQuery", 

                "FieldValues": [ 

                    "*.microsoft.com", "*.google.com", "facebook.com", "*.amazon.com","center.local"                                                                               

                ] 

            }, 

         } 

    } 

] 

Próximas etapas

Neste artigo, você aprendeu a configurar os eventos DNS do Windows por meio do conector AMA para carregar dados e filtrar os logs DNS do Windows. Para saber mais sobre o Microsoft Sentinel, confira os artigos a seguir: