ZombieLoad 2, scoperta nuova falla nelle CPU Intel, colpiti fino ai più recenti processori Cascade Lake. Andiamo a scoprire come difenderci!
Non si può mai stare tranquilli con i nostri PC, che arriva una nuova falla a disturbare la quiete. Vi ricordate le serie di falle scoperte qualche tempo fa come Spectre, Meltdown e le sue molteplici varianti quanto avevano seminato il panico nel WEB? Purtroppo ora ci ritroviamo con una nuova falla in vista. Nelle ultime ore sono emerse nuove varianti di attacchi già noti, parliamo di ZombieLoad 2 oppure potremo chiamarla RIDL, sigla che Intel usa in riferimento alla Microarchitectural Data Sampling, MDS. Questa falla colpisce le piattaforme di Intel fino alle più recenti CPU Cascade Lake (architettura Skylake).
Le uniche CPU non soggette a questa falla sono quelle che non supportano la tecnologia Intel TSX. ZombieLoad 2 potrebbe tramite vulnerabilità di sicurezza ottenere l’accesso a informazioni sensibili da parte di malintenzionati. Le aziende del settore hanno affrontato la situazione offrendo un insieme di aggiornamenti (microcode, firmware, sistema operativo, ecc.) per più generazioni di piattaforme, ma a quanto pare il pericolo è sempre dietro l’angolo. Andiamo allora a scoprire di più su questa falla. E vediamo come difenderci.
ZombieLoad 2: corriamo ai ripari, nuova falla nelle CPU Intel
La falla ZombieLoad 2, vulnerabilità che trae origine dal TSX asynchronous abort (TAA), è stata scoperta da un gruppo di ricercatori appartenenti a vari atenei e centri di ricerca internazionali. Il gruppo è composto da: Vrije Universiteit di Amsterdam, KU Leuven del Belgio, il tedesco Helmholtz Center for Information Security e la Graz University of Technology austriaca. La stessa Intel ha pubblicato per gratitudine una nota di merito al team di ricercatori.
Secondo Intel la vulnerabilità TSX Asynchronous Abort (TAA) è “simile alla Microarchitectural Data Sampling (MDS). Affligge infatti gli stessi buffer, ovvero delle zone usate dalla memoria per compensare differenze di velocità nel trasferimento di dati. Parliamo in particolare dello store buffer, fill buffer, load port writeback data bus. La meccanica funzionale del TAA, su alcuni determinati processori che usano l’esecuzione speculativa, potrebbe consentire a un utente autenticato di consentire la potenziale divulgazione di informazioni tramite un “side channel con accesso locale”. ZombieLoad 2 sfrutta però un nuovo meccanismo per l’exploit finale. Proprio come avviene con gli attacchi MDS, anche TAA può esporre dati sia dai core fisici che dai thread logici su processori con tecnologia Hyper-Threading.
Nel caso specifico di questa falla però vengono prelevate informazioni dalle Intel Transactional Synchronization Extensions (Intel TSX), un’estensione fondamentale del set di istruzioni x86. Che ricordiamo svolgono la funzione fondamentale di aggiunge il supporto hardware alla memoria transazionale per migliorare le prestazioni con il software multi-thread. Il TSX ha due importanti sottofunzionalità: la Restricted Transactional Memory (RTM) e l’Hardware Lock Elision (HLE). Funzioni che intervengono nel processo di scrittura di memoria all’interno della transazione.
Una transazione Intel TSX può essere interrotta in modo sincrono, ad esempio a causa di istruzioni non supportate nelle transazioni. Le transazioni Intel TSX possono essere interrotte anche in modo asincrono, quando un diverso processore logico scrive su una riga della cache che fa parte del set di lettura della transazione o quando la transazione supera il suo spazio di memoria buffer o per altri motivi legati alla microarchitettura. Ciò può causare effetti collaterali, che possono successivamente essere misurati per dedurre il valore dei dati nelle strutture microarchitetturali.
Così Intel spiega il problema alla sua radice.
ZombieLoad 2: scopriamo come funziona l’attacco
Il principale problema è che durante un normale utilizzo, mentre avviene un’interruzione asincrona nella fase di transazione della memoria, alcuni carichi all’interno della transazione che non sono stati ancora completati potrebbero leggere dati dalle strutture microarchitetturali. Per poi passare addirittura speculativamente tali dati a operazioni dipendenti. Come abbiamo detto il problema nasce dalla vulnerabilità side channel, che sappiamo essere legata all’esecuzione speculativa. Una tecnica usata dalle CPU moderne per velocizzare i calcoli da eseguire. Le CPU fanno delle vere e proprie ipotesi sui calcoli successivi che dovrebbero svolgere e prepara già il risultato, al fine di velocizzare l’intero processo all’utente finale.
Nel caso però queste ipotesi sviluppate dalle CPU si rivelano sbagliate, l’esecuzione viene immediatamente bloccata. Questo processo porta la CPU ad ottenere dei dati dagli appositi buffer, quindi da varie parti del chip che fanno da “link” in gergo da collegamento tra diversi componenti, ad esempio come il processore e la sua cache. I ricercatori hanno dimostrato come è possibile manipolare quei determinati buffer per contenere dati sensibili, come chiavi crittografiche o password, rendendo vane le tecniche e i sistemi di criptazione in atto sul PC. E’ stato anche dimostrato come sia possibile causare degli accessi alla memoria speculativi interrotti. Di conseguenza è possibile far trapelare le informazioni sensibili dai buffer del chip.
Detto questo un possibile malintenzionato potrebbe arrivare indisturbato a quei dati eseguendo un codice Javascript strutturato per bene, semplicemente da un sito visitato. Oppure si potrebbe portare a termine l’attacco anche da una macchina virtuale che si trova su un server cloud.
Ecco la falla in azione durante un attacco
Una altra cosa che sicuramente non farà piacere agli utenti è che stando a quanto affermato dai ricercatori, Intel è stata informata di queste nuove varianti di MDS a settembre dello scorso anno. L’azienda però non ha mai corretto i problemi nell’arco dei successivi 14 mesi. A detta dei ricercatori Intel avrebbe fatto diverse prove per correggere il problema ma gli sforzi compiuti per risolvere le falle MDS non sarebbero stati sufficienti.
Uno dei ricercatori del team TSX difatti sapeva che le mitigazioni diffuse a maggio potevano essere superate e quindi non efficaci. Il ricercatore Jonas Theis della Vrije Universiteit ha usato la meccanica TAA per portare un sistema a rivelare l’hash della password di un amministratore in soli 30 secondi, come potete vedere dal video sottostante.
ZombieLoad 2: cosa si sta facendo per risolvere la falla
Intel per risolvere le falle di tipo MDS ha deciso di non impedire ai suoi processori di prendere dati arbitrari dai buffer quando avveniva un accesso di memoria invalido. Si è infatti limitata a impedire specifiche situazioni che permettevano al dato di fuoriuscire. Così facendo Intel ha lasciato la porta aperta ad alcune varianti, ma le performance della macchina in questo modo sono rimaste contenute. Scelta difficile da prendere quando ci si trova davanti a un bivio. I ricercatori del TSX affermano che non sono ancora del tutto sicuri che l’ampio aggiornamento dei microcode che Intel sta rilasciando affronti definitivamente questi problemi.
Siamo particolarmente preoccupati che il piano di mitigazione di Intel sia orientato sui Proof of Concept (PoC), con una completa mancanza di ingegneria della sicurezza e analisi delle cause alla radice, con lievi variazioni nei PoC che portano a nuovi embarghi e a nuove vulnerabilità che rimangono irrisolte per lunghi periodi. Sfortunatamente, fino a quando non vi sarà una sufficiente pressione pubblica / industriale, Intel sembra avere pochi incentivi a cambiare rotta, lasciando al pubblico un falso senso di sicurezza.
Sono forti le parole pronunciate dal team di ricercatori. Che secondo loro le misure adottate non siano risolutive e raccomanda di disattivare l’hyperthreading nei processori Intel. Azione che non risolve tutti i problemi, ma elimina i pericoli maggiori.
Questo il commento ufficiale rilasciato da Intel.
Le mitigazioni riducono sostanzialmente la superficie d’attacco potenziale fornendo un mezzo per cancellare i buffer e disabilitare TSX per quei clienti che non usano questa funzione. Continuiamo ad incoraggiare tutti e tenere aggiornati i propri dispositivi, siccome è questo uno dei migliori modi per essere protetti. Ringraziamo i ricercatori che hanno lavorato insieme a noi, e i nostri partner di settore per il loro contributo, per l’annuncio coordinato di questo problema.
Cosa dobbiamo fare quindi per stare al sicuro?
Dopo questa lunga e doverosa spiegazione, specifichiamo che al momento non ci sono report di exploit nel mondo reale che utilizzano queste vulnerabilità. Questo non significa che non potrebbe succedere, ma va comunque detto. Se non che, almeno può farci stare tutti un po’ più tranquilli, avendo più tempo a disposizione per lavorare meglio alla falla. Questo bug ricordiamo coinvolge la Decoded ICache della CPU. Cosa significa? Che la sua risoluzione porterebbe ad un impatto prestazionale di circa lo 0 e il 4%.
Utenti comuni e piccole/ grandi aziende non devono far altro che mantenere aggiornati i propri sistemi, consiglio che diamo sempre al di là di questi avvenimenti. Quindi aggiornate i BIOS delle schede madri, update disponibile sul sito del vostro produttore, i sistemi operativi, utilizzate sistemi aggiornati e recenti, i vari software che utilizzate principalmente, come i browser che s’interfacciano al web, ma anche hypervisor o macchine virtuali. Come detto dai ricercatori, disabilitare l’Hyper-Threading è una soluzione parziale, bisogna tener conto che si perdono tante prestazioni in alcuni scenari. Quindi per ora limitatevi ad aggiornare quanto detto sopra. Va inoltre ribadito per nota, che non ci sono al momento report di exploit reali che usano queste vulnerabilità, quindi la soluzione di disabilitare l’Hyper-Threading la lasceremmo per il momento come ultima spiaggia.
Ricordiamo inoltre che coinvolti in ZombieLoad 2 sono tutti i processori Intel recenti con supporto TSX, inclusi i processori server Cascade Lake di quest’anno. Il TAA funziona anche su microarchitetture con mitigazioni hardware per Meltdown e Foreshadow, e su processori che non sono vulnerabili a MDS.
Se volete continuare a conoscere le ultime novità dal mondo software continuate a seguirci. Un saluto da tuttoteK.
Lascia un commento