Esplorare la ricerca avanzata delle minacce in Microsoft Defender XDR
- 7 minuti
Ricerca avanzata in Microsoft Defender XDR è uno strumento di ricerca delle minacce basato su query che consente di esplorare fino a 30 giorni di dati non elaborati. È possibile controllare in modo proattivo eventi nella rete per localizzare indicatori ed entità di minaccia. L'accesso flessibile ai dati consente la ricerca senza vincoli di minacce sia note che potenziali.
La ricerca avanzata consente di cercare in modo proattivo le minacce in:
- Dispositivi gestiti da Microsoft Defender per endpoint.
- Messaggi di posta elettronica elaborati da Microsoft 365.
- Attività delle app cloud, eventi di autenticazione e attività del controller di dominio monitorate da Microsoft Cloud App Security e Microsoft Defender per identità.
Con questo livello di visibilità, è possibile cercare rapidamente le minacce che attraversano sezioni della rete. Queste minacce includono intrusioni sofisticate che:
- Arrivo tramite posta elettronica o sul Web.
- Elevare i privilegi locali.
- Acquisire le credenziali di dominio con privilegi.
- Spostarsi lateralmente tra i dispositivi.
È possibile usare le stesse query di ricerca delle minacce per creare regole di rilevamento personalizzate. Queste regole vengono eseguite automaticamente per verificare e quindi rispondere a vari eventi e stati del sistema. Questi eventi includono attività di violazione sospetta, computer non configurati correttamente e altri risultati.
Introduzione alla ricerca avanzata in Microsoft Defender XDR
Microsoft consiglia alle organizzazioni di completare diversi passaggi per iniziare rapidamente a eseguire la ricerca avanzata in Microsoft Defender XDR:
- Informazioni sulla lingua. La ricerca avanzata è basata sul linguaggio di query Kusto, che supporta la stessa sintassi e gli stessi operatori. Iniziare ad apprendere il linguaggio di query eseguendone la prima.
- Informazioni su come usare i risultati della query. Informazioni sui grafici e sui vari modi in cui è possibile visualizzare o esportare i risultati. Scopri come ottimizzare rapidamente le query, eseguire il drill-down per ottenere informazioni più dettagliate ed eseguire azioni di risposta.
- Comprendere lo schema. È possibile ottenere una conoscenza buona e approfondita delle tabelle nello schema e delle relative colonne. Informazioni su dove cercare i dati durante la costruzione delle query.
- Ottieni suggerimenti ed esempi di esperti. Esegui gratuitamente il training con guide di esperti Microsoft. Esplorare le raccolte di query predefinite che coprono diversi scenari di ricerca delle minacce.
- Ottimizzare le query e gestire gli errori. Informazioni su come creare query efficienti e senza errori.
- Creare regole di rilevamento personalizzate. Informazioni su come usare le query di ricerca avanzate per attivare avvisi ed eseguire azioni di risposta automaticamente.
È possibile classificare i dati di ricerca avanzata in due tipi distinti, ognuno consolidato in modo diverso.
- Dati di eventi o attività. Popola le tabelle relative ad avvisi, eventi di sicurezza, eventi di sistema e valutazioni di routine. La rilevazione avanzata riceve questi dati quasi subito dopo che i sensori che li raccolgono li trasmettono correttamente ai servizi cloud corrispondenti. Ad esempio, è possibile eseguire query sui dati degli eventi da sensori integri su workstation o controller di dominio quasi immediatamente dopo che sono disponibili in Microsoft Defender per endpoint e Microsoft Defender per identità.
- Dati dell'entità. Popola le tabelle con informazioni su utenti e dispositivi. Questi dati provengono sia da origini dati relativamente statiche sia da origini dinamiche, ad esempio voci di Active Directory e registri eventi. Per fornire dati aggiornati, il sistema aggiorna le tabelle con eventuali nuove informazioni ogni 15 minuti. Aggiunge anche righe anche se non le popola completamente. Ogni 24 ore, il sistema combina i dati per inserire un record che contiene il set di dati più recente e completo su ogni entità.
Introduzione al linguaggio di query Kusto usato dalla ricerca avanzata
La ricerca avanzata si basa sul linguaggio delle query in Esplora dati. Una query Kusto è una richiesta di sola lettura per elaborare i dati e restituire i risultati. La richiesta viene scritta in testo normale, usando un modello di flusso di dati progettato per semplificare la lettura, l'autore e l'automazione della sintassi. La query usa entità dello schema organizzate in una gerarchia simile alla progettazione dello schema di SQL Server: database, tabelle e colonne.
Importante
Lo scopo di questa sezione sul linguaggio di query Kusto è presentare questa funzionalità. Questa sezione non fornisce in alcun modo un'analisi approfondita delle specifiche del linguaggio. Poiché la ricerca avanzata in Microsoft Defender XDR si basa sulle query Kusto, è importante avere una conoscenza di base dei concetti generali alla base del linguaggio. Per altre informazioni, vedere Tutorial: Usare le query Kusto in Esplora dati di Azure e Monitoraggio di Azure.
Una query Kusto è costituita da una sequenza di istruzioni di query, delimitate da un punto e virgola. Almeno un'istruzione deve essere un'istruzione di espressione tabulare, ovvero un'istruzione che produce dati disposti in una mesh di colonne e righe simile a una tabella. Le istruzioni dell'espressione tabulare della query producono i risultati della query.
La sintassi dell'istruzione dell'espressione tabulare include un flusso di dati tabulare da un operatore di query tabulare a un altro. Il flusso inizia con l'origine dati ( ad esempio, una tabella in un database o un operatore che produce dati) e quindi passa attraverso un set di operatori di trasformazione dei dati. L'istruzione associa gli operatori con il delimitatore della pipe (|).
Si consideri, ad esempio, l'istruzione di query seguente che esegue una query sul numero di temporali che si sono verificati nello stato della Texas in un determinato periodo di tempo. La query Kusto seguente include una singola istruzione, ovvero un'istruzione di espressione tabulare. L'istruzione inizia con un riferimento a una tabella denominata StormEvents (il database che ospita questa tabella è implicito in questo punto e parte delle informazioni di connessione). Il sistema filtra quindi i dati (righe) per la tabella in base al valore della colonna StartTime e quindi filtra nuovamente utilizzando il valore della colonna State. La query restituisce quindi il numero di "superstiti" Righe.
Un'istruzione di query Kusto usa gli operatori seguenti:
- Dove. Filtrare una tabella nel sottoinsieme di righe che soddisfano un predicato.
- Riepilogo. Creare una tabella che aggrega il contenuto della tabella di input.
- Partecipa. Unire le righe di due tabelle per creare una nuova tabella in base ai valori corrispondenti delle colonne specificate di ogni tabella.
- Conteggio. Restituire il numero di record nel set di record di input.
- Top. Restituire i primi N record ordinati in base alle colonne specificate.
- Limite. Tornare al numero specificato di righe.
- Proietta. Selezionare le colonne da includere, rinominare o rilasciare e inserire nuove colonne calcolate.
- Estendi. Creare colonne calcolate e accodarle al set di risultati.
- Makeset(). Restituisce una matrice dinamica (JSON) del set di valori distinti che accetta il gruppo.
- Trova. Trovare le righe che corrispondono a un predicato in un set di tabelle.
Lo screenshot seguente mostra una query di ricerca avanzata usando il linguaggio di query Kusto. Questa query usa i filtri seguenti:
- Filtro temporale per esaminare solo i record dei sette giorni precedenti.
- Filtro in base al FileName in modo che contengano solo istanze di Powershell.EXE.
- Filtro in base a ProcessCommandLine.
- Proiettare solo le colonne di interesse per esplorare e limitare i risultati a 100.
Per garantire le prestazioni delle query, le organizzazioni devono implementare le procedure consigliate seguenti durante la scrittura di istruzioni di query Kusto:
- Applicare prima i filtri. Kusto ottimizza notevolmente l'uso dei filtri temporali.
- Usare la parola chiave “ha” invece di “contiene” quando si cercano token completi.
- Usare la ricerca in una colonna specifica invece di usare una ricerca full-text in tutte le colonne.
- In caso sia stato creato un join, scegliere per prima la tabella con meno righe (a sinistra).
- In caso sia stato creato un join, proiettare unicamente le colonne necessarie da entrambi i lati del join.
Ecco un esempio di query di ricerca avanzata Kusto. Questa query cerca gli eventi di creazione di file in cui i file creati avevano estensioni di file sospette:
Verifica delle conoscenze
Scegliere la risposta migliore per ognuna delle domande seguenti.