Compartilhar via


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.

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 a servidores DNS incluem ataques DDoS direcionados a servidores DNS, amplificação de DDoS DNS, sequestro de DNS e muito mais.

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. Por exemplo, use o conector para identificar clientes que tentam resolver nomes de domínio mal-intencionados, exibir e monitorar cargas de solicitação em servidores DNS ou exibir falhas de registro DNS dinâmicas.

Observação

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

Pré-requisitos

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

  • Um workspace do Log Analytics habilitado para o Microsoft Sentinel.
  • A solução DNS do Windows Server instalada em seu workspace.
  • 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 DNS do Windows por meio do conector AMA via portal

Use a opção de instalação do portal para configurar o conector usando uma única DCR (Regra de Coleta de Dados) por workspace. Posteriormente, use filtros avançados para remover eventos ou informações específicas, carregando apenas os dados valiosos que você deseja monitorar, reduzindo os custos e o uso da largura de banda.

Se você precisar criar várias DCRs, use a API. Usar a API para criar várias DCRs ainda mostrará apenas uma DCR no portal.

Para configurar o conector:

  1. No Microsoft Sentinel, abra a página Conectores de dados e localize Eventos DNS do Windows por meio do conector AMA.

  2. Na parte inferior do painel lateral, selecione Abrir página do conector.

  3. Na área Configuração, selecione Criar regra de coleta de dados. Você pode criar uma única DCR por workspace.

    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. Por exemplo:

    Captura de tela da criação de uma nova DCR para o DNS do Windows por meio do conector AMA.

  4. Selecione a guia Recursos >Adicionar Recurso(s).

  5. Selecione as VMs nas quais você deseja instalar o conector para coletar logs. Por exemplo:

    Captura de tela da seleção de recursos para o DNS do Windows por meio do conector AMA.

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

Configurar o DNS do Windows por meio do conector AMA via API

Use a opção de instalação da API para configurar o conector usando vários DCRs por workspace. Se preferir usar uma única DCR, use a opção do portal.

Usar a API para criar várias DCRs ainda mostra apenas uma DCR no portal.

Use o exemplo a seguir 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 nas suas DCRs

Os logs de eventos do servidor DNS podem conter um grande número de eventos. Recomendamos usar a filtragem avançada para remover 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 carregados no workspace e se baseiam em uma combinação de vários campos.

Para obter mais informações, consulte Campos disponíveis para filtragem.

Criar filtros avançados por meio do portal

Use o procedimento a seguir para criar filtros por meio do portal. Para obter mais informações sobre como criar filtros com a API, consulte Exemplos de filtragem avançada.

Para criar filtros por meio do portal:

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

  2. Insira um nome para o filtro e selecione o tipo de filtro, que é 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. Para obter mais informações, consulte Campos disponíveis para filtragem.

    Captura de tela da criação de um filtro para o DNS do Windows por meio do conector AMA.

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

    Captura de tela da adição de campos a um filtro para o DNS do Windows por meio do conector AMA.

  4. Para adicionar filtros complexos, selecione Adicionar campo de exclusão a ser filtrado e adicione o campo relevante.

    • Use listas separadas por vírgulas para definir vários valores para cada campo.
    • Para criar filtros compostos, use campos diferentes com uma relação AND.
    • Para combinar filtros diferentes, use uma relação OR entre eles.

    Filtros também dão suporte a curingas da seguinte maneira:

    • 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.
  5. Para adicionar mais filtros novos, selecione Adicionar novo filtro de exclusão.

  6. Quando 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.

Exemplos de filtragem avançada

Use os exemplos a seguir para criar filtros avançados comumente usados por meio do portal ou da API.

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.

    Captura de tela da filtragem de IDs de eventos para o DNS do Windows por meio do conector AMA.

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

    Captura de tela da filtragem de IDs de eventos e endereços IPv6 para o DNS do Windows por meio do conector AMA.

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.

Captura de tela da filtragem de domínios para o DNS do Windows por meio do conector AMA.

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"                                                                               

                ] 

            }, 

         } 

    } 

] 

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.

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: