FPGA Pentimento: Un Rischio Sicuro Nascosto
I dati vecchi nelle FPGA possono rappresentare seri rischi per la sicurezza nel cloud computing.
― 6 leggere min
Indice
Le Field Programmable Gate Arrays (FPGA) sono chip specializzati che possono essere programmati per svolgere vari compiti. Sono molto usati nel cloud computing per la loro capacità di eseguire calcoli complessi in modo efficiente e a costo inferiore rispetto all'hardware tradizionale. Molti fornitori di servizi cloud, come Amazon e Microsoft, offrono FPGA per uso on-demand, rendendoli accessibili a imprese e ricercatori.
Sebbene gli FPGA offrano numerosi vantaggi, presentano anche alcuni rischi. Uno di questi rischi riguarda la sicurezza. Questo è particolarmente vero quando questi chip sono utilizzati in ambienti cloud, dove più utenti possono accedere allo stesso hardware nel tempo.
Che cos'è il Pentimento FPGA?
Il "pentimento" si riferisce alle tracce di strati precedenti in un dipinto che possono ancora essere viste, anche dopo che l'artista li ha dipinti sopra. Allo stesso modo, nel contesto degli FPGA, il pentimento descrive vecchi dati o design che possono ancora essere accessibili anche dopo essere stati cancellati. Questo accade a causa di un fenomeno noto come instabilità della temperatura di bias (BTI), che colpisce i transistor negli FPGA.
Quando un design gira su un FPGA per un po', i transistor possono acquisire caratteristiche basate sui dati che hanno elaborato. Anche dopo che il design è stato rimosso, alcune di queste informazioni possono rimanere. Questi dati residui possono costituire un rischio per la sicurezza, poiché un attore malevolo potrebbe recuperare Informazioni sensibili che erano una volta memorizzate sull'FPGA.
Come funziona il BTI?
Il BTI è un tipo di usura che si verifica nella tecnologia dei transistor. I transistor sono i mattoni degli FPGA, e col passare del tempo, possono degradarsi in prestazioni in base a come sono stati utilizzati. Quando un valore specifico è mantenuto su un transistor per un lungo periodo, può influenzare quanto velocemente o lentamente opera quando il valore cambia in futuro.
Gli effetti del BTI possono rendere possibile dedurre quali dati erano precedentemente memorizzati sull'FPGA. Misurando la velocità di questi transistor durante un processo noto come recupero, un attaccante può decifrare quali valori erano stati mantenuti prima che l'FPGA venisse cancellato.
La minaccia alla sicurezza
Le preoccupazioni riguardo al pentimento FPGA nascono principalmente dalla sicurezza dei dati. Se un attaccante riesce ad accedere a un FPGA che era stato usato in precedenza da qualcun altro, potrebbe recuperare informazioni sensibili che l'utente originale pensava fossero state cancellate. Questo è particolarmente pericoloso negli ambienti cloud, dove gli utenti spesso si affidano alla garanzia del fornitore di servizi che i loro dati siano sicuri e completamente cancellati.
Ci sono due principali tipi di dati che potrebbero essere a rischio:
- Tipo A Dati: Queste sono informazioni riservate incorporate nel design dell'FPGA. Ad esempio, chiavi crittografiche che aiutano a proteggere i dati degli utenti.
- Tipo B Dati: Questo tipo si riferisce alle informazioni caricate sull'FPGA durante il suo funzionamento. Potrebbe includere calcoli sensibili o dati degli utenti.
Un attaccante potrebbe potenzialmente recuperare queste informazioni monitorando il tempo e il comportamento dell'FPGA dopo che il design originale è stato rimosso.
Come funzionano gli attacchi?
Il processo di attacco generalmente segue diversi passaggi:
- Impostazione Iniziale: L'attaccante noleggia un'istanza FPGA su un servizio cloud e carica il proprio design su di essa.
- Induzione degli Effetti BTI: Eseguono il loro design per un certo periodo per indurre effetti BTI sui transistor dell'FPGA. Questo significa che il chip inizierà a mostrare segni di "memoria" da utilizzi precedenti.
- Misurazione degli Effetti: Una volta che l'attaccante ha indotto questi effetti, può misurare come i transistor rispondono a diversi input per determinare quali valori erano precedentemente memorizzati.
- Recupero Dati: Analizzando il comportamento temporale dei transistor, l'attaccante può dedurre i dati sensibili che erano una volta memorizzati sull'FPGA.
Implicazioni nel mondo reale
La capacità di recuperare il pentimento rappresenta un serio rischio per le industrie che fanno affidamento sul cloud computing per operazioni sensibili, come finanza, sanità e telecomunicazioni. Le aziende che usano FPGA nel cloud devono essere consapevoli del potenziale di perdita di dati attraverso questo metodo.
In parole semplici, se un fornitore cloud non cancella adeguatamente un FPGA (cosa che di solito affermano di fare), informazioni sensibili potrebbero essere involontariamente esposte a futuri utenti dello stesso hardware. Questo mette in evidenza la necessità di misure di sicurezza migliorate nelle offerte di FPGA nel cloud.
Strategie di mitigazione
Mitigazione da parte degli utenti
Gli utenti di FPGA nel cloud possono compiere diverse azioni per ridurre il rischio:
Limitare la Persistenza dei Dati: Evitare di mantenere dati sensibili sull'FPGA per lunghi periodi. Se i dati devono essere memorizzati, considerare di cambiarli periodicamente per prevenire l'insediamento degli effetti BTI.
Utilizzare Percorsi più Brevi: Quando si progettano applicazioni per FPGA, mantenere i percorsi che i dati percorrono il più brevi possibile può ridurre la probabilità di osservare effetti BTI.
Caricamento Dati Randomizzati: Invece di leggere o scrivere costantemente gli stessi valori, utilizzare valori casuali che cambiano frequentemente per limitare l'accumulo di "memoria" dei dati.
Mitigazione da parte del fornitore
I fornitori di servizi cloud possono anche migliorare le loro misure di sicurezza:
Procedure di Cancellazione Migliorate: Assicurarsi che siano in atto processi di cancellazione più approfonditi e convalidare regolarmente la loro efficacia.
Ritardo tra i Noleggi: Implementare i necessari ritardi temporali tra gli utenti che noleggiano lo stesso FPGA per mitigare il recupero potenziale degli effetti BTI da parte di nuovi utenti.
Mitigazione da parte del produttore
Anche i produttori di FPGA possono svolgere un ruolo nella mitigazione di questo problema:
Migliorare la tecnologia dei transistor: Sviluppare design di transistor migliori che siano meno soggetti agli effetti BTI.
Introdurre Meccanismi di Refresh: Creare meccanismi integrati all'interno degli FPGA che aggiornano lo stato dei transistor a intervalli regolari.
Conclusione
Il fenomeno del pentimento FPGA rappresenta una seria preoccupazione per la sicurezza negli ambienti di cloud computing. Man mano che le aziende si affidano sempre di più ai servizi cloud per operazioni sensibili, questo problema deve essere affrontato.
Comprendendo i rischi posti dagli effetti BTI e adottando misure di mitigazione appropriate, utenti, fornitori e produttori possono collaborare per proteggere i dati sensibili e mantenere la fiducia nelle offerte FPGA nel cloud.
La cosa importante è che tutti nell'ecosistema devono assumersi la responsabilità di garantire la sicurezza dei dati memorizzati negli FPGA. Questa minaccia sottolinea l'importanza di una vigilanza continua e di un'adattamento di fronte alle tecnologie in evoluzione e ai metodi di attacco.
Titolo: Pentimento: Data Remanence in Cloud FPGAs
Estratto: Cloud FPGAs strike an alluring balance between computational efficiency, energy efficiency, and cost. It is the flexibility of the FPGA architecture that enables these benefits, but that very same flexibility that exposes new security vulnerabilities. We show that a remote attacker can recover "FPGA pentimenti" - long-removed secret data belonging to a prior user of a cloud FPGA. The sensitive data constituting an FPGA pentimento is an analog imprint from bias temperature instability (BTI) effects on the underlying transistors. We demonstrate how this slight degradation can be measured using a time-to-digital (TDC) converter when an adversary programs one into the target cloud FPGA. This technique allows an attacker to ascertain previously safe information on cloud FPGAs, even after it is no longer explicitly present. Notably, it can allow an attacker who knows a non-secret "skeleton" (the physical structure, but not the contents) of the victim's design to (1) extract proprietary details from an encrypted FPGA design image available on the AWS marketplace and (2) recover data loaded at runtime by a previous user of a cloud FPGA using a known design. Our experiments show that BTI degradation (burn-in) and recovery are measurable and constitute a security threat to commercial cloud FPGAs.
Autori: Colin Drewes, Olivia Weng, Andres Meza, Alric Althoff, David Kohlbrenner, Ryan Kastner, Dustin Richmond
Ultimo aggiornamento: 2023-03-31 00:00:00
Lingua: English
URL di origine: https://arxiv.org/abs/2303.17881
Fonte PDF: https://arxiv.org/pdf/2303.17881
Licenza: https://creativecommons.org/licenses/by/4.0/
Modifiche: Questa sintesi è stata creata con l'assistenza di AI e potrebbe presentare delle imprecisioni. Per informazioni accurate, consultare i documenti originali collegati qui.
Si ringrazia arxiv per l'utilizzo della sua interoperabilità ad accesso aperto.