L’attacco finale all’autenticazione Basic

La sicurezza di tutti i sistemi informatici si basa su due concetti fondamentali: l’autenticazione e l’autorizzazione. La prima determina chi siamo e la seconda determina cosa possiamo fare. Fin dalle origini ci siamo autenticati con un nome utente ed una password ma oggi i tempi sono cambiati e Microsoft, dal 1 ottobre, sferra l’attacco finale a questo vetusto sistema di autenticazione. Per capirne le motivazioni, cosa cambia e come evitare di rimanere impantanati è necessario procedere con ordine.

Le debolezze della Basic Authentication

Identificarsi con un nome ed una password è uso comune e negli anni l’evoluzione della tecnologia e dei protocolli ha sopperito alle molteplici mancanze di questo semplice protocollo. Oggi infatti in rete interna c’è Kerberos oppure NTLMv2 che necessitano però di un’infrastruttura conosciuta, di un dominio Active Diretory o di Samba. Quando si devono integrare sistemi completamente diversi si usa ancora molto l’autenticazione Basic dove, per sua natura, il nome e password transitano in chiaro sulla rete. Motivo per il quale si crea “sempre” un tunnel SSL con il protcollo HTTPS. Quindi il client che si deve autenticare esegue una connessione HTTPS con il server, grazie al certificato fornito crea il tunnel cifrato e poi invia, all’interno del tunnel, il nome e la password come semplici stringhe. Per questo motivo, quando sentiamo parlare di autenticazione Basic in Exchange Online in realtà è sempre Basic over SSL.
Altro problema non da poco è la vera mancanza della mutua autenticazione. Il client manda le proprie credenziali al server alla cieca, il server è autenticato dal solo certificato ma esistono molti attacchi per fare in modo che l’utente venga ingannato o raggirato sul certificato del server.
Per concludere, l’autenticazione Basic, non prevede altre forme di controllo oltre alla password (qualcosa che sai) quindi non è compatibile con token (qualcosa che hai) o con rilevamenti biometrici (qualcosa che sei) quindi niente Multi-Factor Authentication.

Il flusso dell'autenticazione Basic (over SSL)

La forza della Modern Authentication

I servizi public cloud connettono quotidianamente sistemi informatici diversi ed usano protocolli evoluti basati su standard OAuth2 completati con lo standard OpenID Connect (OIDC) quando si tratta di utenti. Su questo argomento rimando ad un articolo precedente che ne spiega il funzionamento.
Tutte le debolezze precedentemente descritte vengono risolte e, per facilitare la comprensione degli utenti, i produttori hanno dato nomi più semplici a queste sigle così in Azure Active Directory la chiamiamo Modern Authentication (MA).
Quando accediamo ad un sistema informatico possiamo capire se stiamo usando la MA se ci soffermiamo sulla schermata che ci chiede l’autenticazione. Se si tratta di una pagina web che, il più delle volte, è brandizzata e separa la schermata dove inserire lo username da quella della password, si tratta di autenticazione moderna (AzureAD, ADFS). Se ci compare un popup dove inserire username e password allora è ancora un’autenticazione legacy.

Richieste di autenticazione.

La scelta di Microsoft per Exchange Online

Nel cloud Microsoft tutti i servizi sono compatibili con la Modern Autentication ma uno solo supporta ancora la Basic (over SSL): Exchange Online. Il motivo è intuibile, la posta elettronica è un servizio che esiste da sempre e, nonostante migrata sul cloud, sono ancora moltissimi i sistemi eterogenei che non sono compatibili con i nuovi standard di sicurezza ma devevano comunque inviare e ricevere posta.
Possiamo suddividere grossolanamente i protocolli della posta elettronica in due categorie:

  1. Accesso e consultazione della casella di posta dove leggono i messaggi ricevuti e li gestiscono: EWS (Exchange Web Services), MAPI over HTTPS, OAB (Offline Address Book), RPC over HTTPS (Outlook Anywhere), EAS (Exchange ActiveSync), Autodiscover, IMAP, POP, Remote Powershell.
  2. Invio della mail senza necessità di leggere la casella postale: SMTP.

Dal 1 ottobre 2022 Microsoft comincerà a spegnere la Basic Auth sui tenant di Microsoft365 (Exchange Online) della sola prima categoria cioè l’accesso e la consultazione della mailbox mentre non toccherà la seconda categoria che riguarda il mero invio della posta con SMTP AUTH (solo rimandato a fine anno). Gli Exchange Onprem non sono impattati da questa modifica.
Per eseprienza operativa, verranno interessate le vecchie applicazioni per smartphone, le sale riunioni con firmware vetusto, il software di terze parti e alcune versioni di Outlook non adeguatamente aggiornate o fuori supporto.

I protocolli di accesso client ad Exchange

Come controllare e rimediare

Se avete abilitato la Multi-Factor Authentication obbligatoria a tutti i vostri utenti per l’accesso a Microsoft365 potete stare tranquilli ma fare un controllo è sempre meglio.
Di seguito le azioni da compiere:

  • Comprendere l’entità del problema: Dal portale di amministrazione di Microsoft365 (https://admin.microsoft.com), Health | Message center. Cercate la parola Basic ed osservate il risultato. Se sono presenti dei messaggi mensili di riepilogo (da ottobre 2021) vuol dire che dovete approfondire. Se non li trovate, e siete certi che non ci siano filtri nelle Preferenze, siete a posto.

Messaggio di allerta nell'uso della Basic Authentication

  • Capire chi sono gli utenti che accedono con la Basic Authetication: Dal portale di amministrazione di Azure Active Directory (https://aad.portal.azure.com), Monitoring | Sign-in logs. Creare un filtro così composto:
    – Authentication protocol: ROPC
    – Application: Exchange Online
    Filtrare ed ordinare il risultato entrando eventualmente nel merito dei logs osservando quale applicazione o protocollo viene utilizzato dalle persone. Se avete molti utenti da correggere potreste trovare beneficio dall’aggiungere un filtro in più:
    – Client app: Scegliere il protocollo desiderato nella lista “Legacy Authentication Clients”.

Identificare gli utenti che usano la Basic Authentication

  • Bloccare in anticipo i protocolli: Dal portale di amministrazione di Microsoft 365 (https://admin.microsoft.com), Settings | Org Settings | Modern Authentication. Deselezionare i protocolli desiderati, nell’esempio in figura lasciamo abilitato solo SMTP AUTH in quanto non è parte di questa urgenza e magari, anche voi, avete delle vecchie stampanti/scanner che inviano le email usando Microsoft 365. Per queste ultime avete 3 mesi di tempo in più nel quale seguirà un altro articolo ad hoc.

Disabilitare la Basic Authentication

Conclusioni

Aumentare la sicurezza informatica è l’obiettivo principale di ogni azienda e Microsoft decide, dal 1 ottobre 2022, dopo 3 anni di precise comunicazioni, di bloccare il protocollo di autenticazione più utilizzato per gli attacchi alle credenziali degli utenti. Se vi accorgete solo oggi, mettendo in pratica questo articolo, che state per essere immersi in un mare di sterco c’è la possibilità di posticipare di alcuni mesi questo blocco seguendo l’articolo alle voci “Opting Out” e/o “Re-Enabling Basic for protocols”. Attenzione però che dal 1 gennaio 2023 ogni forma di Basic Authetication in Exchange Online verrà disabilitata per sempre, anche per l’invio di posta in SMTP AUTH.

Ultimo articolo ufficiale sull’argomento: Basic Authentication Deprecation in Exchange Online