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

Questo articolo descrive come usare il connettore AMA (Monitoraggio di Azure Agent) per trasmettere e filtrare gli eventi dai log del server DNS (Domain Name System). È quindi possibile analizzare in modo approfondito i dati per proteggere i server DNS da minacce e attacchi. L'AMA e la relativa estensione DNS vengono installati nel Windows Server per caricare i dati dai log analitici DNS nell'area di lavoro Microsoft Sentinel.

DNS è un protocollo ampiamente usato, che esegue il mapping tra nomi host e indirizzi IP leggibili dal computer. Poiché 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 destinate ai server DNS includono attacchi DDoS destinati a server DNS, amplificazione DDoS DNS, dirottamento DNS e altro ancora.

Sebbene siano stati introdotti alcuni meccanismi per migliorare la sicurezza complessiva del protocollo DNS, i server DNS restano un servizio altamente mirato. Le organizzazioni possono monitorare i log DNS per comprendere meglio l'attività di rete e identificare comportamenti sospetti o attacchi mirati alle risorse all'interno della rete. Gli eventi DNS di Windows tramite connettore AMA forniscono visibilità sull'attività della rete DNS e sui comportamenti sospetti. Ad esempio, usare il connettore per identificare i client che tentano di risolvere nomi di dominio dannosi, visualizzare e monitorare i caricamenti delle richieste nei server DNS o visualizzare gli errori di registrazione DNS dinamici.

Nota

Gli eventi DNS di Windows tramite il connettore AMA supportano solo gli eventi di log analitici.

Prerequisiti

Prima di iniziare, verificare di avere:

  • Un'area di lavoro Log Analytics abilitata per Microsoft Sentinel.
  • Il connettore dati Eventi DNS di Windows via AMA installato come parte della soluzione Windows Server DNS dall'hub dei contenuti.
  • Windows Server 2016 e versioni successive supportati oppure Windows Server 2012 R2 con l'hotfix di controllo.
  • Ruolo server DNS installato con i log analitici degli eventi di DNS-Server abilitati. I log eventi analitici DNS non sono abilitati per impostazione predefinita. Per altre informazioni, vedere Abilitare la registrazione degli eventi analitici.

Per raccogliere eventi da qualsiasi sistema che non sia una macchina virtuale Azure, assicurarsi che sia installato Azure Arc. Installare e abilitare Azure Arc prima di abilitare il connettore basato su agente di monitoraggio Azure. Il requisito di installazione di Azure Arc si applica a:

  • Server Windows installati nei computer fisici
  • Server Windows installati in macchine virtuali locali
  • Server Windows installati in macchine virtuali in cloud non Azure

Configurare il connettore Windows DNS tramite AMA nel portale

Usare l'opzione di installazione del portale per configurare il connettore usando una singola regola di raccolta dati (DCR) per ogni area di lavoro. Successivamente, usare filtri avanzati per filtrare eventi o informazioni specifici, caricando solo i dati preziosi che si desidera monitorare, riducendo i costi e l'utilizzo della larghezza di banda.

Se devi creare più DCR, configura invece il connettore tramite API. Usare l'API per creare più DCR comporterà comunque la visualizzazione di un solo DCR nel portale.

Per configurare il connettore:

  1. In Microsoft Sentinel aprire la pagina Connettori dati e individuare gli eventi DNS di Windows tramite il connettore AMA.

  2. Nella parte inferiore del riquadro laterale selezionare Apri pagina connettore.

  3. Nell'area Configurazione selezionare Crea regola di raccolta dati. È possibile creare un singolo DCR per ogni area di lavoro.

    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. Ad esempio:

    Schermata della creazione di un nuovo DCR per il connettore Windows DNS su AMA.

  4. Selezionare la scheda >Aggiungi risorse.

  5. Selezionare le macchine virtuali in cui si vuole installare il connettore per raccogliere i log. Ad esempio:

    Schermata della selezione di risorse per il connettore Windows D N S tramite A M A.

  6. Esaminare le modifiche e selezionare Salva>applica.

Configurare il connettore DNS su AMA di Windows tramite API

Usa l'opzione di configurazione dell'API per configurare il connettore utilizzando più DCRs per area di lavoro. Se preferisci usare un singolo DCR, configura il connettore tramite il portale invece.

L'uso dell'API per creare più DCR continua a mostrare un solo DCR nel portale.

Usare l'esempio seguente come modello per creare o aggiornare un DCR:

URL e header della richiesta

PUT https://management.azure.com/subscriptions/{subscriptionId}/resourceGroups/{resourceGroupName}/providers/Microsoft.Insights/dataCollectionRules/{dataCollectionRuleName}?api-version={latest-supported-version}

