I ricercatori di Wiz hanno scoperto che il team di sviluppo Microsoft sull’intelligenza artificiale ha accidentalmente esposto oltre 38 TB di dati riservati archiviati in un repository su GitHub pubblico dedicato ai modelli di apprendimento AI open source.
L’archivio, trapelato fin dal mese di luglio 2020, includeva anche il backup su disco delle postazioni di lavoro di due ex dipendenti contenente documenti riservati e password per i servizi Microsoft, oltre a 30.000 messaggi interni scambiati su Teams.
Dalle analisi effettuate si è scoperto che i file sono stati erroneamente condivisi da un account Azure Storage non protetto su cui era stata configurata in maniera errata la funzionalità Shared Access Signature (SAS) basata su token.
“La causa dell’incidente è comune quanto insidiosa: un’errata configurazione di token SAS ha esposto in rete l’intero archivio contenente informazioni sensibili”, sottolinea Pierluigi Paganini, analista di cyber security e CEO Cybhorus.
Secondo quanto dichiarato dalla stessa Microsoft, il data leak non avrebbe comunque interessato i dati degli utenti.
Indice degli argomenti
Microsoft AI: esposti 38 TB di dati riservati
Il data leak involontario dei dati esposti dal team Microsoft AI ha riguardato il repository GitHub dell’azienda dedicato proprio ai progetti di intelligenza artificiale e, come dichiarato dai ricercatori Wiz, sarebbe avvenuto in occasione della pubblicazione di una serie di dati di addestramento open source.
Dopo la segnalazione della falla di sicurezza, il repository “robust-models-transfer” non risulta più essere accessibile, ma prima che fosse eliminato i ricercatori hanno potuto verificare che conteneva codice sorgente e modelli di apprendimento automatico relativi a una ricerca del 2020 intitolata “Do Adversarially Robust ImageNet Models Transfer Better?”.
“Un aspetto importante di questo incidente”, continua ancora Pierluigi Paganini, “riguarda la necessita di proteggere adeguatamente i dataset utilizzati per il training di applicazioni AI-based, e soprattutto di anonimizzarne il contenuto”.
“Chi lavora con sistemi basati su AI sa bene quanto siano preziosi i dataset e come sia complesso reperirli o crearli per le specifiche finalità”, aggiunge Paganini, che ricorda come “enormi quantità di dati sono utilizzati per l’addestramento di sistemi basati su AI e ciò richiede l’implementazione di controlli idonei a garantire la sicurezza dell’informazione e la tutela della privacy degli individui le cui informazioni sono processate”.
Cosa sappiamo del data leak
Come si legge nel rapporto pubblicato dai ricercatori Wiz, il data leak è stato possibile a causa di un token SAS configurato con privilegi di accesso eccessivi.
Ricordiamo che i token SAS rappresentano un’utile funzione di Microsoft Azure che consente agli utenti di condividere i dati in modo difficile da tracciare e da revocare.
Nello specifico, è stato possibile verificare che il file README.md presente all’interno del repository su GitHub conteneva le indicazioni per scaricare da un URL di Azure Storage i modelli di apprendimento automatico per la ricerca Microsoft sull’intelligenza artificiale.
A causa di una cattiva configurazione, però, lo stesso URL forniva anche l’accesso all’intero account di storage, esponendo così ulteriori dati privati.
In particolare, sottolineano ancora i ricercatori Wiz Hillai Ben-Sasson e Ronny Greenberg di Wiz nel loro rapporto, il token era configurato in modo errato consentendo di ottenere le autorizzazioni necessarie per avere il controllo completo sull’albero delle directory del repository anziché quello per l’accesso in sola lettura.
In questo modo, un utente malintenzionato che avesse avuto la possibilità di accedere al repository avrebbe potuto non solo visualizzare tutti i file presenti nell’account Azure Storage, ma anche cancellare e sovrascrivere i file e le cartelle esistenti.
Da parte sua, Microsoft ha dichiarato di non avere alcuna prova in merito a una possibile esposizione non autorizzata dei dati dei clienti e che “nessun altro servizio interno è stato messo a rischio a causa di questo problema di sicurezza”.
Subito dopo la responsible disclosure da parte dei ricercatori Wiz, Microsoft ha provveduto a revocare il token SAS e bloccare tutti gli accessi esterni all’account di archiviazione su Azure Storage.
Soluzioni di mitigazione del rischio
È bene sottolineare che, se utilizzati correttamente, i token SAS (Shared Access Signature) offrono un mezzo sicuro per concedere l’accesso delegato alle risorse dell’account di archiviazione. In particolare, è possibile avere un controllo preciso sull’accesso ai dati da parte dell’utente specificando anche le risorse con cui può interagire, definendo le autorizzazioni relative a tali risorse e determinando la durata della validità dello stesso token SAS.
I ricercatori Wiz, però, hanno fatto notare che “a causa della mancanza di monitoraggio e di governance, i token SAS rappresentano un rischio per la sicurezza e il loro utilizzo dovrebbe essere il più limitato possibile. Questi token sono molto difficili da monitorare, poiché Microsoft non fornisce un modo centralizzato per gestirli all’interno del portale Azure”.
“Inoltre, questi token possono essere configurati per durare effettivamente per sempre, senza alcun limite massimo di scadenza. Pertanto, l’utilizzo dei token Account SAS per la condivisione esterna non è sicuro e dovrebbe essere evitato”.
A tal proposito, Pierluigi Paganini sottolinea come “semplici misure avrebbero limitato l’impatto di questa diffusione accidentale. La disponibilità di un sistema centralizzato per il controllo dei token SAS utilizzati e, soprattutto, la possibilità di configurare una scadenza temporale dei token avrebbero potuto impedire che i dati fossero disponibili online per anni senza che nessuno individuasse l’errata configurazione”.
È fondamentale, dunque, prestare sempre la massima attenzione quando si configurano gli account di accesso a risorse online: anche la più piccola distrazione, come abbiamo visto, può esporre le nostre infrastrutture ad attività malevole e causare una violazione dei tre principi chiave della cyber security relativi alla confidenzialità, all’integrità e alla disponibilità dei dati.