Prevenire l'esfiltrazione di dati

Mantieni tutto organizzato con le raccolte Salva e classifica i contenuti in base alle tue preferenze.

Una funzione essenziale della sicurezza del computer e della rete è quella di mantenere i dati sensibili inaccessibili a terzi non autorizzati. Questo documento illustra le caratteristiche dei rischi di esfiltrazione di dati e illustra le best practice del settore per la protezione dei dati. Spiega come utilizzare strumenti e funzionalità in Google Cloud per ridurre i rischi, rilevare l'esfiltrazione di dati e rispondere agli eventi di esfiltrazione. Quando possibile, le minacce alla sicurezza e gli approcci alla difesa saranno descritti in un contesto indipendente dal cloud. L'ambiente normativo in evoluzione, in particolare il Regolamento europeo generale sulla protezione dei dati (GDPR) che diventa obbligatorio nel 2018, ha aggiunto una nuova enfasi al deployment di meccanismi di prevenzione dell'esfiltrazione di dati.

Definizione dell'esfiltrazione di dati

In questo documento, l'esfiltrazione di dati viene definita come quando una persona autorizzata estrae i dati dai sistemi protetti a cui appartengono e li condivide con terze parti non autorizzate o li sposta in sistemi non sicuri. Le persone autorizzate includono dipendenti, amministratori di sistema e utenti fidati. L'esfiltrazione di dati può verificarsi a causa delle azioni di utenti malintenzionati o compromessi, oppure accidentalmente.

Per ridurre il rischio di esfiltrazione di dati, le organizzazioni devono integrare la consapevolezza della sicurezza e le best practice nella propria cultura. Devono valutare costantemente i rischi di ogni interazione con reti informatiche, dispositivi, applicazioni, dati e altri utenti. Le organizzazioni possono anche decidere di istituire audit periodici per verificare che vengano seguite le best practice.

Confronto dei rischi di esfiltrazione di dati nel cloud

Molte strategie tradizionali di sicurezza dei dati si basano sul rafforzamento delle difese perimetrali fisiche delle reti private. In qualità di consumatore cloud, tuttavia, non puoi controllare l'infrastruttura di rete fisica utilizzata dai servizi. Nei cloud pubblici, l'infrastruttura di rete del provider host è condivisa e non esiste un perimetro nel senso tradizionale. La protezione dei dati nel cloud richiede nuovi approcci di sicurezza e metodi di controllo dell'accesso ai dati.

Per analogia, considera che le infrastrutture cloud pubbliche sono state tra le prime del settore ad adottare l'uso di hardware di base nel data center. Sebbene questo possa comportare un tasso superiore di guasti hardware, le ripercussioni di tali errori sono ridotte al minimo grazie alla ridondanza e all'architettura di servizio intelligente. In tale ambiente, i servizi devono essere in grado di assorbire più errori agevolmente. Le architetture di servizio sono progettate per guasti hardware e di rete, dividendo l'elaborazione, l'archiviazione, l'autenticazione e altre attività su più macchine e aree geografiche, riducendo così al minimo l'impatto di qualsiasi evento di errore. Per proteggere i dati, devi adottare un approccio simile: progettare un'architettura per ridurre al minimo i tempi di inattività e limitare gli effetti al resto del sistema in caso di compromissione della sicurezza.

Per soddisfare i clienti più attenti alla sicurezza, il modello di sicurezza del cloud pubblico incorpora questo pensiero. Google Cloud offre una VM schermata per fornire l'integrità verificabile delle istanze della macchina virtuale (VM) di Compute Engine, in modo che tu possa avere la certezza che le tue istanze non siano state compromesse da malware a livello di avvio o di kernel. L'integrità verificabile della VM schermata è ottenuta mediante l'utilizzo dell'avvio protetto, dell'avvio con misurazioni abilitato per vTPM e del monitoraggio dell'integrità.

Inoltre, i provider possono eseguire il deployment di agenti specializzati per produrre telemetria sull'attività degli utenti e degli host in macchine virtuali basate su cloud (VM). Ciò fornisce al Security Operations Center (SOC) visibilità sulle attività all'interno e attorno al limite di sicurezza che muta frequentemente.

