Microsoft Entra Conditional Access: Bloccare i Flussi di Autenticazione
La gestione degli accessi condizionali di Microsoft Entra per i flussi di autenticazione regola l’uso del flusso di codice dispositivo e del trasferimento di autenticazione. Questi flussi sono utilizzati per autenticare dispositivi senza browser o con input limitato, come smart TV, dispositivi IoT o stampanti. Tuttavia, rappresentano un rischio elevato di sicurezza, potenzialmente sfruttabile in attacchi di phishing o per accedere a risorse aziendali su dispositivi non gestiti.
Michele Ariis
11/22/20244 min read




Prerequisiti e Licenze
Per utilizzare la funzionalità di accesso condizionale di Microsoft Entra, è necessario disporre di una licenza Microsoft Entra ID P1 o superiore
Flusso del codice del dispositivo
Il processo avviene in questi passaggi:
L’utente avvia l’applicazione sul dispositivo e inizia l’accesso.
Il dispositivo invia una richiesta di autorizzazione all’endpoint /oauth2/v2.0/devicecode per il tenant di destinazione o il tenant comune.
Un codice dispositivo, un codice utente e l’URL di verifica vengono inviati al dispositivo.
L’app presenta all’utente l’URL di verifica e il codice utente, chiedendogli di navigare all’URL e completare l’accesso.
Mentre l’utente effettua l’accesso, l’app continua a interrogare l’endpoint del token per un token di accesso /oauth2/v2.0/token. Una volta completato il processo di accesso, il server di autorizzazione risponde con un token di accesso.
Il dispositivo può quindi interagire con i servizi Microsoft abilitati come se fosse l'utente.


Verrà richiesto di aprire un browser e andare su https://microsoft.com/devicelogin e inserire il codice di autenticazione generato


Successivamente il sistema esegue la procedura di accesso standard insieme all'autenticazione a più fattori (se attiva) sul browser esterno.
Una volta concluso avrete accesso alle risorse.


Poiché il codice utente viene immesso manualmente dagli utenti, potrebbe verificarsi un attacco brute force o un phishing remoto in cui un aggressore tenta di avviare una richiesta di codice dispositivo e ottenere l'accesso alle risorse.
Flusso di trasferimento dell'autenticazione
Il trasferimento dell'autenticazione è un nuovo flusso che trasferisce uno stato autenticato da un dispositivo a un altro in modo fluido, per offrire un'esperienza utente semplice.
Ad esempio, se hai un codice QR nella versione desktop di un'app e hai scansionato il codice QR nella versione mobile, lo stato autenticato verrà trasferito dal desktop al dispositivo mobile.
Bloccare il Flusso di Codice Dispositivo e il Trasferimento di Autenticazione
Per bloccare questi flussi, è possibile creare una politica di accesso condizionale in Microsoft Entra.
Dal portale di Microsoft Entra admin center andiamo su Protection > Conditional Access > Create new policy


Diamo un nome alla policy, nel mio caso ho usato Block Authentication Flows


Definiamo ora gli utenti e le risorse su cui avrà impatto questa policy; nel mio caso ho inserito tutti gli utenti e tutte le cloud apps




Definiamo ora le Condizioni > Flussi di autenticazioni attivando Flusso di codice dispositivo e Trasferimento di autenticazione; una volta attivati clicchiamo su Save


Ora definiamo il comportamento che verrà eseguito in base alle configurazioni appena fatte.
Nel nostro caso imposteremo il blocco di queste operazioni selezionando Concedi e abilitando Blocca accesso
Vi consiglio di attivare la policy in modalità Report-only per 1/2 settimane per verificare tramite Insights and reporting il comportamento verso gli account prima di un'implementazione massiva.


Quando sarete pronti, basterà cambiare Enable policy da Report-only a On


Nel caso abbiate dei device che devono usare queste funzionalità, potrete andare ad escluderli tramite i Filtri per device nelle Condizioni




Oppure in base al tipo di piattaforma del device
Esempio senza blocco
Provando a connetterci tramite il client PowerShell usando il seguente comando
az login --use-device-code




oppure in base alla posizione


Esempio con blocco attivo
Sempre da PowerShell eseguiamo il comando
az login --use-device-code
Come in precedenza, verrà richiesto di aprire un browser e andare su https://microsoft.com/devicelogin e inserire il codice di autenticazione generato eseguendo poi la procedura di accesso standard insieme all'autenticazione a più fattori (se attiva) sul browser esterno; a differenza di prima però ora riceveremo il seguente messaggio


Se andiamo a vedere i Sign-in logs per l'utente con cui abbiamo fatto la prova troveremo questo errore


Consiglio
Come scritto in precedenza meglio attivare la policy in Report-only per verificare prima gli impatti sui deviceutenti; se da Insights and reporting non ci sono anomalie la policy può essere passata in modalità On; inoltre, se non ci sono esigenze particolari, non configurerei nessuna esclusione su questa policy.
Conclusione
Implementare una policy di Accesso Condizionale per bloccare i flussi di autenticazione ad alto rischio come il flusso di codice dispositivo e il trasferimento di autenticazione è essenziale per proteggere le risorse aziendali. Seguendo i passaggi descritti, gli amministratori possono garantire che solo i dispositivi gestiti e sicuri possano accedere ai dati aziendali, riducendo significativamente il rischio di attacchi di phishing e accessi non autorizzati.