Vulnerability Scan con Microsoft Defender for Endpoint

Lo scan delle vulnerabilità con Microsoft Defender for Endpoint è una funzionalità critica per la sicurezza aziendale che permette di identificare e gestire le vulnerabilità software e le configurazioni errate nei dispositivi di un’organizzazione. Integrato nella soluzione di sicurezza di Microsoft, questo strumento è essenziale per prevenire, rilevare, investigare e rispondere a minacce avanzate.

Una delle principali caratteristiche di questo strumento è la sua capacità di scansionare i dispositivi in cerca di vulnerabilità e configurazioni non sicure, fornendo una valutazione basata sul rischio per ogni problema rilevato. Questo aiuta le squadre di sicurezza a prioritizzare le risposte in base all’impatto potenziale sulla rete.

Microsoft Defender for Endpoint fornisce anche raccomandazioni pratiche per mitigare o risolvere le vulnerabilità identificate, migliorando così la sicurezza complessiva. La sua integrazione con altre funzionalità di sicurezza consente un approccio olistico alla protezione degli endpoint.

L’automazione e la facilità d’uso sono punti di forza significativi, permettendo ai team di sicurezza di gestire le segnalazioni e le scansioni delle vulnerabilità efficacemente. Questa capacità di monitoraggio continuo e di gestione proattiva delle vulnerabilità è fondamentale per le organizzazioni che mirano a rafforzare la loro postura di sicurezza, riducendo la possibilità che le debolezze nei sistemi vengano sfruttate in attacchi.

Molte volte capita di dover eseguire scansioni, per poter avere visibilità delle vulnerabilità presenti all’interno del nostro parco macchine installato. Questo vi permette poi di poter eseguire remediation su quanto effettivamente rilevato e ridurre in modo notevole la possibilità di attacco da parte di persone poco raccomandabili.

In questo articolo vi farò vedere come la funzionalità di Authenticated Scan di Microsoft Defender for Endpoint vi permette di eseguire questa scansione in modo del tutto automatizzato e schedulato.

Figura 1: Schema Vulnerability Management

Prerequisiti

Come per qualsiasi attività, mi piace sempre darvi evidenza dei prerequisiti da rispettare per implementare la funzionalità.

Cominciamo dal discorso licenze, per avere la possibilità di eseguire una scansione schedulata di vulnerabilità sui vostri endpoint, dovrete avere a disposizione:

  • Microsoft Defender Vulnerability Management Standalone
  • Microsoft Defender for Endpoint P2 + Defender Vulnerability Management add-on

Per cercare di spiegarvi ancora di più nel dettaglio il licensing necessario riporto la tabella ufficiale Microsoft con il rispettivo link per approfondimenti

Ecco a voi inoltre il link Microsoft per le licenze della funzionalità Compare Microsoft Defender Vulnerability Management plans and capabilities | Microsoft Learn

Ora che insieme abbiamo “smarcato” il discordo delle licenze, vi riporto i successivi prerequisiti da rispettare quali utenze necessarie per la scansione:

  • Creazione account gMSA per scansione
  • Lista di device sottoposti a scansione
  • Macchina Scanner deve essere gestita da MDE

È inoltre necessaria una VM che ospiterà lo scanner con le seguenti caratteristiche:

  • 2 CPU
  • 4 GB di RAM
  • 80 GB di disco
  • Join to Active Directory
  • VM con Microsoft Defender for Endpoint installato

Nell’articolo vedremo ogni step insieme per permettervi di implementare al meglio la soluzione.

Scenario

L’ambiente di demo che andremo insieme a vedere sarà composto da due macchine, un domain controller, che ospiterà anche il Vulnerability Scanner ed una VM che sarà quella sottoposta a scansione, per darvi evidenza dei sistema operativi e dei nomi macchina ve li riporto nello screenshoot sottostante:

Figura 2: VM Demo Scanner

Figura 3: Domain Controller & Macchina Scanner

La macchina SRVDC quindi sarà il domain controller, che utilizzeremo per la creazione degli account gMSA e per il deploy dello scanner, invece la macchina VMDemo, sarà la macchina soggetta a Scansione schedulata.

Svolgimento

Prima di procedere con qualsiasi attività recatevi all’interno del vostro domain controller, nel mio caso SRVDC e aprite Powershell con diritti amministrativi per procedere alla creazione dell’account gMSA:

Figura 4: Creazione Account gMSA

Figura 5: Creazione Account gMSA

Sostituite gmsa_scanner con il nome scelto del vostro account e SRVDC con il nome del server in cui installerete lo scanner, è importantissimo dopo il nome macchina mantenere $.

A questo punto inserite, non appena richiesto dallo script, il vostro dominio locale, nel mio caso doreminio.local

Figura 6: Creazione Account gMSA

Dopo aver eseguito questo comando, potrebbe capitare di riscontrare questo errore

Figura 7: Errore Creazione gMSA

Per risolverlo, basta che eseguite questo comando:

Add-KdsRootKey –EffectiveTime ((get-date).addhours(-10))

Figura 8: Correzione Errore gMSA

Successivamente ripetere il comando di creazione di gMSA, reinserendo quanto richiesto il dominio locale

Figura 9: Creazione a Buon Fine

NB: Dopo il comando per la risoluzione dell’errore, in base al numero di Domain Controller ed al tempo di propagazione, potrebbe volerci del tempo prima che il comando di creazione gMSA vada a buon fine, nel mio caso essendo un solo DC il comando ha funzionato in modo instantaneo

Ora sempre attraverso Powershell, installate l’account gMSA creato in precedenza sulla macchina che ospiterà lo scanner

Figura 10: Installazione Account gMSA

Figura 11: Account gMSA

Ora dovrete creare una Group Policy, che applicata ai device che volete gestire installare il service account e concederà i permessi necessari per la scansione, la GPO eseguirà uno script PowerShell che potete trovare al seguente link Authenticated scan for Windows in Defender Vulnerability Management | Microsoft Learn

Figura 12: Script da Applicare con GPO

Dovrete ora procedere a recuperare il SID del gruppo “Performance Monitor User” del vostro dominio

Figura 13: SID Performance Monitor User

Figura 14: SID Gruppo

Copiare ora il codice nello script

Figura 15: Copiare il SID

Procedete quindi adesso a creare una nuova Group Policy per questa componente “Enable Windows Management Instrumentation (WMI)”

Figura 16: Creazione GPO

Figura 17: Creazione GPO

Figura 18: Creazione GPO

Figura 19: Creazione GPO

Figura 20: Creazione GPO

Utilizzando la stessa GPO dovrete creare “Allow WMI through the firewall

Figura 21: Creazione GPO

Figura 22: Creazione GPO

Figura 23: Creazione GPO

Figura 24: Creazione GPO

Ora dovrete per tutte e tre le policy rimuovere le network “Private” e “Public” in quanto è necessaria

Figura 25: Creazione GPO

Ora dovrete procedere per questo punto “Grant permissions to perform DCOM operations

Figura 26: Creazione GPO

Figura 27: Creazione GPO

Figura 28: Creazione GPO

Figura 29: Creazione GPO

Figura 30: Creazione GPO

Copiate lo script creato in precedenza, all’interno della cartella proposta e selezionatelo

Figura 31: Creazione GPO

Figura 32: Creazione GPO

Personalmente vi consiglio di creare una OU nella quale inserire i device soggetti alla scansione, in questo modo, applicherete la GPO solo a quello OU specifica nel mio caso OU “Scanner”

Figura 33: Applicazione GPO

Figura 34: Applicazione GPO

Figura 35: Applicazione GPO

Ora, per forzare, la ricezione della policy lato client, potete eseguire questo comando

Figura 36: Applicazione GPO Client

Per verificare invece che la policy sia stata recepita correttamente

Figura 37: Policy Applicata Correttamente

Ricapitolando, a questo punto avrete creato la GPO, dovrete quindi installare lo scanner, recatevi quindi all’interno del Portale di Defender

Figura 38: Installazione Scanner

Figura 39: Installazione Scanner

Figura 40: Installazione Scanner

Figura 41: Installazione Scanner

Figura 42: Installazione Scanner

Figura 43: Installazione Scanner

Figura 44: Installazione Scanner

Figura 45: Installazione Scanner

NB: Se non avrete prima eseguito l’on-boarding della macchina in MDE avrete l’errore sotto riportato

Figura 46: Errore Installazione Scanner

Per eseguire l’onboarding tramite GPO dei dispositivi vi lascio il riferimento al mio articolo Come eseguire l’on-boarding di Microsoft Defender for Endpoint tramite GPO di Active Directory – ICT Power

Figura 47: Installazione Scanner

Ora inserire il codice che vi viene fornito e successivamente inserite Account e Password di un’utenza Global Administrator

Figura 48: Installazione Scanner

Figura 49: Installazione Scanner

Figura 50: Installazione Scanner

Ora potete configurare il processo di scansione, direttamente dal portale di Microsoft Defender, la scansione, una volta configurata avrà una schedulazione di Default di 4 ore, ma potete modificarla per essere eseguita una sola volta o con più frequenza.

Figura 51: Configurazione Scansione

Figura 52: Configurazione Scansione

Figura 53: Configurazione Scansione

Figura 54: Configurazione Scansione

Io ho inserito un target di IP, ma è possibile inserire gli IP o gli hostname puntuali delle macchine soggette a scansione, improntandole eventualmente tramite CSV

Figura 55: Configurazione Scansione

Figura 56: Configurazione Scansione

Figura 57: Configurazione Scansione

Figura 58: Configurazione Scansione

Come potrete notare la scansione risulterà in “Pending” fino a quando non verrà completata per la prima volta

Figura 59: Configurazione Scansione

Quando la scansione avrà completato con successo le attività nello stato della pagina del device vedremo le vulnerabilità riscontrate

Figura 60: Vulnerabilità Riscontrate

Conclusioni

Come avrete potuto notare questo strumento è molto utile, esegue con poco effort una scansione completa dei nostri sistemi.

Questa funzionalità a mio avviso ha diversi vantaggi:

  • Discovery delle vulnerabilità con relativo avviso agli IT Admin
  • Vi permette di conseguenza di eseguire opportune Remediation

È vero che richiede un piccolo ADDON di licenza, rispetto a Microsoft Defender for Endpoint, ma configurato in modo opportuno può aiutarvi ad effettuare aggiornamenti critici che potrebbero, se tralasciati, compromettere il vostro Business.

Molte volte a mio avviso, non bisognerebbe chiedersi “quanto costa questa licenza ?” ma piuttosto chiedersi “quanto mi costerebbe una vulnerabilità aperta sui miei sistemi?”