FPGA a prova di attacchi informatici

I dispositivi programmabili di nuova generazione adottano una strategia a più livelli per contrastare minacce informatiche in costante evoluzione

Pubblicato il 24 febbraio 2017

Il continuo aumento, in termini di dimensioni e complessità, di Internet of Things (IoT), comporta la necessità di adottare misure di sicurezza sempre più avanzate e proattive, ovvero in grado di “percepire” in anticipo l’insorgere di eventuali problemi. Per affrontare le minacce informatiche non è più sufficiente affidare la sicurezza solamente al software.

Un approccio molto più efficiente prevede l’impiego di una strategia “a strati” inaugurata da una nuova generazione di SoC (System-on-Chip) FPGA in grado di fornire una “root-of-trust” (RoT) hardware a livello di circuito integrato. A partire da questa base è possibile implementare una soluzione scalabile che prevede una selezione oculata di ulteriori elementi per la protezione contro i rischi come ad esempio la sicurezza per i dati nei loro tre stati – in transito (data-in-motion), in fase di elaborazione o in uso (data-in-use) e residenti su supporti di memorizzazione (data-at-rest) – oltre alla crittografia e alla protezione tramite software.

L’odierna infrastruttura di rete nel suo complesso è più che mai vulnerabile agli attacchi, il che si traduce in un incremento delle problematiche legate alla sicurezza. il numero di dispositivi IoT connessi cresce a ritmi esponenziali, con conseguente aumento dei rischi per i sistemi embedded e i dispositivi hardware. L’infrastruttura di rete e i sistemi informativi devono essere tutelati adottando un livello di sicurezza adeguato e implementando metodologie di protezione proattive ottimizzate in base a numero, frequenza e tipologie di minacce.

figura_1

Fig. 1 – Per ottenere il più elevato livello di sicurezza possibile è necessario ricorrere a un approccio a più livelli che preveda l’utilizzo di hardware sicuro e garantisca sicurezza sia del progetto sia dei dati

Un approccio a più livelli

L’approccio alla sicurezza deve essere di tipo scalabile e iniziare con una “root of trust” hardware a livello di circuito integrato. Oltre a ciò è necessario ricorrere ad altre tecnologie ed elementi di supporto per proteggere l’hardware, rafforzare la sicurezza del progetto e garantire la sicurezza dei dati.

Il primo insieme di tecnologie e di elementi di supporto è destinato alla sicurezza delle informazioni, implementata attraverso la memorizzazione della chiave mediante la tecnologia PUF (Physically Unclonable Function, che può essere assimilata alla firma biometrica), gli acceleratori crittografici avanzati e le contromisure contro attacchi condotti mediante tecniche DPA (Differential Power Analysis), disponibili attraverso un trasferimento della licenza dei brevetti acquistate da Microsemi.

Il secondo insieme di tecnologie è rappresentato dalle funzionalità anti-manomissione e comprende un bitstream sicuro, il rilevamento di tentativi di manomissione e la relativa risposta, oltre a meccanismi atti a impedire la copia, la clonazione oppure operazioni di reverse engineer.

Il terzo insieme di tecnologie è utilizzato per la creazione di sistemi “fidati” (trusted) e comprende misure di protezione contro attacchi DPA protette da brevetti e licenze, acceleratori crittografici certificati da NIST e la sicurezza della catena di fornitura (supply chain).

FPGA: la root-of-trust del sistema

Attualmente è disponibile una nuova generazione di SoC FPGA, che integrano le caratteristiche necessarie per proporsi come la “root-of-trust” del sistema, necessaria per proteggere i dati critici contro gli attacchi. Gli odierni FPGA, ad esempio, forniscono protezioni contro attacchi DPA coperte da licenze, brevetti e certificati. Ciò non solo assicura la salvaguardia della proprietà intellettuale del progetto (IP) contro fenomeni di copiatura e reverse engineering, ma garantisce anche l’autenticità dell’FPGA all’intera supply chain. Inoltre è importante che i SoC FPGA forniscano l’autentificazione rispetto ai parametri certificati dall’attestato del dispositivo e dimostrino la conoscenza della chiave segreta unica del dispositivo. Questa tecnica rappresenta l’approccio più efficace per assicurare che il dispositivo che deve essere programmato non risulti vulnerabile a tentativi di contraffazione lungo tutta la catena di fornitura.

Oltre a proteggere la proprietà intellettuale, gli odierni FPGA assicurano una maggior sicurezza contro attacchi informatici impedendo, l’esecuzione di operazioni di reverse engineering sul prodotto. La cifratura e la protezione del bitstream di configurazione garantiscono la sicurezza di un progetto basato su FPGA. Nel momento in cui viene individuato un tentativo di manomissione, i dispositivi devono essere in grado di identificare questo accesso non autorizzato e resettare a zero tutti i valori. Ciò riduce in maniera sensibile le probabilità di successo di un attacco. Per garantire una protezione ancora maggiore dei dati in uso, l’integrazione di contromisure contro attacchi DPA certificati conferisce agli FPGA una maggiore resistenza contro i tentativi di estrazione dei bit che compongono la chiave. L’inclusione di una funzionalità di sicurezza Lock-Bit consente agli FPGA di definire barriere di sicurezza in modo tale che l’uso di determinate funzioni del sistema sia consentito solamente dopo previa autorizzazione.

Oltre alla protezione contro attacchi DPA e tentativi di manomissione, le altre caratteristiche principali dell’FPGA che gli permettono di diventare la “root-of-trust” del sistema si possono annoverare le seguenti: bitstream cifrati, elementi di memorizzazione della chiave multipli, memoria flash sicura e utilizzo della tecnologia PUF.

Sicurezza a più livelli: i componenti chiave

Una volta che i SoC FPGA sono in grado di proporsi come una “root-of-trust” hardware del progetto, il passo successivo prevede l’implementazione di un approccio che il DoD (Department of Defense) definisce “defense-in-depth” e comporta l’aggiunta di più livelli di sicurezza per l’intero sistema. Le soluzioni hardware associate mettono disposizione più livelli di IA (Information Assurance) e il supporto di tecnologie di cifratura per proteggere i dati nei loro tre stati (at-rest, in-motion e in-use) nelle applicazioni software e nei progetti basati si SoC e FPGA.

Nel caso dei data-at-rest, l’attenzione deve essere focalizzata sulla memorizzazione. Nel caso di applicazioni di elaborazione embedded a elevate prestazioni il miglior approccio prevede l’uso di SSD sicuri ad alta affidabilità. Questi SSD devono proteggere dati sensibili da possibili minacce e ridurre le vulnerabilità intrinseche dei supporti di memorizzazione. Di conseguenza, SSD con cifratura basata su hardware e prevenzione della perdita dei dati sono elementi essenziali per garantire la miglior sicurezza delle informazioni.

Per proteggere i dati-in-motion vi sono due nuove opzioni da utilizzare con la rete Ethernet, perché essa opera al livello 2 (L2) con il proprio protocollo di cifratura definito da IEEE 802.1AE MACsec (MAC Security standard). Esiste una correlazione diretta tra il livello di sicurezza della soluzione e il livello in cui la sicurezza stessa è implementata. A causa di questa correlazione, il collegamento mediante Ethernet richiede una cifratura di sicurezza L2. Esistono soluzioni di protezione che consentono la cifratura di sicurezza end-to-end basata sul flusso conforme a IEEE 802.1AE che possono essere utilizzate su qualsiasi rete, comprese le reti multi-operatore e basate su cloud. Questa sicurezza non dipende dal fatto che la rete sia a conoscenza dei protocolli di sicurezza e le soluzioni per il livello fisico (PHY) assicurano una cifratura a 128/256 bit conforme allo standard AES per contrastare minacce informatiche in continua evoluzione.

Indipendentemente dallo stato dei dati, è necessario garantire la loro sicurezza mediante più livelli di cifratura. Per esempio è possibile utilizzare la cifratura software per ridurre la vulnerabilità che si potrebbe generare nel caso di estrazione della chiave di cifratura da una memoria statica o runtime. Nuove e innovative tecnologie basate sul software rappresentano una soluzione idonea per “celare” la chiave che protegge password e chiavi di cifratura e sono supportate da un gran numero di piattaforme e di algoritmi.

Un altro importante elemento del sistema che deve essere protetto è la temporizzazione sincrona, particolarmente importante nel caso di infrastrutture di comunicazione critiche. Parecchi organismi fanno affidamento su server di riferimento orario (time server) pubblici che fungono da sorgenti dell’UTC (tempo coordinato universale). Per questo motivo, sono indispensabili soluzioni di temporizzazione end-to-end in grado di generare, distribuire e applicare l’ora precisa al fine di mantenere una infrastruttura di temporizzazione sicura e globale.

Per poter combinare in modo ottimale tutti questi elementi sono spesso richieste competenze specifiche. I laboratori indipendenti supportati da produttori di component rappresentano una risorsa importante per gli sviluppatori impegnati a garantire la sicurezza dei sistemi embedded. In questi centri operano analisti di sistemi e della sicurezza, esperti nel campo della cifratura, ingegneri hardware e software che mettono a disposizione competenze trasversali alle aziende, collaborando con loro al fine di pianificare strategie di protezione, valutare i rischi, valutare progetti di tipo “black box” ed eseguire l’ingegnerizzazione della sicurezza.

La sicurezza informatica deve rappresentare una priorità per i progettisti di sistemi embedded. Gli attuali SoC FPGA rappresentano la root-of-trust per l’implementazione di soluzioni a più livelli, in grado di salvaguardare e proteggere tecnologie e informazioni critiche. Lo sviluppo di una soluzione appropriata per la difesa contro i rischi richiede una combinazione ottimale di tecnologie, oltre alla flessibilità necessaria per contrastare minacce informatiche in continua evoluzione.

Paul Pickle, President e chief operating officer, Microsemi



Contenuti correlati

Scopri le novità scelte per te x