Partilhar via


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

Este artigo descreve como usar o conector do Azure Monitor Agent (AMA) para transmitir e filtrar eventos dos logs do servidor DNS (Sistema de Nomes de Domínio) do Windows. Em seguida, você pode analisar profundamente seus dados para proteger seus servidores DNS contra ameaças e ataques. O AMA e sua extensão DNS são instalados no Windows Server para carregar dados dos logs analíticos do DNS para o espaço de trabalho do Microsoft Sentinel.

O DNS é um protocolo amplamente utilizado, que mapeia entre nomes de host e endereços IP legíveis por computador. Como o DNS não foi projetado com a segurança em mente, o serviço é altamente visado por atividades maliciosas, tornando seu registro uma parte essencial do monitoramento de segurança. Algumas ameaças bem conhecidas que visam servidores DNS incluem ataques DDoS visando servidores DNS, amplificação de DNS DDoS, sequestro de DNS e muito mais.

Embora alguns mecanismos tenham sido introduzidos para melhorar a segurança geral deste protocolo, os servidores DNS ainda são um serviço altamente direcionado. As organizações podem monitorar os logs de DNS para entender melhor a atividade da rede e identificar comportamentos suspeitos ou ataques direcionados a recursos dentro da rede. Os eventos DNS do Windows via 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âmico.

Nota

Atualmente, os Eventos DNS do Windows através do conector AMA suportam apenas atividades de eventos analíticos.

Pré-requisitos

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

  • Um espaço de trabalho do Log Analytics habilitado para o Microsoft Sentinel.
  • A solução DNS do Windows Server instalada no seu espaço de trabalho.
  • Windows Server 2012 R2 com correção de auditoria ou posterior.
  • Um servidor DNS 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 ative o Azure Arc antes de ativar o conector baseado no Azure Monitor Agent. Este requisito inclui:

  • Servidores Windows instalados em máquinas físicas
  • Servidores Windows instalados em máquinas virtuais locais
  • Servidores Windows instalados em máquinas virtuais em nuvens que não sejam do Azure

Configurar o conector DNS sobre AMA do Windows através do portal

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

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

Para configurar o conector:

  1. No Microsoft Sentinel, abra a página Conectores de dados e localize os Eventos DNS do Windows através 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 um único DCR por espaço de trabalho.

    O nome DCR, a assinatura e o grupo de recursos são definidos automaticamente com base no nome do espaço de trabalho, na assinatura atual e no grupo de recursos do qual o conector foi selecionado. Por exemplo:

    Captura de ecrã da criação de um novo D C R para o conector Windows D N S sobre A M A.

  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 ecrã a mostrar a seleção de recursos para o conector Windows D N S sobre A M A.

  6. Reveja as alterações e selecione Guardar>Aplicar.

Configurar o DNS do Windows sobre o conector AMA via API

Use a opção de configuração da API para configurar o conector usando vários DCRs por espaço de trabalho. Se preferir usar um único DCR, use a opção de portal.

Usar a API para criar vários DCRs ainda mostra apenas um DCR no portal.

Use o exemplo a seguir como um modelo para criar ou atualizar um 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 do pedido


{
    "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",
}

Use filtros avançados em seus DCRs

Os logs de eventos do servidor DNS podem conter um grande número de eventos. Recomendamos o uso de 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 carregados no seu espaço de trabalho e baseiam-se numa combinação de vários campos.

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

Crie filtros avançados através do portal

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

Para criar filtros através 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 DNS. Para obter mais informações, consulte Campos disponíveis para filtragem.

    Captura de ecrã a mostrar a criação de um filtro para o conector Windows D N S sobre A M A.

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

    Captura de ecrã a mostrar a adição de campos a um filtro para o conector Windows D N S sobre A M A.

  4. Para adicionar filtros complexos, selecione Adicionar campo de exclusão para filtrar 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 diferentes filtros, use uma relação OR entre eles.

    Os filtros também suportam curingas da seguinte maneira:

    • Adicione um ponto após cada asterisco (*.).
    • Não use espaços entre a lista de domínios.
    • Os curingas aplicam-se apenas 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 ao domain.com. Para aplicar um filtro ao domain.com, especifique o domínio diretamente, sem usar um curinga.
  5. Para adicionar mais novos filtros, selecione Adicionar novo filtro de exclusão.

  6. Quando terminar de adicionar filtros, selecione Adicionar.

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

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

Exemplos avançados de filtragem

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 Microsoft Sentinel:

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

    Captura de ecrã a mostrar a filtragem de IDs de eventos para o conector Windows D N S através de um conector M A.

  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 ecrã a mostrar a filtragem de IDs de eventos e endereços IPv6 para o conector Windows D N S sobre A M A.

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 colete 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 Microsoft Sentinel:

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

Analise estas considerações para usar curingas.

Captura de ecrã a mostrar a filtragem de domínios para o conector Windows D N S sobre A M A.

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

Usando a API:

Analise estas considerações para usar 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 ASIM (Advanced Security Information Model). O conector transmite eventos originados dos logs analíticos para a tabela normalizada chamada ASimDnsActivityLogs. Esta tabela atua como um tradutor, usando um idioma unificado, compartilhado em todos os conectores DNS futuros.

Para um analisador independente de origem que unifique todos os dados DNS e garanta que sua análise seja executada em todas as fontes configuradas, use o analisador _Im_Dnsunificador de DNS ASIM.

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

O esquema DNS 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.

Consulte a lista de campos do servidor DNS do Windows traduzidos para os nomes de campos normalizados.

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