Condividi tramite


Introduzione ai notebook di Jupyter e MSTICPy in Microsoft Sentinel

Questo articolo descrive come eseguire la Guida introduttiva per il notebook di Microsoft Sentinel ML, che imposta le configurazioni di base per l'esecuzione dei notebook Jupyter in Microsoft Sentinel e fornisce esempi per eseguire query semplici.

Il notebook Getting Started Guide for Microsoft Sentinel ML Notebooks usa MSTICPy, una potente libreria Python progettata per migliorare le indagini sulla sicurezza e la ricerca delle minacce all'interno dei notebook di Microsoft Sentinel. Offre strumenti predefiniti per l'arricchimento dei dati, la visualizzazione, il rilevamento delle anomalie e le query automatizzate, consentendo agli analisti di semplificare il flusso di lavoro senza una codifica personalizzata completa.

Per altre informazioni, vedere Usare notebook per potenziare le indagini e Usare notebook di Jupyter per cercare minacce alla sicurezza.

Importante

Microsoft Sentinel è disponibile a livello generale all'interno della piattaforma unificata per le operazioni di sicurezza di Microsoft nel portale di Microsoft Defender, tra cui per i clienti senza Microsoft Defender XDR o una licenza E5. Per altre informazioni, vedere Microsoft Sentinel nel portale di Microsoft Defender.

Prerequisiti

Prima di iniziare, assicurarsi di disporre delle autorizzazioni e delle risorse necessarie.

Prerequisito Descrizione
Autorizzazioni Per usare i notebook in Microsoft Sentinel, assicurarsi di disporre delle autorizzazioni necessarie.

Per altre informazioni, vedere Gestire l'accesso ai notebook di Microsoft Sentinel.
Pitone Per eseguire i passaggi descritti in questo articolo, è necessario Python 3.6 o versione successiva.

In Azure Machine Learning è possibile usare un kernel Python 3.8 (scelta consigliata) o un kernel Python 3.6. Se si usa il notebook descritto in questo articolo in un altro ambiente Jupyter, è possibile usare qualsiasi kernel che supporti Python 3.6 o versione successiva.

Per usare notebook MSTICPy all'esterno di Microsoft Sentinel e Azure Machine Learning (ML), è anche necessario configurare l'ambiente Python. Installare Python 3.6 o versione successiva con la distribuzione di Anaconda, che include molti dei pacchetti necessari.
MaxMind GeoLite2 Questo notebook usa il servizio di ricerca georilevazione MaxMind GeoLite2 per gli indirizzi IP. Per usare il servizio MaxMind GeoLite2, è necessario un codice di licenza. È possibile iscriversi per ottenere un account gratuito e una chiave nella pagina di iscrizione di Maxmind.
VirusTotal Questo notebook usa VirusTotal (VT) come origine dell'intelligence sulle minacce. Per usare la ricerca di intelligence sulle minacce VirusTotal, sono necessari un account VirusTotal e una chiave API.

Se si usa una chiave aziendale VT, archiviarla nell'Azure Key Vault anziché nel file msticpyconfig.yaml. Per ulteriori informazioni, consultare la sezione 'Specificare i segreti come Key Vault' nella documentazione di MSTICPY.

Se non si vuole configurare un insieme di credenziali delle chiavi di Azure al momento, iscriversi e usare un account gratuito fino a quando non è possibile configurare l'archiviazione di Key Vault.

Installare ed eseguire il notebook della Guida introduttiva

Questa procedura descrive come avviare il notebook con Microsoft Sentinel.

  1. Per Microsoft Sentinel nel portale di Defender, selezionare Microsoft Sentinel, >, Notebook. Per Microsoft Sentinel nel portale di Azure, in Gestione delle minacce selezionare Notebook.

  2. Nella scheda Modelli selezionare Guida introduttiva per i notebook di Microsoft Sentinel ML .

  3. Selezionare Crea dal modello.

  4. Modificare il nome e selezionare l'area di lavoro di Azure Machine Learning in base alle esigenze.

  5. Selezionare Salva per salvarlo nell'area di lavoro di Azure Machine Learning.

  6. Selezionare Avvia notebook per eseguire il notebook. Il notebook contiene una serie di celle:

    • Le celle Markdown contengono testo e grafica con istruzioni per l'uso del notebook
    • Le celle di codice contengono codice eseguibile che esegue le funzioni del notebook
  7. Nella parte superiore della pagina Compute, selezionare.

  8. Continuare leggendo le celle markdown ed eseguire le celle di codice in ordine, usando le istruzioni nel notebook. Saltare le celle o eseguirle in ordine sparso potrebbe causare errori più avanti nel notebook.

    A seconda della funzione eseguita, il codice nella cella potrebbe essere eseguito rapidamente o potrebbe richiedere del tempo. Quando la cella è in esecuzione, il pulsante di riproduzione si trasforma in un indicatore di caricamento e lo stato viene visualizzato nella parte inferiore della cella, insieme al tempo trascorso.

    La prima volta che si esegue una cella di codice, l'avvio della sessione può richiedere alcuni minuti, a seconda delle impostazioni di calcolo. Viene visualizzata un'indicazione Pronto quando il notebook è pronto per eseguire le celle di codice. Ad esempio:

    Screenshot di un ambiente di Machine Learning pronto per l'esecuzione di celle di codice.

