Automatizzazione delle risposte agli incidenti con i playbook in Azure Sentinel

Automatizzazione delle risposte agli incidenti con i playbook in Azure Sentinel

01/11/2024

Questo articolo tecnico ed educativo ha lo scopo di guidare gli analisti della sicurezza, gli amministratori IT e gli ingegneri di sistema nell'automazione delle risposte agli incidenti di sicurezza utilizzando i Playbook in Microsoft Sentinel. I playbook, basati su App per la logica di Azure, sono un componente fondamentale della funzionalità SOAR (Security Orchestration, Automation, and Response) di Sentinel, consentendo ai team di sicurezza di automatizzare attività ripetitive, orchestrare flussi di lavoro complessi e rispondere alle minacce in modo più rapido e coerente [1].

Introduzione

In un moderno Security Operations Center (SOC), il volume di avvisi e incidenti può essere eccessivo. Gli analisti della sicurezza dedicano una notevole quantità di tempo ad attività manuali e ripetitive come la valutazione degli avvisi, l'arricchimento dei dati, la notifica alle parti interessate e l'esecuzione di azioni correttive di base. Questo sovraccarico non solo aumenta il tempo medio di risposta (MTTR), ma distoglie anche l'attenzione degli analisti da minacce più complesse e indagini approfondite. Microsoft Sentinel, con le sue funzionalità SOAR, affronta questa sfida consentendo l'automazione della risposta agli incidenti tramite Playbook [2].

Questa guida pratica tratterà i concetti fondamentali dei playbook e delle regole di automazione in Sentinel, il processo di creazione di un playbook utilizzando le app per la logica di Azure, l'integrazione dei playbook con analisi e regole di automazione ed esempi pratici di automazione come l'invio di notifiche, il blocco di indirizzi IP dannosi e l'isolamento di host compromessi. Verranno fornite istruzioni dettagliate e flussi di lavoro di esempio in modo che il lettore possa implementare e convalidare l'automazione della risposta agli incidenti, ottimizzando le operazioni di sicurezza e rafforzando la posizione di difesa della propria organizzazione.

Perché l'automazione con i Playbook in Sentinel è fondamentale?

  • Tempo di risposta ridotto (MTTR): automatizza le azioni di riparazione immediate, come il blocco di un IP o la disabilitazione di un account utente, riducendo il tempo in cui una minaccia rimane attiva.
  • Maggiore efficienza del SOC: libera gli analisti della sicurezza da attività ripetitive, consentendo loro di concentrarsi su indagini complesse e sulla caccia alle minacce.
  • Coerenza e standardizzazione: garantisce che le risposte agli incidenti seguano un processo standardizzato e documentato, riducendo gli errori umani e garantendo la conformità.
  • Scalabilità: consente al SOC di gestire un volume crescente di avvisi senza la necessità di aumentare proporzionalmente il team.
  • Orchestrazione degli strumenti: si integra con un'ampia gamma di servizi e strumenti (Azure, Microsoft 365 e soluzioni di terze parti) per orchestrare le risposte nell'intero ecosistema di sicurezza.
  • Arricchimento dei dati: automatizza la raccolta di informazioni contestuali da più fonti (ad esempio intelligence sulle minacce, informazioni sull'utente, dati del dispositivo) per accelerare il triage e l'indagine.

Prerequisiti

Per automatizzare le risposte con Playbook in Azure Sentinel, saranno necessari i seguenti elementi:

  1. Area di lavoro Microsoft Sentinel attiva: un'area di lavoro Log Analytics con la soluzione Microsoft Sentinel abilitata.
  2. Accesso amministrativo: un account con autorizzazioni per creare e gestire risorse in Azure, incluse le app per la logica, e con il ruolo di "Collaboratore Microsoft Sentinel" o "Risponditore Microsoft Sentinel" nell'area di lavoro Sentinel [3].
  3. Connettori dati configurati: origini dati connesse a Sentinel per generare avvisi e incidenti (ad esempio Azure Active Directory, Microsoft Defender for Cloud, ecc.).
  4. Regole di analisi abilitate: regole di analisi configurate per rilevare minacce e creare incidenti dai dati acquisiti.

Passo dopo passo: automatizzare le risposte con i playbook

Creiamo e automatizziamo un Playbook per rispondere a un incidente di sicurezza.

1. Comprensione dei componenti di Sentinel Automation

  • Playbook: si tratta di raccolte di procedure che possono essere eseguite da Microsoft Sentinel in risposta a un avviso o un incidente. I playbook sono basati su App per la logica di Azure e possono includere una serie di azioni come l'invio di messaggi di posta elettronica, la creazione di ticket nei sistemi ITSM, il blocco degli IP in un firewall e così via. [4].
  • Regole di automazione: Sono regole che permettono di gestire l'automazione degli incidenti nella Sentinella. Possono essere utilizzati per assegnare incidenti, modificarne lo stato, aggiungere tag e, soprattutto, eseguire Playbook. Le regole di automazione fungono da “trigger” centralizzato per i Playbook [5].

2. Creazione di un playbook (app per la logica di Azure)

Creiamo un semplice Playbook che, quando attivato da un incidente Sentinel, invia una notifica e-mail con i dettagli dell'incidente.

  1. Apri il browser e accedi al portale di Azure: "https://portal.azure.com".
  2. Nel campo di ricerca in alto, digita "App per la logica" e selezionalo dai risultati.
  3. Fare clic su "+Aggiungi" per creare una nuova app per la logica.
  4. Nozioni di base:

    • Abbonamento: seleziona il tuo abbonamento.
    • Gruppo di risorse: seleziona un gruppo di risorse (si consiglia di utilizzare lo stesso dell'area di lavoro Sentinel).
    • Nome logico dell'app: assegna un nome al tuo Playbook (ad esempio: "NotifyIncidentSentinel").
    • Regione: seleziona la regione.
    • Tipo di piano: seleziona "Consumo" per un modello con pagamento in base al consumo, ideale per la maggior parte degli scenari Playbook.
  5. Fare clic su "Rivedi + crea" e quindi su "Crea".

  6. Dopo la distribuzione, fare clic su "Vai alla risorsa" per aprire Progettazione app per la logica.

3. Configurazione del trigger e delle azioni del Playbook

La finestra di progettazione dell'app per la logica si aprirà con una schermata di modelli. Seleziona "App per la logica vuota".

  1. Configura il trigger: nel campo di ricerca del designer, digita "Microsoft Sentinel" e seleziona il trigger "Quando viene creato un incidente Microsoft Sentinel".

  2. Connetti a Sentinel: se è la prima volta, dovrai creare una connessione al tuo spazio di lavoro Sentinel. Autenticarsi con un account che disponga delle autorizzazioni necessarie.

  3. Aggiungi un'azione (Invia email): fai clic su "+ Nuovo passaggio".

  4. Nel campo di ricerca, digita "Invia un'e-mail" e seleziona l'azione "Invia un'e-mail (V2)" dal connettore "Office 365 Outlook" (o un altro provider di posta elettronica di tua scelta).

  5. Configura azione email: compilare i campi dell'email utilizzando il contenuto dinamico del trigger dell'incidente Sentinel:

    • A: Inserisci l'indirizzo email del destinatario (es: [email protected]).
    • Oggetto: "Nuovo incidente Sentinel:" e seleziona "Titolo incidente" dal contenuto dinamico.
    • Corpo: crea un corpo dell'email informativo, inclusi i dettagli dell'incidente:
      • "Titolo:" (seleziona "Titolo incidente")
      • "Gravità:" (seleziona "Gravità incidente")
      • "Descrizione:" (seleziona "Descrizione incidente")
      • "Link all'incidente:" (seleziona "URL dell'incidente")
  6. Fare clic su Salva per salvare il Playbook.

4. Concessione delle autorizzazioni per Playbook

Prima che Playbook possa interagire con Sentinel e altre risorse, sono necessarie le autorizzazioni. Il modo più semplice per eseguire questa operazione consiste nell'assegnare il ruolo "Collaboratore Microsoft Sentinel" all'identità gestita dell'app per la logica.

  1. Nel portale di Azure passare all'area di lavoro di Azure Sentinel.
  2. Nel riquadro di navigazione a sinistra, seleziona Controllo accesso (IAM).
  3. Fare clic su "+Aggiungi" > "Aggiungi assegnazione di ruolo".
  4. Ruolo: seleziona "Collaboratore Microsoft Sentinel".
  5. Membri: in "Assegna accesso a", seleziona "Identità gestita".
  6. Fare clic su "+Seleziona membri".
  7. Identità gestita: seleziona "App logica" e cerca il tuo Playbook ("NotifyIncidentSentinel"). Selezionalo e fai clic su "Seleziona".

  8. Fare clic su "Rivedi e assegna" per terminare.

5. Creazione di una regola di automazione per attivare il Playbook

Ora creiamo una regola di automazione in Sentinel per eseguire il Playbook ogni volta che viene creato un nuovo incidente.

  1. Nel portale di Azure passare all'area di lavoro di Azure Sentinel.
  2. Nel riquadro di navigazione a sinistra, seleziona Automazione.
  3. Fare clic su "+ Crea" > "Regola di automazione".
  4. Nome regola di automazione: assegnagli un nome (es: "Notifica nuovi incidenti").
  5. Trigger: selezionare "Quando viene creato l'incidente".
  6. Condizioni: è possibile aggiungere condizioni in modo che la regola venga attivata solo per incidenti specifici (ad esempio: "Gravità" "Uguale a" "Alto"). Per questo esempio non aggiungeremo condizioni, quindi la regola verrà applicata a tutti i nuovi incidenti.
  7. Azioni: in "Azioni", seleziona "Esegui playbook".
  8. Dal menu a discesa, selezionare Playbook che hai creato ("NotifyIncidentSentinel`).

  9. Ordine: Definire l'ordine di esecuzione delle regole (se sono presenti più regole).

  10. Scadenza regola: definisce se la regola deve scadere ad un certo punto.
  11. Fare clic su "Applica" per creare la regola di automazione.

Convalida e test

Per convalidare l'automazione, è necessario attivare la creazione di un incidente in Sentinel.

1. Attivazione di un incidente di prova

  1. Nel portale di Azure passare all'area di lavoro di Azure Sentinel.
  2. Nel riquadro di navigazione a sinistra, seleziona Incidenti.
  3. Fare clic su "+ Crea incidente (anteprima)".
  4. Compila i dettagli dell'incidente del test (titolo, descrizione, gravità, ecc.) e fai clic su "Crea".

2. Verifica dell'esecuzione del Playbook

  1. Controlla e-mail: controlla la posta in arrivo del destinatario che hai impostato in Playbook. Dovresti ricevere un'e-mail con i dettagli dell'incidente di test che hai creato.

  2. Controllare la cronologia di esecuzione del Playbook: nel portale di Azure passare all'app per la logica ("NotifyIncidentSentinel").

  3. Nel riquadro di navigazione a sinistra, seleziona Panoramica e quindi la scheda "Cronologia esecuzioni".
  4. Dovresti vedere un'esecuzione riuscita corrispondente all'incidente di test. Fare clic su di esso per visualizzare i dettagli di ciascun passaggio (trigger e azione).

Esempio pratico avanzato: blocco di IP dannosi

Creiamo un Playbook più avanzato che, dopo aver ricevuto un incidente con un indirizzo IP dannoso, aggiunge tale IP a una regola di blocco in un gruppo di sicurezza di rete di Azure (NSG).

  1. Crea un nuovo Playbook: seguire i passaggi nella sezione 2 per creare una nuova app per la logica (ad esempio: BloquearIPMalicioso).
  2. Configura il trigger: utilizzare il trigger "Quando viene creato un incidente Microsoft Sentinel".
  3. Aggiungi azione (Ottieni entità incidente): aggiungi un nuovo passaggio e cerca l'azione "Entità - Ottieni IP" dal connettore "Microsoft Sentinel". Ciò estrarrà gli indirizzi IP dell'incidente.

  4. Aggiungi azione (loop per ogni IP): poiché un incidente può avere più IP, aggiungi un controllo "Per ciascuno" per scorrere l'elenco di IP restituiti dall'azione precedente.

  5. Aggiungi azione (Aggiungi IP a NSG): all'interno del ciclo "For Each", aggiungi un'azione del connettore "Azure NSG" denominata "Aggiorna un gruppo di sicurezza di rete".

    • Gruppo di risorse: seleziona il gruppo di risorse del tuo gruppo di sicurezza di rete.
    • Nome gruppo di sicurezza di rete: selezionare il gruppo di sicurezza di rete che si desidera aggiornare.
    • Regole di sicurezza: aggiungi una nuova regola di sicurezza con le seguenti proprietà:
      • Nome: BlockIP- (e aggiungi l'IP dinamico dal ciclo For Each).
      • Priorità: imposta una priorità alta (es: 100).
      • Direzione: Ingresso.
      • Accesso: Nega.
      • Protocollo: Qualsiasi.
      • Intervallo di porte di origine: *.
      • Intervallo di porte di destinazione: *.
      • Indirizzo sorgente: seleziona l'IP dinamico del ciclo "For Each".
      • Indirizzi di destinazione: *.
  6. Salva e concedi autorizzazioni: salva il Playbook e concedi le autorizzazioni necessarie all'identità gestita dell'app per la logica (ad esempio "Collaboratore di rete" nell'ambito NSG).

  7. Crea regola di automazione: crea una nuova regola di automazione in Sentinel per attivare questo Playbook quando un incidente contiene un IP dannoso (ad esempio in base al nome o ai tag della regola di analisi).

Suggerimenti e best practice per la sicurezza

  • Utilizza identità gestite: utilizza sempre identità gestite per autenticare i Playbook anziché archiviare credenziali o chiavi API.
  • Principio del privilegio minimo per i Playbook: concedi ai Playbook solo le autorizzazioni strettamente necessarie per eseguire le proprie azioni. Ad esempio, se un Playbook deve solo leggere dati, non concedere autorizzazioni di scrittura.
  • Test nell'ambiente di sviluppo: prima di distribuire i Playbook in produzione, testali accuratamente in un ambiente di sviluppo o test per evitare conseguenze indesiderate.
  • Monitoraggio Playbook: monitora la cronologia delle esecuzioni dei tuoi Playbook per rilevare errori o esecuzioni impreviste. Configura avvisi per gli errori del Playbook.
  • Documentazione: documenta chiaramente cosa fa ciascun Playbook, quali autorizzazioni ha e come viene attivato. Questo è fondamentale per la manutenzione e il controllo.
  • Controllo della versione: utilizza un sistema di controllo della versioneversione (ad esempio Git) per gestire il codice sorgente delle tue app per la logica (esportando il modello ARM), consentendo il rilevamento delle modifiche e la collaborazione.
  • Approvazione umana per azioni distruttive: per le azioni correttive che potrebbero avere un impatto sulla produzione (ad esempio isolando un server critico), valuta la possibilità di aggiungere un passaggio di approvazione umana nel Playbook (ad esempio inviando un'e-mail con le opzioni di approvazione/rifiuto tramite schede adattive).

Risoluzione dei problemi comuni

  • Il Playbook non viene attivato: controlla la regola di automazione in Sentinel. Assicurarsi che le condizioni delle regole siano soddisfatte dall'incidente. Verifica che il trigger Playbook sia configurato correttamente.
  • Il Playbook non viene eseguito: controllare la cronologia di esecuzione dell'app per la logica per identificare il passaggio non riuscito e il messaggio di errore. Le cause più comuni includono autorizzazioni insufficienti, parametri errati o problemi di connettività.
  • Errore di autorizzazioni: verificare che l'identità gestita dell'app per la logica disponga delle autorizzazioni RBAC richieste per la risorsa a cui sta tentando di accedere (ad esempio Sentinel, NSG, Azure AD).
  • Loop infinito: fai attenzione che un Playbook non esegua un'azione che a sua volta attivi nuovamente lo stesso incidente, creando un loop infinito. Utilizzare le condizioni nelle regole di automazione per evitare ciò.
  • Problemi del connettore: controllare la documentazione del connettore dell'app per la logica in uso per eventuali limitazioni o problemi noti. Controlla se la connessione è integra.

Conclusione

Automatizzare la risposta agli incidenti con Playbook in Azure Sentinel è una capacità di trasformazione per qualsiasi team di sicurezza. Automatizzando le attività ripetitive e orchestrando le azioni correttive, le organizzazioni possono ridurre drasticamente i tempi di risposta alle minacce, aumentare l'efficienza del SOC e garantire una risposta agli incidenti coerente e standardizzata. La flessibilità delle app per la logica di Azure consente di creare flussi di lavoro di automazione da semplici notifiche a complesse catene di riparazione su più strumenti. Con questa guida pratica, i professionisti della sicurezza saranno ben attrezzati per sfruttare la potenza di SOAR in Microsoft Sentinel, rendendo le loro operazioni di sicurezza più agili, efficaci e pronte ad affrontare le sfide di un panorama delle minacce in continua evoluzione.


Riferimenti:

[1]Microsoft Learn. Automatizza la risposta alle minacce con le regole di automazione in Microsoft Sentinel. Disponibile all'indirizzo: https://learn.microsoft.com/pt-br/azure/sentinel/automate-incident-handling-with-automation-rules [2]Microsoft Learn. Che cos'è SOAR (orchestrazione, automazione e risposta della sicurezza)?. Disponibile all'indirizzo: https://learn.microsoft.com/pt-br/azure/sentinel/what-is-soar [3]Microsoft Learn. Autorizzazioni in Microsoft Sentinel. Disponibile all'indirizzo: https://learn.microsoft.com/pt-br/azure/sentinel/roles [4]Microsoft Learn. Crea e gestisci playbook Microsoft Sentinel. Disponibile all'indirizzo: https://learn.microsoft.com/pt-br/azure/sentinel/automation/create-playbooks [5]Microsoft Learn. Crea e usa le regole di automazione di Azure Sentinel per gestire la risposta. Disponibile all'indirizzo: https://learn.microsoft.com/pt-br/azure/sentinel/create-manage-use-automation-rules