Panoramica
Il computing confidenziale protegge i dati creando ambienti di carichi di lavoro isolati che operano in maniera indipendente dal sistema host per impedire che software o amministratori di sistema con privilegi possano accedere ai dati archiviati in un'enclave sicura. Il computing confidenziale colma una grave lacuna nella sicurezza dei dati, proteggendoli mentre sono in uso,
ovvero quando possono trovarsi a rischio perché esposti a minacce interne, per quanto stringenti i sistemi di controllo possano essere. Ad esempio, la crittografia protegge i dati inattivi, ma perché il sistema possa utilizzarli servono chiavi di decifratura nella memoria, che vengono potenzialmente esposte a chiunque abbia accesso, fisico o virtuale. Il computing confidenziale risolve questa vulnerabilità. Offre inoltre protezione in ambienti che includono infrastrutture condivise e multitenant o in quei contesti in cui occorre condividere set di dati con un'organizzazione partner senza compromettere informazioni sensibili.
Il computing confidenziale si avvale di ambienti di esecuzione affidabili (Trusted Execution Environment, TEE), ovvero enclave sicure in cui il codice viene eseguito protetto dall'host, che evitano le modifiche e gli accessi non autorizzati ad applicazioni e dati, anche quando sono in esecuzione, e mantengono i dati riservati e protetti dalle manomissioni, anche se eseguiti in ambienti cloud. Il Confidential Computing Consortium (CCC) definisce un TEE come un "ambiente che garantisce confidenzialità e integrità dei dati e integrità del codice". Tale sistema si basa su una radice di attendibilità hardware.
Come funziona il computing confidenziale?
A livello di hardware, la memoria viene partizionata fisicamente, affinché un'applicazione possa essere eseguita nella propria enclave (ossia il TEE), che funge da scatola nera e contiene una chiave di crittografia condivisa solo con il programma autorizzato. Il TEE consente solo al programma autorizzato di decrittare le informazioni utilizzate al suo interno, perché possa eseguire i processi necessari, senza che la chiave venga condivisa con altre componenti, proteggendo così le informazioni sensibili, che non vengono rivelate a potenziale aggressori, né esposte a minacce interne o comunicate a partner che non hanno la necessità di accedere.
Di seguito alcuni aspetti fondamentali del computing confidenziale:
- Protezione dalle minacce interne. Il codice e i dati sensibili sono protetti dalle intrusioni di utenti con privilegi, come provider cloud e amministratori dell'infrastruttura, che potrebbero altrimenti avere accesso all'hardware o al software alla base. Anche se l'infrastruttura alla base viene compromessa, i dati all'interno del TEE rimangono comunque protetti.
- Isolamento a livello di hardware. La riservatezza viene applicata a livello di hardware, spesso tramite CPU e memorie crittografate, per garantire l'affidabilità dei TEE.
- Attestazione remota. L'attestazione remota consente a un verificatore di confermare con crittografia che un sistema remoto stia eseguendo software affidabile all'interno di un TEE hardware sicuro, prima di inviare le informazioni sensibili da utilizzare.
- Macchine virtuali riservate. Molte soluzioni di computing confidenziale si avvalgono di macchine virtuali riservate (CVM) che, eseguite all'interno di un TEE, fungono da base sicura in cui distribuire i carichi di lavoro riservati ed evitano che entità non autorizzate abbiano accesso o visualizzino le attività all'interno del TEE.
Migliora la sicurezza e la conformità
Confronto con altri approcci che migliorano la privacy
Gli approcci tradizionali alla privacy dei dati spesso prevedono di affidarsi completamente allo stack dell'infrastruttura e al sistema operativo host del provider cloud, mentre il computing confidenziale protegge i dati creando ambienti di carichi di lavoro isolati che operano in maniera indipendente dal sistema host. Gli approcci alla sicurezza convenzionali possono includere verifiche dell'integrità, ma l'attestazione tramite computing confidenziale consente ai dati sensibili di essere eseguiti solo in condizioni e in ambienti verificati.
Il computing confidenziale colma le mancanze dei metodi di crittografia tradizionali per i dati, quando questi si trovano in un contesto di massima vulnerabilità, ossia quando sono in uso. A differenza dei metodi di protezione basati sul software, i TEE offrono un isolamento hardware che impedisce ad amministratori di sistema o software di accedere ai dati contenuti in un'enclave sicura.
Vantaggi e sfide
Il computing confidenziale offre una protezione dei dati migliorata, privacy a livello di runtime e la possibilità di eseguire informazioni sensibili in sicurezza, ma anche una maggiore integrità dei dati e del codice, in particolare con funzionalità TEE come la crittografia dei dati in uso e protezione a livello di runtime. Il computing confidenziale consente inoltre alle organizzazioni di raggiungere la conformità normativa, di soddisfare le norme che disciplinano la privacy dei dati e di garantire la crittografia degli utenti finali. Offre inoltre alle organizzazioni una modalità più sicura di collaborare, in modo che possano mantenere il proprio vantaggio competitivo e semplificare la migrazione al cloud.
Tuttavia il computing confidenziale presenta anche delle difficoltà, come l'aumento delle prestazioni, il sovraccarico nelle comunicazioni o problemi di compatibilità, in cui hardware specializzato o applicazioni riprogettate aggiungono ulteriori livelli di complessità. Il computing confidenziale può inoltre limitare la scalabilità e richiedere considerazioni aggiuntive sulla sicurezza in ambienti multicloud, in cui diverse componenti necessitano di accesso root, compromettendo queste enclave sicure.
Il computing confidenziale rafforza privacy e protezione dei dati, specialmente in risposta agli avanzamenti in ambito di IA e cloud computing, dove sono continuamente richiesti nuovi strumenti di protezione nei servizi di cloud pubblici. Parallelamente all’evoluzione e al costante aggiornamento delle linee guida e degli standard di settore (in base alle indicazioni di CCC e dell'Everest Group), in particolare per quanto riguarda la protezione di input/output sicuri (secure I/O) e i meccanismi di attestazione, cresce anche la diffusione del computing confidenziale, che diventerà sempre più parte integrante dell'infrastruttura cloud.
Scenari di utilizzo
Il computing confidenziale risolve diverse problematiche legate alla sicurezza delle chiavi, adattandosi a svariati scenari di utilizzo:
Riduzione delle minacce interne
Il computing confidenziale protegge codice e dati sensibili da utenti con privilegi e sistemi host che, tramite l'organizzazione, avrebbero altrimenti accesso all'hardware alla base o all'infrastruttura software, come provider cloud, amministratori dell'infrastruttura o anche del cluster.
Adempimento dei requisiti di sicurezza e conformità
Nei settori altamente regolamentati, come quello sanitario, governativo o dei servizi finanziari e assicurativi, il computing confidenziale consente la massima conformità normativa, tra cui il regolamento generale sulla protezione dei dati (GDPR), lo standard PCI-DSS (Payment Card Industry Data Security Standard), la legge statunitense sulla portabilità e sulla responsabilità dell’assicurazione sanitaria (HIPAA), il regolamento europeo sulla resilienza operativa digitale (DORA), la direttiva europea sulla sicurezza delle reti e dei sistemi informativi 2 (NIS2) e il regolamento europeo sulla resilienza informatica dei prodotti con elementi digitali (CRA).
Protezione per proprietà intellettuale e modelli IA
Il computing confidenziale è fondamentale per salvaguardare proprietà intellettuale e logica di business proprietaria, modelli IA, set di dati per l'addestramento e dati utenti sensibili durante l'elaborazione (che si tratti di addestramento e di inferenza). Protegge infatti queste importanti risorse da accessi non autorizzati, iniezione di prompt, divulgazione di informazioni sensibili, furto di modelli e model poisoning, anche in ambienti controllati da clienti o partner. Il computing confidenziale consente di condividere informazioni con un'altra parte, senza dover esporre la proprietà intellettuale.
Supporto per un'infrastruttura multitenant e condivisa
Fornendo isolamento in ambienti cloud multitenant e condivisi, il computing confidenziale protegge da attacchi fra tenant, consentendo che i dati o i segreti su uno non siano accessibili ad altri che condividono lo stesso hardware alla base.
Sicurezza della catena di distribuzione del software migliorata e approccio Zero Trust
Il computing confidenziale supporta le pratiche DevOps occupandosi di determinati processi:
- Isola la pipeline di integrazione e distribuzione continue (CI/CD).
- Protegge il codice e i dati dagli utenti amministratori.
- Garantisce l'integrità degli artefatti che usano chiavi per l'attestazione.
Ma può anche essere un componente chiave per la sicurezza zero trust, poiché migliora i controlli di sicurezza basati su TEE e la protezione del cloud pubblico.
Supporto per l'edge computing
Il computing confidenziale protegge dati e carichi di lavoro all'edge, anche quando sono integrati con servizi cloud. Le informazioni sensibili e i processi che le gestiscono sono quindi più sicuri, sia che si trovino interamente su un dispositivo edge, sia che interagiscano con un'infrastruttura cloud centrale. Questo tipo di protezione è fondamentale per l'edge computing, dove i dispositivi spesso risiedono in ambienti meno controllati e possono essere più esposti ad attacchi fisici o accessi non autorizzati.
Adozione del cloud e del cloud ibrido
Le organizzazioni possono eseguire in sicurezza la migrazione dei carichi di lavoro sensibili in ambienti di cloud pubblico, privato e ibrido, perché il computing confidenziale rimuove tutti gli ostacoli che ne impediscono l'adozione. Le soluzioni offerte sono:
- Cloudbursting sicuro. La sicurezza on premise viene estesa al cloud pubblico per i carichi di lavoro più impegnativi o per risorse specializzate (come GPU), senza compromettere sicurezza o conformità normativa.
- Spazi sicuri per i dati e collaborazione fra partner. L’accesso ai dati sensibili è consentito a più parti senza che vengano esposte informazioni proprietarie individuali, ottenendo così collaborazione senza che i dati siano compromessi.
- Sovranità digitale. Offre i mezzi per trasferire i carichi di lavoro fra i diversi provider cloud o sistemi on premise senza compromettere la sicurezza dei dati.
Il ruolo di Red Hat
Red Hat supporta il computing confidenziale con soluzioni e tecnologie che migliorano la sicurezza dei dati nel cloud, on premise e all'edge.
I container sandbox Red Hat® OpenShift®, basati sul progetto Kata Containers, possono eseguire container confidenziali. I container confidenziali standardizzano il computing confidenziale a livello di pod e ne semplificano l'implementazione negli ambienti Kubernetes. Gli utenti possono quindi distribuire carichi di lavoro riservati utilizzando flussi di lavoro e strumenti che già conoscono, anche senza avere grande familiarità con il TEE alla base. Disponibili dalla versione dei container sandbox Red Hat OpenShift 1.10, i container confidenziali usano un'enclave hardware isolata che protegge i dati e il codice dagli utenti con privilegi, come gli amministratori del cloud o del cluster. Proteggono l'integrità dei dischi CVM, l'inizializzazione dei carichi di lavoro e i segreti disponibili all'interno del TEE solo dopo la verifica.
Il progetto Confidential Clusters integra la tecnologia di computing confidenziale nei cluster Kubernetes, perché consente a tutti i nodi Red Hat OpenShift di operare all'interno di CVM. Grazie a questo approccio è possibile proteggere tutti i container nel cluster realizzando un modello affidabile, che sbarra l’accesso ai provider cloud, ma non agli amministratori dei cluster.
Utilizzando Red Hat Enterprise Linux® per le CVM, puoi aggiungere una vasta gamma di vendor hardware TEE ed eseguirli in ambienti on premise o cloud, evitando il vendor lock-in. Con le CVM, lo storage root viene crittografato automaticamente all'avvio, senza che siano necessari provider di storage di terze parti e sono rese a tua disposizione tutte le misurazioni necessarie a integrare servizi di attestazione.
La Red Hat build of Trustee è un servizio che conferma l'affidabilità del computing confidenziale e verifica l'attendibilità dei TEE prima che vengano eseguiti determinati carichi di lavoro o che vengano trasmessi dati sensibili. Offre segreti per carichi di lavoro autenticati all'interno del TEE, che si integrano con servizi di attestazione esterni e fungono da base di supporto per le tecnologie TEE. Supporta inoltre distribuzioni gerarchiche per l'elaborazione multicloud e ibrida scalabile mantenendo la gestione centralizzata.
Red Hat collabora con un ampio ecosistema di partner, come NVIDIA, AMD e Intel, per supportare il computing confidenziale. Red Hat e NVIDIA collaborano per offrire GPU riservate e carichi di lavoro per intelligenza artificiale e machine learning (AI/ML) affidabili, addestramento e inferenza compresi, e che vengono eseguiti in modo protetto, per migliorare le prestazioni all'interno di container riservati. Il processo di attestazione copre software e hardware CPU e GPU prima del rilascio delle chiavi di crittografia.
Red Hat collabora inoltre con i suoi partner per creare TEE in cui non siano possibili modifiche e accessi non autorizzati ad applicazioni e dati, anche quando vengono usati dalla memoria. La riservatezza viene implementata a livello di hardware, spesso utilizzando CPU e memorie crittografate. Di seguito alcune piattaforme hardware che supportano queste tecnologie:
- AMD Secure Encrypted Virtualization-Secure Nested Paging (SEV-SNP).
- Intel Trust Domain Extensions (TDX).
- IBM Secure Execution for Linux (SEL).
- Power Protected Execution Facility (PEF).
- ARM Confidential Compute Architecture (CCA).
Red Hat e i suoi partner ti offrono molte opzioni che ti permettono di sfruttare appieno i benefici del computing confidenziale e della protezione avanzata dei dati in ambienti cloud native moderni.
Container riservati su Microsoft Azure con Red Hat OpenShift sandboxed containers 1.10 e Red Hat Build of Trustee
È stata rilasciata la versione 1.10 di Red Hat OpenShift sandboxed containers, che offre funzionalità di sicurezza e isolamento avanzate ai tuoi ambienti Red Hat OpenShift.