I provider introducono anche chokepoint espliciti, come bastion host per la comunicazione con gruppi di VM, server proxy di rete, server in uscita dalla rete e reti tra progetti. Queste misure possono ridurre il rischio di esfiltrazione di dati, ma non possono eliminarle completamente.

La tua organizzazione deve inoltre stabilire una solida infrastruttura di rilevamento e risposta per gli eventi di esfiltrazione di dati. L'infrastruttura cloud corretta ti consentirà di rilevare rapidamente attività rischiose o improprie, limitare il "raggio di esplosione" dell'attività e ridurre al minimo la finestra di opportunità per l'agente di esfiltrazione.

Categorie di eventi di esfiltrazione di dati

Gli eventi di esfiltrazione di dati possono essere classificati in base a caratteristiche tecnologiche, organizzative e fisiche comuni. Nelle sezioni che seguono, esamineremo alcune di queste categorie e discuteremo strategie di prevenzione e mitigazione per ciascuna di esse.

Posta in uscita

In questo scenario, gli utenti utilizzano un'infrastruttura di telecomunicazioni autorizzata, come posta elettronica o dispositivi mobili aziendali, per trasmettere dati sensibili da sistemi informatici sicuri a terze parti non protette o sistemi privati non sicuri. I dati sensibili possono essere trasmessi come testo normale in un messaggio di posta elettronica o di testo oppure allegati come file. Questo metodo viene spesso utilizzato per esfiltrare il contenuto di codice sorgente, previsioni aziendali, documenti di pianificazione, immagini, database, calendari ed email dell'organizzazione.

Diversi sistemi di posta elettronica e di messaggistica salvano le bozze nel cloud, quindi non è sufficiente controllare i dati sensibili quando il messaggio viene inviato. Se una persona ha accesso esterno all'email aziendale o ad altri servizi di messaggistica che supportano le bozze salvate, questa può utilizzare tale funzione per l'esfiltrazione. Salvando una bozza da dispositivi e reti con accesso a dati sensibili e quindi accedendo alla bozza da un altro client, l'utente evita i sistemi di controllo e di logging.

Prevenzione e mitigazione

Questo scenario prevede i sistemi di telecomunicazione selezionati e autorizzati dalla tua organizzazione, che offre più opzioni per proteggersi dall'esfiltrazione di dati rispetto agli scenari che coinvolgono strumenti privati o di terze parti.

Prendi in considerazione l'implementazione di alcune delle seguenti strategie di prevenzione e mitigazione:

  • Monitora il volume e la frequenza della trasmissione dei dati da parte degli utenti via email e altri strumenti di messaggistica aziendale. Se l'utente medio invia in media 5 megabyte di dati al giorno, un utente che invia 500 megabyte dovrebbe attivare un avviso.
  • Conserva un registro degli indirizzi utilizzati per inviare email, dei dispositivi dai quali sono inviate le email e degli indirizzi dei destinatari. Questi possono aiutarti a identificare la natura e l'ambito di un evento di esfiltrazione di dati. L'elenco di controllo di sicurezza per gli amministratori spiega come controllare un account email in caso di rischi per la sicurezza in Gmail Enterprise.
  • Esegui la scansione delle email inviate da sistemi con accesso a dati sensibili per garantire che non contengano contenuti non autorizzati. Ciò può essere facilitato taggando i contenuti sensibili con indicatori quali parole chiave o hash.
  • Impedisci l'invio di messaggi su canali non sicuri, ad esempio utilizzando http anziché https e avvisa il personale di sicurezza IT riguardo ai tentativi.

Download su dispositivi non sicuri

Questi casi si verificano quando un utente accede a dati sensibili attraverso canali autorizzati e quindi trasferisce i dati su un dispositivo locale non sicuro. Gli utenti possono utilizzare laptop, smartphone, unità esterne, fotocamere o dispositivi specializzati per acquisire dati sensibili per l'esfiltrazione. L'utente può scaricare i file esistenti dai servizi nel cloud oppure copiare i dati in nuovi file. Se i file vengono trasferiti su dispositivi non monitorati o non sicuri, questi sono ad alto rischio di esfiltrazione.

Prevenzione e mitigazione

Le reti basate su cloud hanno vantaggi nel prevenire questo tipo di eventi. Diversi metodi per il trasferimento di dati su un dispositivo locale richiedono una connessione fisica a supporti trasferibili. Se i dati vengono invece memorizzati nel cloud, devono essere scaricati prima di essere trasferiti. Questi download sono soggetti alle funzionalità di sicurezza e di monitoraggio del servizio di hosting e dei clienti.

Prendi in considerazione l'implementazione di alcuni di questi criteri e tecniche:

  • Proibisci il download di dati molto sensibili. A seconda di come i dati vengono utilizzati ed elaborati nel cloud, gli utenti potrebbero non aver mai bisogno di scaricarli sull'hardware locale. Se possibile, conserva tutti i dati nel cloud ed esegui tutto il calcolo nel cloud. Se i dati sono scaricabili dal punto di vista tecnico, stabilisci un criterio che vieti i download, classifica ed etichetta i dati sensibili e mantieni i log di accesso dei dati richiesti e forniti tramite interazioni protette e chiamate API. Per ulteriori informazioni, consulta la documentazione per l'audit logging.
  • Utilizza un Cloud Access Security Broker (CASB) per regolare le connessioni tra client autorizzati e servizi cloud in base ai criteri di sicurezza dell'organizzazione.
  • Includi file con strumenti DRM (Digital Rights Management). Questo assegna a ogni file crittografia e sicurezza sensibili alle autorizzazioni.
  • Implementa il watermarking dinamico nei client autorizzati per registrare l'utente responsabile di screenshot o fotografie di display di computer contenenti dati sensibili.

Caricamenti su servizi esterni

Simile alla precedente categoria di eventi, questa categoria spesso implica il download di dati sensibili sull'infrastruttura locale. L'utente quindi carica i dati su una terza parte tramite un client browser web o un altro software non monitorato. I servizi di terze parti potrebbero essere siti web apparentemente innocui come un social network, in cui l'utente potrebbe caricare accidentalmente le immagini sbagliate o incollare il testo errato. Gli utenti malintenzionati e sofisticati possono essere in grado di trasferire piccole quantità di dati sensibili, come le credenziali dell'utente o le chiavi di crittografia, come parametri URL, in applicazioni web specializzate.

Prevenzione e mitigazione

Il rischio di questo tipo di evento può essere ridotto attraverso le stesse limitazioni di criteri sui download che proteggono dalla copia locale di dati sensibili. Tuttavia, un criterio non elimina il rischio che screenshot o testo copiato vengano caricati su social media, siti web di condivisione di file o altri servizi cloud.

Le pratiche di sicurezza da considerare per combattere questo tipo di rischio includono:

  • Proibisci qualsiasi download di dati. Conserva tutti i dati nel cloud ed esegui tutto il calcolo nel cloud. I dati dovrebbero essere richiesti e gestiti da interazioni API protette e registrate. Per ulteriori informazioni, consulta la documentazione per l'audit logging.
  • Impedisci l'installazione di software di terze parti non sicuri, come app di social media o plug-in del browser non autorizzati, su dispositivi con accesso a dati sensibili.
  • Utilizza un CASB per regolare il traffico dai punti di accesso al cloud e applica i criteri di crittografia per tutti i dati trasmessi ai client.

Comportamento cloud non sicuro

L'utilizzo dei servizi cloud introduce alcune nuove categorie di rischi di esfiltrazione di dati di cui i professionisti della sicurezza IT dovrebbero essere consapevoli. Queste includono una serie di casi in cui dipendenti, utenti o amministratori utilizzano le funzionalità della suite del provider di servizi cloud in modi non sicuri. Esiste un potenziale di esfiltrazione di dati da qualsiasi utente che abbia la capacità di richiedere o modificare macchine virtuali (VM), eseguire il deployment del codice o effettuare richieste a servizi calcolo o di archiviazione cloud.

Le reti cloud hanno un frontend pubblico e la capacità di comunicare con un Internet più ampio. Proteggere e autorizzare il comportamento dei servizi in esecuzione nel cloud è essenziale per garantire la sicurezza dei dati. Gli utenti con autorizzazioni sufficienti possono avviare la trasmissione in uscita di dati sensibili, spostare dati sensibili da container sicuri a quelli meno sicuri o creare servizi cloud non autorizzati per conto di un'organizzazione.

Prevenzione e mitigazione

Mantenere un comportamento sicuro per i servizi cloud richiede autorizzazioni precise e strettamente circoscritte e un logging completo. Ove possibile, vietare agli utenti di accedere ai backend dei tuoi servizi. Per la maggior parte delle attività che un dipendente o un amministratore deve completare su una VM, esistono agenti automatici e client frontend sicuri e monitorabili. Utilizza quelli in cui è possibile limitare il numero di persone con accesso SSH diretto alle tue macchine cloud. Se possibile, esegui la scansione di tutti i dati inviati a un Internet più ampio per identificare i dati sensibili. Per le applicazioni che elaborano informazioni da utenti o sistemi esterni, prendi in considerazione di eseguire la scansione di tali informazioni per impedire la raccolta, l'archiviazione o la condivisione involontaria di dati sensibili come le informazioni personali (PII).

Per le VM nel cloud, prendi in considerazione questi principi di sicurezza:

  • Imposta le tabelle IP sulle tue VM che vietano le connessioni in uscita verso indirizzi sconosciuti. Questo può ridurre il rischio che un utente trasmetta dati sensibili al di fuori della propria rete.
  • Evita di fornire indirizzi IP pubblici alle VM e utilizza un servizio NAT (Network Address Translation) per elaborare le connessioni in entrata e in uscita. Consulta questa guida sulla configurazione di un gateway NAT per Compute Engine per ulteriori informazioni.
  • Considera l'utilizzo di un bastion host nel cloud per mediare e monitorare le connessioni ad altri host.
  • Disattiva i software di gestione remota come gli agenti Remote Desktop Protocol (RDP) o Windows Remote Management (WinRM) su macchine che non ne hanno bisogno.
  • Utilizza l'accesso privato Google per abilitare le istanze di macchine virtuali (VM) su una subnet per raggiungere servizi e API Google utilizzando un indirizzo IP interno anziché un indirizzo IP esterno.
  • Prendi in considerazione Cross-Project Networking (XPN) per condividere le reti virtuali di Google Cloud tra progetti della tua organizzazione Cloud.
  • Limita l'accesso SSH diretto alle VM alle persone con esigenze critiche e inevitabili. Google Compute Engine offre strumenti di gestione delle chiavi SSH completi per il controllo dell'accesso alle VM.

Per servizi di archiviazione cloud come Cloud Storage o Cloud Bigtable, le seguenti pratiche possono ridurre i rischi di esfiltrazione:

  • Utilizza Identity and Access Management (IAM) per fornire a utenti e applicazioni l'insieme più ristretto di autorizzazioni necessarie per accedere ai dati. Memorizza i dati con diversi requisiti di sensibilità e accesso in container diversi, per consentire alle autorizzazioni di essere il più granulare possibile.
  • Monitora e limita la frequenza con cui i dati possono essere letti dalle risorse di archiviazione. Utilizza agenti di monitoraggio per avvisare il tuo team di sicurezza in caso di tentativi di trasferimento di una quantità di dati superiore a quella prevista nel normale caso d'uso.
  • Rendi le autorizzazioni a dati molto sensibili temporanee e soggette a frequenti revisioni e revoche. Ad esempio, le quote di App Engine possono essere utili qui.
  • Chiedi a un team umano di controllare regolarmente l'insieme di persone con accesso a container molto sensibili.
  • Tieni log accurati di tutti gli accessi ai tuoi servizi di archiviazione. Idealmente, l'insieme di persone che hanno accesso ai servizi di archiviazione sarà separato dall'insieme di persone con accesso ai log. Questo riduce il rischio di manomissione dei log da parte di utenti malintenzionati. Prendi in considerazione l'utilizzo delle utility di log di accesso di Cloud Storage per scrivere i dati di log in un bucket di archiviazione separato.

Garanzia di conformità con i criteri di sicurezza

La ricca infrastruttura fornita da Google Cloud offre ai clienti diverse opportunità di sviluppo di soluzioni mirate alle loro esigenze. Allo stesso tempo, la ricca infrastruttura porta anche nuove sfide, come l'applicazione dei criteri di sicurezza desiderati tra i diversi progetti di un'organizzazione. Per semplificare la gestione della sicurezza, Google Cloud ha introdotto una gerarchia di entità in cui risiedono tutte le risorse. Questa gerarchia è radicata nel concetto di Organizzazioni. Le organizzazioni possono eventualmente contenere cartelle o progetti. Le cartelle possono contenere opzionalmente sottocartelle o progetti. Tutte le risorse del servizio Google Cloud appartengono a un progetto.

Utilizzando questa gerarchia, Organizzazione -> Cartella -> Progetto -> Servizio Google Cloud -> Risorse, i criteri di sicurezza possono essere impostati a qualsiasi livello della gerarchia e vengono ereditati ai livelli inferiori della gerarchia. I criteri di sicurezza vengono valutati dall'alto verso il basso nella gerarchia delle risorse e, non appena si ottiene una risposta di autorizzazione, viene concesso l'accesso alla risorsa.

Applicazione della conformità

L'utilizzo della gerarchia delle risorse e l'ereditarietà dei criteri di sicurezza semplificano il controllo, al fine di garantire che i criteri di sicurezza desiderati vengano rispettati in maniera uniforme. A causa della proprietà di ereditarietà, gli amministratori possono dimostrare che, ad esempio, tutti i progetti consentono allo stesso insieme di revisori di ispezionare i propri dati. Raggiungono questo obiettivo grazie a questo criterio di sicurezza a livello di Organizzazione e non lo sovrascrivono mai a un livello inferiore. Questi criteri di sicurezza sono specificati nelle attività di controllo del software e la loro verifica può essere automatizzata.

Identificazione e oscuramento dei dati sensibili

Uno dei primi passi nella gestione dei dati sensibili è conoscerne la posizione. Una volta identificati, si è più preparati per impostare il controllo dell'accesso per garantire un accesso/gestione appropriato e utilizzare tecniche per ridurre la sensibilità attraverso l'oscuramento, il mascheramento o l'anonimizzazione dei dati. Una volta che i dati sono in forma oscurata, cessano di trasmetterne la natura sensibile, come l'esistenza di un numero specifico di previdenza sociale, un numero valido di carta di credito o informazioni personali (PII).

La tradizionale sfida di oscurare grandi quantità di dati diversi è la necessità di automatizzare il riconoscimento, la classificazione e l'oscuramento appropriato. Un avanzamento è avere il supporto del sistema per ragionare sul contenuto nei campi di dati in modo automatico. Questo livello di visibilità automatica nei flussi di dati arbitrari consente alle applicazioni di decidere quali dati trasmettere a quali endpoint, quali sistemi utilizzare per archiviare i diversi tipi di dati che vengono gestiti e quando avvisare riguardo a specifici tipi di dati trasmessi.

Prevenzione e mitigazione

In Google Cloud, la DLP (Data Loss Prevention) consente di comprendere e gestire i dati sensibili. Fornisce classificazione e oscuramento rapidi e scalabili per dati sensibili come numeri di carte di credito, nomi, numeri di previdenza sociale, numeri di passaporto, numeri di patenti di guida internazionali e statunitensi e numeri di telefono. Cloud DLP supporta testo, dati strutturati e immagini: è sufficiente inviare i dati a Cloud DLP o specificare i dati archiviati sulle tue istanze Cloud Storage, BigQuery e Datastore. I risultati di Cloud DLP possono essere utilizzati per monitorare o informare automaticamente la configurazione di impostazioni IAM, localizzazione dei dati o altri criteri. Cloud DLP può anche aiutarti a oscurare o mascherare alcune parti di questi dati al fine di ridurre la sensibilità o offrire assistenza con la minimizzazione dei dati come parte di un criterio di privilegio minimo o necessità di sapere (need-to-know). Le tecniche disponibili sono il mascheramento, la crittografia con protezione del formato, la tokenizzazione e il bucketing su dati di testo strutturati o liberi.

Amministratori non autorizzati

Per impostazione predefinita, la maggior parte dei sistemi informatici garantisce un potere incontrollato agli amministratori designati. Gli amministratori malintenzionati o compromessi disporranno di autorizzazioni sufficienti per perpetrare uno degli scenari discussi in questo documento e avranno inoltre la massima capacità di cancellare i log e le prove delle loro azioni. La riduzione di questi rischi richiede la separazione dei poteri e dell'autorità su parti della rete e consente agli amministratori di controllarsi a vicenda.

Prevenzione e mitigazione

Limitare l'autorità di ogni singolo utente è essenziale per ridurre i rischi presentati da un amministratore non autorizzato.

Per svolgere le attività assegnate, gli amministratori avranno la possibilità di esfiltrare i dati, tuttavia i seguenti principi possono essere applicati per ridurre la portata e l'entità di tali eventi nel caso in cui dovessero verificarsi:

  • Proteggi una rete di grandi dimensioni contro la cattiva condotta dell'amministratore registrando le azioni degli amministratori in un luogo a cui non possono accedere. Utilizza un team di sicurezza separato per gestire i servizi di monitoraggio e logging.
  • Considera di rendere temporaneo l'accesso di tutti gli amministratori con un breve periodo di scadenza. In molte reti, gli amministratori non hanno bisogno di accesso permanente.
  • Richiedi più utenti per approvare le azioni amministrative. Trattando tutte le azioni amministrative come il codice sorgente che richiede l'approvazione, puoi ridurre i rischi presentati da un singolo utente.

Cessazione del rapporto di lavoro

Il Computer Emergency Response Team (CERT) presso il Software Engineering Institute della Carnegie Mellon University ha prodotto un documento nel 2011 che mostra che i dipendenti erano più propensi a partecipare all'esfiltrazione di dati quando hanno previsto la cessazione. Un'incombente cessazione di un rapporto di lavoro è un periodo di maggiore rischio che richiede ulteriore attenzione da parte dei team di sicurezza IT.

Prevenzione e mitigazione

Per reti con dati molto sensibili, prendi in considerazione la connessione dei sistemi di logging e monitoraggio al software HR che registra un'interruzione imminente e imposta soglie più conservative per avvisare i team di sicurezza di comportamenti anomali da parte di questi utenti.

Conclusioni

La flessibilità, i risparmi sui costi e la potenza dell'utilizzo dell'infrastruttura cloud pubblica richiedono maggiore vigilanza e nuovi approcci per proteggere i dati dall'esfiltrazione. Puoi modificare i criteri e le implementazioni dell'organizzazione per tenere conto dell'ambiente utilizzando le tecniche descritte in questo documento:

  • Ridurre al minimo il "raggio di esplosione" degli eventi di esfiltrazione di dati attraverso la compartimentazione dei dati.
  • Creare ridondanza e approvazioni nei flussi di lavoro degli amministratori di sistema per aumentare la responsabilità.
  • Utilizzare autorizzazioni granulari e concedere l'accesso ai dati sensibili solo a coloro la cui qualifica lo richiede.
  • Utilizzare il logging per aumentare la trasparenza nell'accesso e nello spostamento dei dati nella tua organizzazione.
  • Limita e monitora il traffico in entrata e in uscita verso le macchine dell'organizzazione utilizzando regole di networking, gestione di identità e accessi (IAM) e bastion host.
  • Creare una baseline dei normali flussi di dati, come le quantità di dati a cui si accede o trasferiti, e le posizioni geografiche di accesso rispetto alle quali confrontare i comportamenti anomali.

Passaggi successivi