Trasmettere e filtrare i dati dai server DNS Windows con il connettore AMA

Questo articolo descrive come usare il connettore agente di Monitoraggio di Azure per trasmettere e filtrare gli eventi dai log del server DNS (Domain Name System) windows. È quindi possibile analizzare in modo approfondito i dati per proteggere i server DNS da minacce e attacchi.

L'ama e l'estensione DNS sono installati in Windows Server per caricare i dati dai log analitici DNS nell'area di lavoro di Microsoft Sentinel. Informazioni sul connettore.

Panoramica

Perché è importante monitorare l'attività DNS

DNS è un protocollo ampiamente usato, che esegue il mapping tra nomi host e indirizzi IP leggibili dal computer. Poiché il DNS non è stato progettato tenendo conto della sicurezza, il servizio è altamente mirato da attività dannose, rendendo la registrazione una parte essenziale del monitoraggio della sicurezza.

Alcune minacce note che riguardano i server DNS includono:

  • Attacchi DDoS destinati ai server DNS
  • Amplificazione DDoS DNS
  • Hijack DNS
  • Tunneling DNS
  • Avvelenamento DA DNS
  • Spoofing DNS
  • Attacco NXDOMAIN
  • Attacchi di dominio fantasma

Eventi DNS di Windows tramite il connettore AMA

Mentre sono stati introdotti alcuni meccanismi per migliorare la sicurezza complessiva di questo protocollo, i server DNS sono ancora un servizio altamente mirato. Le organizzazioni possono monitorare i log DNS per comprendere meglio le attività di rete e identificare comportamenti sospetti o attacchi mirati alle risorse all'interno della rete. Gli eventi DNS di Windows tramite il connettore AMA offrono questo tipo di visibilità.

Con il connettore è possibile:

  • Identificare i client che tentano di risolvere nomi di dominio dannosi.
  • Visualizzare e monitorare i caricamenti delle richieste nei server DNS.
  • Visualizzare gli errori di registrazione di DNS dinamici.
  • Identificare i nomi di dominio sottoposti frequentemente a query e i client loquaci.
  • Identificare i record di risorse non aggiornati.
  • Visualizzare tutti i log correlati al DNS in un'unica posizione.

Funzionamento della raccolta con gli eventi DNS di Windows tramite il connettore AMA

  1. Il connettore AMA usa l'estensione DNS installata per raccogliere e analizzare i log.

    Nota

    Gli eventi DNS di Windows tramite il connettore AMA supportano attualmente solo le attività analitiche degli eventi.

  2. Il connettore trasmette gli eventi all'area di lavoro di Microsoft Sentinel da analizzare ulteriormente.

  3. È ora possibile usare filtri avanzati per filtrare eventi o informazioni specifici. Con i filtri avanzati, si caricano solo i dati importanti da monitorare, riducendo i costi e l'utilizzo della larghezza di banda.

Normalizzazione con ASIM

Questo connettore è completamente normalizzato tramite i parser Advanced Security Information Model (ASIM). Il connettore trasmette gli eventi originati dai log analitici nella tabella normalizzata denominata ASimDnsActivityLogs. Questa tabella funge da traduttore, usando una lingua unificata, condivisa tra tutti i connettori DNS da venire.

Per un parser indipendente dall'origine che unifica tutti i dati DNS e garantisce che l'analisi venga eseguita in tutte le origini configurate, usare il parser di unificazione DNS ASIM_Im_Dns.

Il parser unificante ASIM integra la tabella nativa ASimDnsActivityLogs. Anche se la tabella nativa è conforme a ASIM, il parser è necessario per aggiungere funzionalità, ad esempio alias, disponibili solo in fase di query e per combinare ASimDnsActivityLogs con altre origini dati DNS.

Lo schema DNS ASIM rappresenta l'attività del protocollo DNS, come registrato nel server DNS Windows nei log analitici. Lo schema è regolato da elenchi di parametri ufficiali e RFC che definiscono campi e valori.

Vedere l'elenco dei campi del server DNS Windows convertiti nei nomi di campo normalizzati.