La Guida introduttiva per il notebook di Microsoft Sentinel ML Notebooks include sezioni per le attività seguenti:

Nome Descrizione
Introduzione Descrivere le nozioni di base del notebook e fornisce codice di esempio che è possibile eseguire per vedere il funzionamento dei notebook.
Inizializzazione del notebook e MSTICPy Ti aiuta a preparare l'ambiente per eseguire il resto del notebook. Quando si inizializza il notebook, sono previsti avvisi di configurazione relativi alle impostazioni mancanti perché non è ancora stato configurato alcun elemento.
Esecuzione di query sui dati da Microsoft Sentinel Consente di verificare, configurare e testare le impostazioni di Microsoft Sentinel. Usare il codice in questa sezione per eseguire l'autenticazione a Microsoft Sentinel ed eseguire una query di esempio per testare la connessione.
Configurare e testare provider di dati esterni (VirusTotal e Maxmind GeoLite2) Consente di configurare le impostazioni per VirusTotal, come servizio di intelligence sulle minacce di esempio e MaxMind GeoLite2, come servizio di ricerca della posizione geografica di esempio. Usare il codice in questa sezione per eseguire query di esempio su questi provider di dati per testarle.

Il codice nella Guida introduttiva per i notebook di Microsoft Sentinel ML avvia lo strumento MpConfigEdit , che include una serie di schede per la configurazione dell'ambiente notebook. Quando si apportano modifiche allo strumento MpConfigEdit , assicurarsi di salvare le modifiche prima di continuare. Le impostazioni per il notebook vengono archiviate nel file msticpyconfig.yaml , che viene popolato automaticamente con i dettagli iniziali per l'area di lavoro.

Assicurarsi di leggere attentamente le celle markdown in modo da comprendere completamente il processo, incluse ognuna delle impostazioni e il file msticpyconfig.yaml . I passaggi successivi, le risorse aggiuntive e le domande frequenti del wiki dei notebook di Azure Sentinel sono accessibili dalla fine del notebook.

Personalizza le tue query (opzionale)

Il notebook Getting Started Guide For Microsoft Sentinel ML Notebooks fornisce query di esempio da usare per apprendere sui notebook. Personalizzare le query predefinite aggiungendo ulteriore logica di interrogazione o eseguendo query complete tramite la funzione exec_query. Ad esempio, la maggior parte delle query predefinite supporta il parametro add_query_items, che è possibile usare per aggiungere filtri o altre operazioni alle query.

  1. Eseguire la cella di codice seguente per aggiungere un frame di dati che riepiloga il numero di avvisi in base al nome dell'avviso:

    from datetime import datetime, timedelta
    
    qry_prov.SecurityAlert.list_alerts(
       start=datetime.utcnow() - timedelta(28),
        end=datetime.utcnow(),
        add_query_items="| summarize NumAlerts=count() by AlertName"
    )
    
  2. Passare una stringa di query di Linguaggio di query Kusto (KQL) completa al provider di query. La query viene eseguita sull'area di lavoro connessa e i dati vengono restituiti come DataFrame panda. Eseguire:

    # Define your query
    test_query = """
    OfficeActivity
    | where TimeGenerated > ago(1d)
    | take 10
    """
    
    # Pass the query to your QueryProvider
    office_events_df = qry_prov.exec_query(test_query)
    display(office_events_df.head())
    
    

Per altre informazioni, vedi:

Applicare indicazioni ad altri notebook

I passaggi descritti in questo articolo descrivono come eseguire la Guida introduttiva per i notebook di Microsoft Sentinel ML nell'area di lavoro di Azure Machine Learning tramite Microsoft Sentinel. È anche possibile usare questo articolo come materiale sussidiario per eseguire passaggi simili per l’esecuzione di notebook in altri ambienti, tra cui in locale.

Diversi notebook di Microsoft Sentinel non usano MSTICPy, ad esempio i notebook di Credential Scanner o gli esempi di PowerShell e C#. I notebook che non usano MSTICpy non necessitano della configurazione MSTICPy descritta in questo articolo.

Provare altri notebook di Microsoft Sentinel, ad esempio:

  • Configurazione dell'ambiente notebook
  • Panoramica delle funzionalità del notebook Cybersec
  • Esempi di Machine Learning nei notebook
  • La serie Entity Explorer , incluse le varianti per account, domini e URL, indirizzi IP e host Linux o Windows.

Per altre informazioni, vedi:

Per altre informazioni, vedi: