Ricerca delle minacce in Microsoft Sentinel

Gli analisti e gli investigatori della sicurezza vogliono essere proattivi per la ricerca di minacce alla sicurezza, ma i vari sistemi e appliance di sicurezza generano montagne di dati che possono essere difficili da analizzare e filtrare in eventi significativi. Microsoft Sentinel offre potenti strumenti di ricerca e query per cercare minacce alla sicurezza nelle origini dati dell'organizzazione. Per aiutare gli analisti della sicurezza a cercare in modo proattivo nuove anomalie che non vengono rilevate dalle app di sicurezza o anche dalle regole di analisi pianificate, le query di ricerca predefinite di Microsoft Sentinel consentono di porre domande corrette per individuare i problemi nei dati già presenti nella rete.

Una query predefinita, ad esempio, fornisce dati sui processi più rari in esecuzione nell'infrastruttura. Non si vuole un avviso ogni volta che vengono eseguiti. Potrebbero essere del tutto innocenti. È tuttavia consigliabile esaminare la query in occasione per verificare se c'è qualcosa di insolito.

Nota

Per informazioni sulla disponibilità delle funzionalità nei cloud degli Stati Uniti per enti pubblici, vedere le tabelle di Microsoft Sentinel nella disponibilità delle funzionalità cloud per i clienti del governo degli Stati Uniti.

Importante

Microsoft Sentinel è disponibile come parte dell'anteprima pubblica per la piattaforma unificata per le operazioni di sicurezza nel portale di Microsoft Defender. Per altre informazioni, vedere Microsoft Sentinel nel portale di Microsoft Defender.

Usare query predefinite

Il dashboard di ricerca offre esempi di query già pronti progettati per iniziare e acquisire familiarità con le tabelle e il linguaggio di query. Le query vengono eseguite sui dati archiviati nelle tabelle di log, ad esempio per la creazione di processi, eventi DNS o altri tipi di eventi.

Le query di ricerca predefinite vengono sviluppate dai ricercatori di sicurezza Microsoft su base continua, sia aggiungendo nuove query che ottimizzando le query esistenti per fornire un punto di ingresso per cercare nuovi rilevamenti e capire dove iniziare a cercare gli inizi di nuovi attacchi.

Usare le query prima, durante e dopo una compromissione per eseguire le azioni seguenti:

  • Prima che si verifichi un evento imprevisto: l'attesa dei rilevamenti non è sufficiente. Agire in modo proattivo eseguendo le query di ricerca delle minacce correlate ai dati inseriti nell'area di lavoro almeno una volta alla settimana.

    I risultati della ricerca proattiva forniscono informazioni iniziali sugli eventi che potrebbero confermare che una compromissione è in corso o almeno mostrare aree più deboli nell'ambiente che sono a rischio e richiedono attenzione.

  • Durante una compromissione: usare livestream per eseguire costantemente una query specifica, presentando i risultati man mano che arrivano. Usare livestream quando è necessario monitorare attivamente gli eventi utente, ad esempio se è necessario verificare se è ancora in corso una compromissione specifica, per determinare l'azione successiva di un attore di minaccia e verso la fine di un'indagine per verificare che la compromissione sia effettivamente finita.

  • Dopo una compromissione: dopo una compromissione o un evento imprevisto, assicurarsi di migliorare la copertura e le informazioni dettagliate per evitare eventi imprevisti simili in futuro.

    • Modificare le query esistenti o crearne di nuove per facilitare il rilevamento anticipato, in base alle informazioni dettagliate ottenute dalla compromissione o dall'evento imprevisto.

    • Se è stata individuata o creata una query di ricerca che fornisce informazioni dettagliate di valore elevato sui possibili attacchi, creare regole di rilevamento personalizzate basate su tale query e visualizzare tali informazioni come avvisi ai risponditori degli eventi imprevisti di sicurezza.

      Visualizza i risultati della query e seleziona Nuova regola di avviso>Crea avviso di Microsoft Sentinel. Usa la Procedura guidata per la regola di analisi per creare una nuova regola basata sulla query. Per altre informazioni, vedere Creare regole di analisi personalizzate per rilevare le minacce.

Puoi anche creare query di ricerca e livestream sui dati archiviati in Esplora dati di Azure. Per altre informazioni, vedere i dettagli sulla costruzione di query tra risorse nella documentazione di Monitoraggio di Azure.

Usare le risorse della community, ad esempio il repository GitHub di Microsoft Sentinel per trovare altre query e origini dati.

Usare il dashboard di ricerca

Il dashboard di ricerca consente di eseguire tutte le query o un subset selezionato in un'unica selezione. Nel portale di Microsoft Sentinel selezionare Ricerca.

La tabella mostrata elenca tutte le query scritte dal team di analisti della sicurezza di Microsoft e tutte le query aggiuntive create o modificate. Per ogni query è disponibile una descrizione dell'oggetto della ricerca e del tipo di dati su cui viene eseguita. Queste query sono raggruppate in base alle tattiche MITRE ATT&CK. Le icone a destra classificano il tipo di minaccia, ad esempio l'accesso iniziale, la persistenza e l'esfiltrazione. Le tecniche MITRE ATT&CK sono illustrate nella colonna Tecniche e descrivono il comportamento specifico identificato dalla query di ricerca.

Microsoft Sentinel avvia la ricerca

Usare il dashboard di ricerca per identificare da dove iniziare la ricerca, esaminando il conteggio dei risultati, i picchi o le variazioni nel conteggio dei risultati in un periodo di 24 ore. Ordinare e filtrare in base a preferiti, origine dati, tattica o tecnica MITRE ATT&CK, risultati, delta risultati o percentuale delta dei risultati. Visualizza le query che necessitano ancora di origini dati connesse e ottieni raccomandazioni su come abilitare queste query.

La tabella seguente descrive le azioni dettagliate disponibili nel dashboard di ricerca:

Azione Descrizione
vedi in che modo le query si applicano all'ambiente Seleziona il pulsante Esegui tutte le query oppure un subset di query usando le caselle di controllo a sinistra di ogni riga e, quindi, il pulsante Esegui query selezionate.

L'esecuzione delle query può richiedere da pochi secondi a molti minuti, a seconda del numero di query selezionate, dell'intervallo di tempo e della quantità di dati sottoposti a query.
Visualizza le query che hanno restituito risultati Al termine dell'esecuzione delle query, visualizza le query che hanno restituito risultati usando il filtro Risultati:
- Ordina per visualizzare quali query hanno il maggior o minor numero di risultati.
- Visualizzare le query non attive nell'ambiente selezionando N/A nel filtro Risultati .
- Passa il puntatore del mouse sull'icona delle informazioni (i) accanto all'N/A per vedere quali origini dati sono necessarie per rendere attiva la query.
Identifica i picchi nei dati Identifica i picchi nei dati ordinando o filtrando in base al delta dei risultati o alla percentuale delta dei risultati.

Confronta i risultati delle ultime 24 ore con i risultati delle 24-48 ore precedenti, evidenziando eventuali grandi differenze o differenze relative nel volume.
Visualizzare le query localizzate sulla mappa alla tattica MITRE ATT&CK La barra tattica MITRE ATT&CK, nella parte superiore della tabella, elenca il numero di query mappate a ogni tattica MITRE ATTCK. La barra tattica viene aggiornata dinamicamente in base al set corrente di filtri applicati.

Consente di visualizzare le tattiche MITRE ATT&CK visualizzate quando si filtra in base a un determinato conteggio dei risultati, a un delta di risultati elevato, a risultati N/A o a qualsiasi altro set di filtri.
Visualizzare le query mappate alle tecniche MITRE ATT&CK È anche possibile eseguire il mapping delle query alle tecniche MITRE ATT&CK. È possibile filtrare o ordinare in base alle tecniche MITRE ATT&CK usando il filtro Tecnica. Aprendo una query, è possibile selezionare la tecnica per visualizzare la descrizione MITRE ATT&CK della tecnica.
Salva una query nei preferiti Le query salvate nei preferiti vengono eseguite automaticamente ogni volta che si accede alla pagina di ricerca. Puoi creare una query di ricerca personalizzata o clonare e personalizzare un modello di query di ricerca esistente.
Esegui query Seleziona Esegui query nella pagina dei dettagli della query di ricerca per eseguire la query direttamente dalla pagina di ricerca. Il numero di corrispondenze viene visualizzato all'interno della tabella, nella colonna Risultati. Esamina l'elenco delle query di ricerca e le relative corrispondenze.
Esamina una query sottostante Esegui una rapida revisione della query sottostante nel riquadro dei dettagli della query. Puoi visualizzare i risultati facendo clic sul collegamento Visualizza risultati query (sotto la finestra della query) o sul pulsante Visualizza risultati (nella parte inferiore del riquadro). La query apre la pagina Log (Log Analytics) e, sotto la query, è possibile esaminare le corrispondenze per la query.

Creare una query di ricerca personalizzata

Creare o modificare una query e salvarla come query personalizzata o condividerla con gli utenti che si trovano nello stesso tenant.

Salvare la query

Per creare una nuova query:

  1. Selezionare Nuova query.

  2. Compilare tutti i campi vuoti e selezionare Crea.

    1. Creare mapping di entità selezionando tipi di entità, identificatori e colonne.

      Screenshot per il mapping dei tipi di entità nelle query di ricerca.

    2. Eseguire il mapping delle tecniche MITRE ATT&CK alle query di ricerca selezionando la tattica, la tecnica e la sotto tecnica (se applicabile).

      Nuova query

Per clonare e modificare una query esistente:

  1. Nella tabella selezionare la query di ricerca da modificare.

  2. Selezionare i puntini di sospensione (...) nella riga della query da modificare e selezionare Clona query.

    Clonare la query

  3. Modificare la query e selezionare Crea.

Per modificare una query personalizzata esistente:

  1. Nella tabella selezionare la query di ricerca da modificare. È possibile modificare solo le query provenienti da un'origine contenuto personalizzata. Altre origini di contenuto devono essere modificate in tale origine.

  2. Selezionare i puntini di sospensione (...) nella riga della query da modificare e selezionare Modifica query.

  3. Modificare il campo Query personalizzata con la query aggiornata. È anche possibile modificare il mapping delle entità e le tecniche come illustrato nella sezione "Per creare una nuova query" di questa documentazione.

Query di esempio

Una query tipica inizia con un nome di tabella o parser seguito da una serie di operatori separati da un carattere pipe ("|").

Nell'esempio precedente iniziare con il nome della tabella SecurityEvent e aggiungere elementi inviati tramite pipe in base alle esigenze.

  1. Definire un filtro temporale per esaminare solo i record dei sette giorni precedenti.

  2. Aggiungere un filtro nella query per visualizzare solo l'ID evento 4688.

  3. Aggiungere un filtro nella query nella riga di comando per contenere solo istanze di cscript.exe.

  4. Proiettare solo le colonne desiderate per esplorare e limitare i risultati a 1000 e selezionare Esegui query.

  5. Selezionare il triangolo verde ed eseguire la query. È possibile testare la query ed eseguirla per cercare un comportamento anomalo.

È consigliabile che la query usi un parser ASIM (Advanced Security Information Model) e non una tabella predefinita. In questo modo, la query supporterà qualsiasi origine dati pertinente corrente o futura anziché una singola origine dati.

Creare segnalibri

Durante il processo di ricerca e analisi, è possibile che si verifichino risultati di query che sembrano insoliti o sospetti. Aggiungere un segnalibro a questi elementi per farvi riferimento in futuro, ad esempio durante la creazione o l'arricchimento di un evento imprevisto per l'indagine. Eventi come potenziali cause radice, indicatori di compromissione o altri eventi rilevanti devono essere generati come segnalibro. Se un evento chiave a cui è stato aggiunto un segnalibro è sufficientemente grave da giustificare un'indagine, inoltrarlo a un evento imprevisto.

  • Nei risultati contrassegnare le caselle di controllo per le righe che si desidera mantenere e selezionare Aggiungi segnalibro. Viene creato per un record per ogni riga contrassegnata, un segnalibro, che contiene i risultati della riga e la query che ha creato i risultati. È possibile aggiungere tag e note personalizzati a ogni segnalibro.

    • Come per le regole di analisi pianificate, è possibile arricchire i segnalibri con mapping di entità per estrarre più tipi di entità e identificatori e mapping MITRE ATT&CK per associare tattiche e tecniche specifiche.
    • Per impostazione predefinita, i segnalibri usano la stessa entità e mapping di tecnica MITRE ATT&CK della query di ricerca che ha prodotto i risultati con segnalibro.
  • Visualizzare tutti i risultati con segnalibri facendo clic sulla scheda Segnalibri nella pagina principale di ricerca . Aggiungere tag ai segnalibri per classificarli per il filtro. Ad esempio, se stai analizzando una campagna di attacco, puoi creare un tag per la campagna, applicare il tag a qualsiasi segnalibro pertinente e quindi filtrare tutti i segnalibri in base alla campagna.

  • Esaminare una singola ricerca con segnalibro selezionando il segnalibro e quindi facendo clic su Ricerca nel riquadro dei dettagli per aprire l'esperienza di indagine. È anche possibile selezionare direttamente un'entità elencata per visualizzare la pagina di entità corrispondente dell'entità.

    È anche possibile creare un evento imprevisto da uno o più segnalibri o aggiungere uno o più segnalibri a un evento imprevisto esistente. Selezionare una casella di controllo a sinistra di tutti i segnalibri da usare e quindi selezionare Azioni>evento imprevisto Crea nuovo evento imprevisto o Aggiungi a un evento imprevisto esistente. Valutare e analizzare l'evento imprevisto come qualsiasi altro.

Per altre informazioni, vedere Usare i segnalibri nella ricerca.

Usare notebook per potenziare le indagini

Quando la ricerca e le indagini diventano più complesse, usare i notebook di Microsoft Sentinel per migliorare l'attività con Machine Learning, visualizzazioni e analisi dei dati.

I notebook offrono una sorta di sandbox virtuale, completa del proprio kernel, in cui è possibile eseguire un'indagine completa. Il notebook può includere i dati non elaborati, il codice eseguito su tali dati, i risultati e le relative visualizzazioni. Salvare i notebook in modo che sia possibile condividerli con altri utenti da riutilizzare nell'organizzazione.

I notebook possono essere utili quando la ricerca o l'indagine diventa troppo grande per ricordare facilmente, visualizzare i dettagli o quando è necessario salvare query e risultati. Per creare e condividere notebook, Microsoft Sentinel offre Jupyter Notebook, un ambiente open source, interattivo e di manipolazione dei dati, integrato direttamente nella pagina Notebook di Microsoft Sentinel.

Per altre informazioni, vedi:

La tabella seguente descrive alcuni metodi di uso dei notebook di Jupyter per facilitare i processi in Microsoft Sentinel:

metodo Descrizione
Persistenza, ripetibilità e backtracking dei dati Se si lavora con molte query e set di risultati, è probabile che si verifichino alcuni dead-end. È necessario decidere quali query e risultati conservare e come accumulare i risultati utili in un singolo report.

Usare Jupyter Notebooks per salvare query e dati man mano che si passa, usare le variabili per rieseguire query con valori o date diversi o salvare le query per rieseguire le indagini future.
Scripting e programmazione Usare Jupyter Notebooks per aggiungere programmazione alle query, tra cui:

- Linguaggi dichiarativi come Linguaggio di query Kusto (KQL) o SQL, per codificare la logica in un'unica istruzione, possibilmente complessa.
- Linguaggi di programmazione procedurali , per eseguire la logica in una serie di passaggi.

Suddividere la logica in passaggi per visualizzare ed eseguire il debug di risultati intermedi, aggiungere funzionalità che potrebbero non essere disponibili nel linguaggio di query e riutilizzare i risultati parziali nei passaggi di elaborazione successivi.
Collegamenti a dati esterni Sebbene le tabelle di Microsoft Sentinel dispongano della maggior parte dei dati di telemetria e degli eventi, Jupyter Notebook può collegarsi a tutti i dati accessibili tramite la rete o da un file. L'uso di Jupyter Notebook consente di includere dati come:

- Dati in servizi esterni di cui non si è proprietari, ad esempio dati di georilevazione o origini di intelligence sulle minacce
- Dati sensibili archiviati solo all'interno dell'organizzazione, ad esempio database delle risorse umane o elenchi di asset di valore elevato
- Dati di cui non è ancora stata eseguita la migrazione al cloud.
Strumenti specializzati per l'elaborazione dei dati, l'apprendimento automatico e la visualizzazione Jupyter Notebooks offre più visualizzazioni, librerie di Machine Learning e funzionalità di elaborazione e trasformazione dei dati.