Configurare il connettore DNS windows su AMA

È possibile configurare il connettore in due modi:

  • Portale di Microsoft Sentinel. Con questa configurazione è possibile creare, gestire ed eliminare una singola regola di raccolta dati (DCR) per ogni area di lavoro. Anche se si definiscono diverse DCR tramite l'API, il portale mostra solo una singola DCR.
  • API. Con questa configurazione è possibile creare, gestire ed eliminare diverse DCR.

Prerequisiti

Prima di iniziare, verificare di avere:

  • La soluzione Microsoft Sentinel abilitata.
  • Area di lavoro di Microsoft Sentinel definita.
  • Windows Server 2012 R2 con hotfix di audit e versione successiva.
  • Un server DNS Windows.
  • Per raccogliere eventi da qualsiasi sistema che non sia una macchina virtuale di Azure, assicurarsi che sia installato Azure Arc. Installare e abilitare Azure Arc prima di abilitare il connettore basato su Agente di Monitoraggio di Azure. Questo requisito include:
    • Server Windows installati in computer fisici
    • Server Windows installati in macchine virtuali locali
    • Server Windows installati in macchine virtuali in cloud non Azure

Configurare il connettore nel portale di Microsoft Sentinel (Interfaccia utente)

Aprire la pagina del connettore e creare la DCR

  1. Aprire il portale di Azure e andare al servizio Microsoft Sentinel.
  2. Nel pannello Connettori dati digitare DNS nella barra di ricerca.
  3. Selezionare gli eventi DNS di Windows tramite il connettore AMA.
  4. Sotto la descrizione del connettore selezionare la pagina Apri connettore.
  5. Nell'area Configurazione, selezionareCrea regola di raccolta dati. È possibile creare una singola DCR per area di lavoro. Se è necessario creare diverse DCR, usare l'API.

Il nome, la sottoscrizione e il gruppo di risorse DCR vengono impostati automaticamente in base al nome dell'area di lavoro, alla sottoscrizione corrente e al gruppo di risorse da cui è stato selezionato il connettore.

Screenshot della creazione di un nuovo D C R per il connettore Windows D N S su A M.

Definire le risorse (VM)

  1. Selezionare la scheda Risorse quindi selezionare Aggiungi risorsa/e.

  2. Selezionare le VM in cui si desidera installare il connettore per raccogliere i log.

    Screenshot della selezione delle risorse per il connettore Windows D N S su A M.

  3. Esaminare le modifiche e selezionare Salva>Applica.

Filtrare gli eventi indesiderati

Quando si usano i filtri, si esclude l'evento specificato dal filtro. In altre parole, Microsoft Sentinel non raccoglie i dati per l'evento specificato. Anche se questo passaggio non è obbligatorio, può contribuire a ridurre i costi e semplificare la valutazione degli eventi.

Per creare filtri:

  1. Nella pagina connettore selezionare Aggiungi filtri di raccolta dati nell'area Configurazione.

  2. Digitare un nome per il filtro e selezionare il tipo di filtro. Il tipo di filtro è un parametro che riduce il numero di eventi raccolti. I parametri vengono normalizzati in base allo schema normalizzato DNS. Vedere l'elenco dei campi disponibili per il filtro.

    Screenshot della creazione di un filtro per il connettore Windows D N S su A M.

  3. Scegliere i valori per i quali filtrare il campo tra i valori elencati nell'elenco a discesa.

    Screenshot dell'aggiunta di campi a un filtro per il connettore Windows D N S su A M.

  4. Per aggiungere filtri complessi, selezionare Aggiungi campo di esclusione per filtrare e aggiungere il campo pertinente. Vedere gli esempi nella sezione Usare filtri avanzati di seguito.

  5. Per aggiungere altri nuovi filtri, selezionare Aggiungi nuovo filtro di esclusione.

  6. Al termine dell'aggiunta di filtri, selezionare Aggiungi.

  7. Nella pagina principale del connettore selezionare Applica modifiche per salvare e distribuire i filtri nei connettori. Per modificare o eliminare i filtri o i campi esistenti, selezionare le icone di modifica o eliminazione nella tabella nell'area Configurazione.

  8. Per aggiungere campi o filtri dopo la distribuzione iniziale, selezionare nuovamente Aggiungi filtri di raccolta dati.

Configurare il connettore con l'API

È possibile creare DCR usando l'API. Usare questa opzione se è necessario creare diverse DCR.

Usare questo esempio come modello per creare o aggiornare una DCR:

URL e intestazione della richiesta


PUT 

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

Testo della richiesta


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

Usare i filtri avanzati

I registri eventi del server DNS possono contenere un numero elevato di eventi. È possibile usare filtri avanzati per filtrare gli eventi non necessario prima del caricamento dei dati, risparmiando tempo e costi di valutazione importanti. I filtri rimuovono i dati non necessario dal flusso di eventi caricati nell'area di lavoro.

I filtri sono basati su una combinazione di numerosi campi.

  • È possibile usare più valori per ogni campo usando un elenco delimitato da virgole.
  • Per creare filtri composti, usare campi diversi con una relazione AND.
  • Per combinare filtri diversi, usare una relazione OR tra di esse.

Esaminare i campi disponibili per filtrare.

Usare i caratteri jolly

È possibile usare caratteri jolly nei filtri avanzati. Esaminare queste considerazioni quando si usano caratteri jolly:

  • Aggiungere un punto dopo ogni asterisco (*.).
  • Non usare spazi tra l'elenco di domini.
  • I caratteri jolly si applicano solo ai sottodomini del dominio, incluso www.domain.com, indipendentemente dal protocollo. Ad esempio, se si usa *.domain.com in un filtro avanzato:
    • Il filtro si applica a www.domain.com e subdomain.domain.com, indipendentemente dal fatto che il protocollo sia HTTPS, FTP e così via.
    • Il filtro non si applica a domain.com. Per applicare un filtro a domain.com, specificare direttamente il dominio, senza usare un carattere jolly.

Esempi di filtri avanzati

Non raccogliere ID evento specifici

Questo filtro indica al connettore di non raccogliere EventID 256 o EventID 257 o EventID 260 con indirizzi IPv6.

Uso del portale di Microsoft Sentinel:

  1. Creare un filtro con il campo EventOriginalType usando l'operatore Equals, con i valori 256, 257 e 260.

    Screenshot dell'applicazione di filtri agli ID evento per il connettore Windows D N S su A M.

  2. Creare un filtro con il campo EventOriginalType definito in precedenza e usare l'operatore And, incluso anche il campo DnsQueryTypeName impostato su AAAA.

    Screenshot del filtro degli ID evento e degli indirizzi IPv6 per il connettore Windows D N S su A M A.

Uso dell'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"                                        
                ]
            }
        ]
    }
]

Non raccogliere eventi con domini specifici

Questo filtro indica al connettore di non raccogliere eventi da sottodomini di microsoft.com, google.com, amazon.com o eventi da facebook.com o center.local.

Uso del portale di Microsoft Sentinel:

Impostare il campo DnsQuery usando l'operatore Equals, con l'elenco *.microsoft.com,*.google.com,facebook.com,*.amazon.com,center.local.

Esaminare queste considerazioni per l'uso dei caratteri jolly.

Screenshot del filtro dei domini per il connettore Windows D N S su A M A.

Per definire valori diversi in un singolo campo, usare l'operatore OR.

Uso dell'API:

Esaminare queste considerazioni per l'uso dei caratteri jolly.

"Filters": [ 

    { 

        "FilterName": "SampleFilter", 

        "Rules": [ 

            { 

                "Field": "DnsQuery", 

                "FieldValues": [ 

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

                ] 

            }, 

         } 

    } 

] 

Passaggi successivi

In questo articolo si è appreso come configurare gli eventi DNS di Windows tramite il connettore AMA per caricare i dati e filtrare i log DNS di Windows. Per altre informazioni su Microsoft Sentinel, vedere gli articoli seguenti: