Una guida introduttiva e un case study su Google Cloud

Unisciti a me nell’esplorazione di Cloud Cryptography, dei suoi tipi e dell’implementazione di Google Cloud.

Un sottoinsieme di IaaS, il cloud computing è piuttosto in anticipo rispetto alla fase delle parole d’ordine. È una forza dominante con individui, aziende e governi che utilizzano i servizi cloud per ridurre i problemi di uno stack tecnologico in sede.

Il cloud è l’epitome di praticità, economia e scalabilità.

In parole povere, il cloud computing è quando prendi in prestito risorse di elaborazione come storage, RAM, CPU, ecc., su Internet senza ospitare fisicamente nulla.

Un esempio di vita quotidiana è Google Drive o Yahoo Mail. Affidiamo a queste aziende i dati, a volte informazioni personali o aziendali sensibili.

In genere, un utente medio non si preoccupa della privacy o della sicurezza del cloud computing. Ma chiunque sia adeguatamente informato sulla storia della sorveglianza o degli attuali sofisticati attacchi informatici deve alzare la guardia o almeno essere informato sulla situazione in corso.

Cos’è la crittografia cloud?

La crittografia cloud affronta questo senso di insicurezza crittografando i dati archiviati nel cloud per impedire l’accesso non autorizzato.

La crittografia è una tecnica di utilizzo di un cifrario (algoritmo) per convertire le informazioni standard in una versione criptata. In tal caso, l’attaccante non darà un senso ai dettagli anche se viene smascherato.

Esistono vari tipi di crittografia in base al caso d’uso. Quindi è importante utilizzare un codice di qualità per la crittografia dei dati cloud.

Ad esempio, puoi capire il seguente testo:

Iggmhnctg rtqfwegu jkij-swcnkva vgejpqnqia & hkpcpeg ctvkengu, ocmgu vqqnu, cpf CRKu vq jgnr dwukpguugu cpf rgqrng itqy.

No!

Potrebbe essere un enigma per un cervello umano, ma usa qualsiasi decoder Caesar e lo spezzeranno in pochi secondi:

Anche qualcuno esperto del cifrario di Cesare può vedere che tutte le lettere nel testo cifrato sono due alfabeti in anticipo rispetto alle loro controparti in chiaro.

Quindi il punto è usare un cifrario forte, come quello di AES-256.

Come funziona la crittografia cloud?

Le ultime righe della sezione precedente potrebbero aver dato l’impressione che sceglierai un codice per crittografare i dati.

Tecnicamente, può funzionare così. Ma normalmente, il provider di servizi cloud abilita la crittografia nativa, oppure utilizzi la crittografia come servizio di terze parti.

Quindi lo divideremo in due categorie e vedremo l’implementazione.

# 1. Crittografia su piattaforma Cloud

Questo è il metodo più semplicistico in cui il rinomato provider di servizi cloud si occupa della crittografia.

Idealmente, questo si applica a:

Dati a riposo

Questo è quando i dati vengono archiviati in forma crittografata prima del trasferimento ai contenitori di archiviazione o successivamente.

Poiché la crittografia cloud è un approccio nuovo, non esiste un modo predefinito di fare le cose. Esistono molte pubblicazioni di ricerca che testano vari metodi, ma ciò che è cruciale è l’applicazione nella vita reale.

Quindi, in che modo un’azienda di infrastrutture cloud di prim’ordine come Google Cloud protegge i dati inattivi?

Come per record di Google, dividono i dati in piccoli gruppi di pochi gigabyte distribuiti nei loro contenitori di archiviazione su macchine diverse. Qualsiasi contenitore specifico può contenere dati degli stessi utenti o di utenti diversi.

Inoltre, ogni pacchetto viene crittografato individualmente, anche se si trovano nello stesso contenitore e appartengono a un singolo utente. Ciò significa che se la chiave di crittografia relativa a un pacchetto viene compromessa, gli altri file rimarranno al sicuro.

Fonte: Google Cloud

Inoltre, la chiave di crittografia viene modificata ad ogni aggiornamento dei dati.

I dati a questo livello di archiviazione vengono crittografati con AES-256, ad eccezione di alcuni dischi permanenti creati prima del 2015 utilizzando la crittografia AES-128 bit.

Quindi questo è il primo livello di crittografia, a livello di singolo pacchetto.

Successivamente, le unità disco rigido (HDD) o le unità a stato solido (SSD) che ospitano questi blocchi di dati vengono crittografate con un altro livello di crittografia AES-256 bit, con alcuni HHD legacy che utilizzano ancora AES-128. Tieni presente che le chiavi di crittografia a livello di dispositivo sono diverse dalla crittografia a livello di archiviazione.

Ora tutte queste chiavi di crittografia dei dati (DEK) vengono ulteriormente crittografate con chiavi di crittografia della chiave (KEK), che vengono quindi gestite centralmente dal servizio di gestione delle chiavi (KMS) di Google. In particolare, tutte le KEK utilizzano la crittografia AES-256/AES-128 bit e almeno una KEK è associata a ciascun servizio cloud di Google.

Queste KEK vengono ruotate almeno una volta ogni 90 giorni utilizzando la libreria crittografica comune di Google.

Viene eseguito il backup di ogni KEK, tracciata ogni volta che qualcuno la utilizza e l’accesso è consentito solo al personale autorizzato.

Successivamente, tutte le KEK vengono nuovamente crittografate con la crittografia AES-256 bit che genera la chiave master KMS archiviata in un’altra struttura di gestione delle chiavi, denominata Root KMS, che memorizza una manciata di tali chiavi.

Questo Root KMS è gestito su macchine dedicate in ogni data center di Google Cloud.

Ora, questo KMS radice è crittografato con AES-256, creando un’unica chiave master KMS radice archiviata nell’infrastruttura peer-to-peer.

Un’istanza del servizio di gestione delle chiavi radice viene eseguita su ogni distributore di chiavi master del servizio di gestione delle chiavi radice che detiene la chiave nella memoria ad accesso casuale.

Ogni nuova istanza del distributore di chiavi master del KMS radice viene approvata dalle istanze già in esecuzione per evitare il gioco scorretto.

Inoltre, per gestire la condizione in cui tutte le istanze del distributore devono essere avviate contemporaneamente, viene eseguito il backup della chiave principale del KMS anche in due sole posizioni fisiche.

E infine, meno di 20 dipendenti di Google hanno accesso a queste località altamente classificate.

Ecco come Google pratica la crittografia cloud per i dati inattivi.

Ma se vuoi prendere in mano la situazione, puoi anche gestire tu stesso le chiavi. In alternativa, è possibile aggiungere un altro livello di crittografia su questo e autogestire le chiavi. Tuttavia, dovresti ricordare che perdere queste chiavi significa anche essere bloccato fuori dal tuo progetto web.

Tuttavia, non dovremmo aspettarci questo livello di dettaglio da tutti gli altri fornitori di servizi cloud. Poiché Google addebita un sovrapprezzo per i suoi servizi, potresti beneficiare di un provider diverso che costa meno ma si adatta al tuo modello di minaccia specifico.

Dati in transito

È qui che i dati viaggiano all’interno del data center del provider cloud o al di fuori dei suoi confini, ad esempio quando li carichi dal tuo computer.

Ancora una volta, non esiste un modo rigido per proteggere i dati in transito, quindi vedremo l’implementazione del cloud di Google.

Il white paper al riguardo, crittografia in transitoindica tre misure per proteggere i dati non stazionari: autenticazione, crittografia e controllo dell’integrità.

All’interno del suo data center, Google protegge i dati in transito tramite l’autenticazione dell’endpoint e la conferma dell’integrità con crittografia opzionale.

Mentre un utente può optare per misure aggiuntive, Google conferma la massima sicurezza nei suoi locali con un accesso estremamente monitorato concesso ad alcuni dei suoi dipendenti.

Al di fuori dei suoi limiti fisici, Google adotta una politica differenziale per i propri servizi cloud (come Google Drive) e qualsiasi applicazione del cliente ospitata sul proprio cloud (come qualsiasi sito Web in esecuzione sul proprio motore di calcolo).

Nel primo caso, tutto il traffico va prima al checkpoint noto come Google Front End (GFE) utilizzando Transport Layer Security (TLS). Successivamente, il traffico ottiene la mitigazione degli DDoS, il bilanciamento del carico sui server e viene infine indirizzato al servizio Google Cloud previsto.

Nel secondo caso, la responsabilità di garantire la sicurezza dei dati in transito ricade principalmente sul proprietario dell’infrastruttura, a meno che non utilizzi un altro servizio Google (come il suo Cloud VPN) per il trasferimento dei dati.

Generalmente, TLS viene adottato per assicurarsi che i dati non siano stati manomessi durante il percorso. Questo è lo stesso protocollo utilizzato per impostazione predefinita quando ci si connette a qualsiasi sito Web tramite HTTPS, simboleggiato dall’icona di un lucchetto nella barra degli URL.

Sebbene sia comunemente utilizzato in tutti i browser Web, puoi anche applicarlo ad altre applicazioni come e-mail, chiamate audio/video, messaggistica istantanea, ecc.

Tuttavia, per gli standard di crittografia più avanzati, esistono reti private virtuali che forniscono ancora più livelli di sicurezza con cifrature di crittografia avanzate come AES-256.

Ma implementare la crittografia cloud da soli è difficile, il che ci porta a…

#2. Crittografia come servizio

È qui che i protocolli di sicurezza predefiniti sulla tua piattaforma cloud sono deboli o assenti per casi d’uso specifici.

Una delle soluzioni ovviamente migliori è supervisionare tutto da soli e garantire una sicurezza dei dati di livello aziendale. Ma questo è più facile a dirsi che a farsi e toglie l’approccio senza problemi per il quale qualcuno opta per il cloud computing.

Questo ci lascia usare Encryption-as-a-service (EAAS) come CloudHesive. Simile all’utilizzo del cloud computing, questa volta prendi in prestito la crittografia e non CPU, RAM, spazio di archiviazione, ecc.

In base al provider EAAS, puoi avvalerti della crittografia per i dati inattivi e in transito.

Vantaggi e svantaggi della crittografia cloud

Il vantaggio più pronunciato è la sicurezza. La pratica della crittografia cloud garantisce che i dati dei tuoi utenti rimangano lontani dai criminali informatici.

Sebbene la crittografia cloud non possa fermare ogni hack, si tratta di fare la tua parte e avere una giustificazione adeguata se le cose vanno male.

Venendo agli svantaggi, il primo è il costo e il tempo necessari per aggiornare il framework di sicurezza esistente. Inoltre, c’è poco che può aiutare se si perde l’accesso alle chiavi di crittografia durante l’autogestione.

E poiché si tratta di una tecnologia nascente, anche trovare un EAAS collaudato nel tempo non è facile.

In conclusione, la soluzione migliore è utilizzare un rinomato provider di servizi cloud e fare affidamento su meccanismi crittografici nativi.

Avvolgendo

Ci auguriamo che questo possa darti un’idea della crittografia cloud. Per riassumere, si tratta di sicurezza dei dati relativa al cloud, anche quando viaggia all’esterno.

La maggior parte delle migliori società di infrastrutture cloud come Google Cloud, Amazon Web Services, ecc., dispone di una sicurezza adeguata per i casi d’uso massimi. Tuttavia, non c’è nulla di male nel passare attraverso il gergo tecnico prima di ospitare le tue applicazioni mission-critical con chiunque.

PS: dai un’occhiata ad alcune soluzioni di ottimizzazione dei costi del cloud per AWS, Google Cloud, Azure, ecc.