Ad esempio, usare Jupyter Notebook con le funzionalità Python seguenti:
- Pandas per l'elaborazione, la pulizia e la progettazione dei dati
- Matplotlib, HoloViews e Plotly per la visualizzazione
- NumPy e SciPy per l'elaborazione numerica e scientifica avanzata
- scikit-learn per Machine Learning
- TensorFlow, PyTorch e Keras per l'apprendimento avanzato

Suggerimento: Jupyter Notebooks supporta più kernel del linguaggio. Usare magics per combinare linguaggi all'interno dello stesso notebook, consentendo l'esecuzione di singole celle usando un altro linguaggio. Ad esempio, è possibile recuperare i dati usando una cella di script di PowerShell, elaborare i dati in Python e usare JavaScript per eseguire il rendering di una visualizzazione.

Strumenti di sicurezza MSTIC, Jupyter e Python

Microsoft Threat Intelligence Center (MSTIC) è un team di analisti e tecnici della sicurezza Microsoft che creano rilevamenti di sicurezza per diverse piattaforme Microsoft e lavorano sull'identificazione e l'analisi delle minacce.

MSTIC ha creato MSTICPy, una libreria per le indagini sulla sicurezza delle informazioni e la ricerca in Jupyter Notebooks. MSTICPy offre funzionalità riutilizzabili che puntano a velocizzare la creazione di notebook e semplificano la lettura dei notebook in Microsoft Sentinel.

Ad esempio, MSTICPy può:

  • Eseguire query sui dati di log da più origini.
  • Arricchire i dati con intelligence sulle minacce, georilevazioni e dati delle risorse di Azure.
  • Estrarre indicatori di attività (IoA) dai log e decomprimere i dati codificati.
  • Eseguire analisi sofisticate, ad esempio il rilevamento di sessioni anomale e la scomposizione di serie temporali.
  • Visualizzare i dati usando sequenze temporali interattive, alberi di elaborazione e grafici morphing multidimensionali.

MSTICPy include anche alcuni strumenti notebook che consentono di risparmiare tempo, ad esempio widget che impostano limiti di tempo di query, selezionano e visualizzano elementi dagli elenchi e configurano l'ambiente del notebook.

Per altre informazioni, vedi:

Operatori e funzioni utili

Le query di ricerca sono compilate in Linguaggio di query Kusto (KQL), un linguaggio di query potente con il linguaggio IntelliSense che offre la potenza e la flessibilità necessarie per eseguire la ricerca al livello successivo.

È lo stesso linguaggio usato dalle query nelle regole di analisi e altrove in Microsoft Sentinel. Per altre informazioni, vedere Informazioni di riferimento sul linguaggio di query.

Gli operatori seguenti sono particolarmente utili nelle query di ricerca di Microsoft Sentinel:

  • where : consente di filtrare una tabella nel subset di righe che soddisfano un predicato.

  • summarize : consente di produrre una tabella che aggrega il contenuto della tabella di input.

  • join : unire le righe di due tabelle per formare una nuova tabella associando i valori delle colonne specificate da ogni tabella.

  • count : restituisce il numero di record nel set di record di input.

  • top : restituisce i primi N record ordinati in base alle colonne specificate.

  • limit: restituisce fino al numero specificato di righe.

  • project : selezionare le colonne da includere, rinominare o eliminare e inserire nuove colonne calcolate.

  • extend : creare colonne calcolate e aggiungerle al set di risultati.

  • makeset : restituisce una matrice dinamica (JSON) del set di valori distinct accettati da Expr nel gruppo

  • find : trovare righe che corrispondono a un predicato in un set di tabelle.

  • adx(): questa funzione esegue query tra risorse di Azure Esplora dati origini dati dall'esperienza di ricerca di Microsoft Sentinel e Log Analytics. Per altre informazioni, vedere Query tra risorse di Azure Esplora dati usando Monitoraggio di Azure.

Passaggi successivi

In questo articolo si è appreso come eseguire un'indagine sulla ricerca con Microsoft Sentinel.

Per altre informazioni, vedi:

Informazioni su come usare regole di analisi personalizzate durante il monitoraggio di Zoom con un connettore personalizzato.