AMD ed ARM: soluzioni di sicurezza implementate nell’hardware

Negli ultimi due mesi si sono verificati almeno due gravi attacchi DDoS: a settembre il portale Krebs on Security (blog di giornalismo investigativo focalizzato sui crimini informatici) è stato colpito da un flusso di dati record superiore ai 600Gbps – un valore che consegna agli ignoti esecutori l’indiscutibile primato. Circa un mese dopo DYN, importante host DNS degli USA, è stato interessato da un attacco altrettanto importante (non è stata rivelata tuttavia da DYN l’esatta portata del flusso) che ha provocato seri problemi di navigazione nella “East Coast” – i siti Amazon, Spotify, PayPal ed altri risultavano estremamenti lenti o irraggiungibili dagli utenti.

In generale, per difendersi da attacchi e minacce varie, si ricorre a soluzioni software come firewall, antivirus, sistemi di monitoraggio del traffico ed affini; l’evoluzione dei sistemi di protezione ha visto tuttavia affiancarsi al software anche sistemi di protezione implementati nell’hardware. Ne sono un esempio concreto le funzionalità studiate da ARM ed AMD per soc (system-on-a-chip) e processori destinati rispettivamente all’Internet delle Cose ed al mercato dei server.

ARM e la tecnologia TrustZone

ARM TrustZone

Schema che riassume il funzionamento di TrustZone – fonte sito ufficiale ARM

Tra i principali responsabili dell’attacco DDoS d’ottobre vi sarebbe stata anche una botnet costituita da innocue telecamere di sorveglianza connesse alla Rete. A bypassare l’inefficace sistema di sicurezza integrato (una password individuata mediante un procedimento simile al brute force) il malware Mirai, in grado di trasformare i dispositivi in utili amplificatori per l’attacco – DYN ha rilevato almeno 10 milioni di diversi IP coinvolti nell’operazione dei cybercriminali. TrustZone è presente da almeno un decennio in prodotti destinati ad ambienti Windows, Android e Mac OS ma è la prima volta che esordisce nell’ambito dei dispositivi pensati per l’Internet of Things (IoT).

TrustZone è una tecnologia disponibile sia per i processori più performanti (gli ARM Cortex A) che per quelli a basso consumo (come i nuovi ARM Cortex M23 ed M33 pensati per l’IoT). L’obiettivo della protezione implementata è quella di creare una “catena di fiducia” grazie alla quale rendere vani attacchi hardware e software – non sarà quindi possibile prendere il controllo dei device come avvenuto nell’attacco a DYN.

TrustZone utilizza i processori per creare due “mondi” ben distinti, quello considerato sicuro e quello insicuro; le applicazioni ed il software considerati come insicuri sono impossibilitati ad accedere alla risorse etichettate come sicure. Naturalmente il cambio tra uno e l’altro “mondo” è possibile ed è gestito o via software (nel caso dei Cortex A) o hardware (core logico nei Cortex M). In relazione ai device IoT TrusZone può essere adoperato amche per mettere in sicurezza il firmware, periferiche e garantire isolamento per procedure di boot e di aggiornamento.

AMD ed il co-processore dedicato alla sicurezza

In ambito consumer ed enterprise c’è molta attesa per i prossimi processori Advanced Micro Devices (AMD) sviluppati sulla nuova architettura x86 Zen. In base a dichiarazioni, materiale ufficiale diffuso dalla compagnia stessa e rumor, le CPU sembrano in grado di mettere in discussione il dominio Intel.

Per l’ambito enterprise, la compagnia ha pensato di introdurre una serie di funzionalità hardware based, quindi implementate nel chip stesso che dispone di un co-processore ad hoc, in grado di occuparsi di funzioni crittografiche di hash (Secure Hash Algorithm, sono quindi impiegate meno risorse per operazioni di crittaggio  decrittaggio) e proteggere i dati risiedenti nella memoria di sistema (RAM) della macchina host e nelle macchine virtuali.

Per quanto riguarda la RAM della macchina host, uno dei “classici” obiettivi degli hacker (i dati non sono protetti da alcuna misura di sicurezza), AMD presenta SME o Secure Memory Encryption. In sintesi ciascun controller di memoria dispone nel proprio die di hardware dedicato all’applicazione di chiavi crittografiche: è un engine apposito (AES o Advanced Encryption Standard) a proteggere i dati con una chiave di cifratura a 128bit ed a decrittarli all’avvenuta lettura.

A differenza di soluzioni simili come le Software Guard Extensions Intel, le istruzioni SME possono essere virtualizzate rivelandosi ideali per operare nel cloud dove la tecnologia è ampiamente utilizzata per erogare servizi. In questo caso entra in gioco la Secure Encrypted Virtualization (SEV), un’estensione di AMD-V che supporta una o più macchine virtuali controllate dallo stesso hypervisor. Tutti i dati presenti all’interno del processore sono abbinati ad un tag univoco in grado di identificarne provenienza, destinazione e motivo della loro creazione: in questo modo solo il legittimo proprietario sarà in grado di fruirne.