Per la versione più recente dell'API supportata, vedere Regole di raccolta dati - API REST (Monitoraggio di Azure).For the latest supported API version, see Data Collection Rules - REST API (Monitoraggio di Azure).

Schermata dell'aspetto della versione dell'API nella documentazione DCR.

Corpo della richiesta

Usa il seguente corpo della richiesta di esempio durante la creazione del DCR. Questo payload definisce le proprietà DCR, tra cui la posizione, il tipo di piattaforma, le origini dati, i filtri eventi e la destinazione dell'area di lavoro Log Analytics:

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

Usa filtri avanzati nei tuoi DCR

I log eventi del server DNS possono contenere un numero elevato di eventi. È consigliabile usare filtri avanzati per filtrare gli eventi non necessario prima del caricamento dei dati, risparmiando tempo e costi di valutazione preziosi. I filtri consentono di rimuovere i dati non necessari dal flusso di eventi caricati nell'area di lavoro e si basano su una combinazione di più campi.

Per altre informazioni, vedere Campi disponibili per il filtro.

Creare filtri avanzati tramite il portale

Usare la procedura seguente per creare filtri tramite il portale. Per altre informazioni sulla creazione di filtri con l'API, vedere Esempi di filtri avanzati.

Per creare filtri tramite il portale:

  1. Nell'area Configurazione della pagina del connettore selezionare Aggiungi filtri di raccolta dati.

  2. Immettere un nome per il filtro e selezionare il tipo di filtro, ovvero un parametro che riduce il numero di eventi raccolti. I parametri vengono normalizzati in base allo schema normalizzato DNS. Per altre informazioni, vedere Campi disponibili per il filtro.

    Schermata della creazione di un filtro per il connettore Windows D N S over A M A.

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

    Schermata che mostra l'aggiunta di campi a un filtro per il connettore Windows D N S tramite A M A.

  4. Per aggiungere filtri complessi, selezionare Aggiungi campo di esclusione per filtrare e aggiungere il campo pertinente.

    • Usare elenchi delimitati da virgole per definire più valori per ogni campo.
    • Per creare filtri composti, usare campi diversi con una relazione AND.
    • Per combinare filtri diversi, usare una relazione OR tra di essi.

    I filtri supportano anche i caratteri jolly come indicato di seguito:

    • 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.
  5. Per aggiungere altri nuovi filtri, selezionare Aggiungi nuovo filtro di esclusione.

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

  7. Nella pagina del connettore principale 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 di nuovo Aggiungi filtri raccolta dati .

Esempi di filtri avanzati

Usare gli esempi seguenti per creare filtri avanzati di uso comune, tramite il portale o l'API.

Non raccogliere gli ID di eventi 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.

    Schermata dell'esclusione degli ID evento per il DNS di Windows del connettore AMA.

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

    Schermata dell'esclusione degli ID evento e degli indirizzi IPv6 per il DNS di Windows del connettore AMA.

Uso dell'API:

Il seguente JSON mostra le definizioni equivalenti del filtro per l'API. Il primo filtro esclude gli eventi con EventID 256, 257 o 260 che hanno un tipo di query AAAA (IPv6), mentre il secondo filtro esclude EventID 230 con dettagli specifici del risultato dell'errore.

"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 i filtri con caratteri jolly nei filtri di dominio DNS AMA.

Schermata dell'esclusione dei domini per il DNS di Windows del connettore AMA.

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

Uso dell'API:

Il seguente JSON mostra il filtro di esclusione di dominio equivalente per il payload dell'API DCR, escludendo gli eventi di query DNS che corrispondono a specifici domini e ai loro sottodomini. Esaminare queste considerazioni per i filtri con caratteri jolly nei filtri di dominio DNS AMA.

"Filters": [ 
    { 
        "FilterName": "SampleFilter", 
        "Rules": [ 
            { 
                "Field": "DnsQuery", 
                "FieldValues": [ 
                    "*.microsoft.com", "*.google.com", "facebook.com", "*.amazon.com","center.local"                                                                               
                ]
            }
        ]
    }
]

Normalizzazione con ASIM

Questo connettore è completamente normalizzato usando i parser ASIM (Advanced Security Information Model). Il connettore trasmette gli eventi originati dai log analitici DNS Windows nella tabella normalizzata denominata ASimDnsActivityLogs. Questa tabella funge da traduttore, usando un linguaggio unificato, condiviso tra tutti i connettori DNS a venire.

Per un parser indipendente dall'origine che unifica tutti i dati DNS e garantisce che l'analisi venga eseguita in tutte le origini dati configurate, utilizzare il parser unificatore ASIM DNS_Im_Dns.

Il parser unificante ASIM integra la tabella ASimDnsActivityLogs nativa. 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 la combinazione 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 dei campi normalizzati.

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: