Era l'inizio del 2018 quando un gruppo di ricercatori di Google Project Zero scoprì la storica vulnerabilità Spectre nei processori vecchi e nuovi. Fu l'inizio di una nuova era: da allora, infatti, vennero a galla attacchi side-channel sempre più numerosi, capaci di estrarre informazioni riservate dalla memoria utilizzata nei microprocessori.
Spectre sfrutta una caratteristica chiave dei processori, nota come esecuzione speculativa. Per migliorare le prestazioni, i processori eseguono istruzioni in anticipo basandosi sulle previsioni riguardanti il flusso del programma (si pensi ai salti condotti durante l'esecuzione di un'applicazione). Se le previsioni sono corrette, l'esecuzione procede senza intoppi e le prestazioni migliorano. Tuttavia, se si verifica un errore di previsione, il processore deve annullare l'effetto dell'esecuzione speculativa.
L'attacco basato su Spectre fa leva sulla capacità del processore di anticipare le istruzioni per ottenere informazioni che normalmente non sarebbero accessibili. Questo può consentire a un attaccante di accedere a dati riservati presenti nella memoria del computer, come password, chiavi crittografiche o altri dati che dovrebbero restare segreti.
La particolarità di Spectre e degli altri attacchi di tipi side-channel è che la risoluzione non può avvenire con un semplice aggiornamento del software o del firmware. Possono essere applicate eventuali "attenuazioni" per mitigare il rischio di sfruttamento di Spectre le quali, comunque, hanno un certo impatto negativo in termini di prestazioni.
Spectre v2: il nuovo exploit interessa anche i sistemi Windows e Microsoft spiega come evitare gli attacchi
Nei giorni scorsi i ricercatori di VUSec hanno confermato la messa a punto di un nuovo exploit che, a distanza di anni, riporta in auge la vulnerabilità Spectre. Battezzata Spectre v2, la nuova modalità d'attacco fa leva – tra l'altro – sulla Branch History Injection (BHI).
La BHI è una tecnica di attacco informatico che sfrutta vulnerabilità nella predizione del comportamento dei salti (branch prediction) all'interno dei processori. Si chiama branch history il registro delle decisioni prese dalle unità di previsione dei salti durante l'esecuzione del programma.
VUSec ha concentrato la sua attenzione in particolare sulle conseguenze di Spectre v2 sui sistemi Linux basati su CPU Intel. Microsoft, tuttavia, ha aggiornato il bollettino relativo alla falla CVE-2022-0001 spiegando che il nuovo exploit interessa anche i sistemi Windows.
I tecnici dell'azienda di Redmond sottolineano che la vulnerabilità può essere sfruttata nel momento in cui un attaccante dovesse riuscire a manipolare la branch history prima di passare dalla modalità utente alla supervisor mode (o dalla modalità non root/guest alla modalità root sulle macchine virtuali).
Come bloccare gli attacchi che sfruttano Spectre v2 in Windows
Nella versione aggiornata della sua documentazione di supporto, Microsoft precisa che gli utenti interessati a scongiurare i tentativi di attacco basati su Spectre v2 possono semplicemente modificare la configurazione del registro di sistema. L'intervento potrebbe essere applicato sui sistemi Windows maggiormente esposti e che elaborano informazioni critiche, tenendo comunque presente che la modifica del registro e la neutralizzazione di Spectre v2 può avere un impatto negativo sulle performance.
Gli interventi che Microsoft consiglia di applicare, sui sistemi Windows basati su CPU Intel, per mitigare i rischi derivanti da nuove tipologie di attacchi basati su Spectre v2 sono i seguenti. Per provvedere, è necessario accedere al prompt dei comandi con i diritti di amministratore (scrivere cmd
nella casella di ricerca e scegliere Esegui come amministratore) quindi digitare quanto segue:
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /t REG_DWORD /d 0x00800000 /f
reg add "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /t REG_DWORD /d 0x00000003 /f
Nel caso in cui, successivamente, si volessero annullare le modifiche e ripristinare la configurazione predefinita di Windows, basta digitare quanto segue:
reg delete "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverride /f
reg delete "HKLM\SYSTEM\CurrentControlSet\Control\Session Manager\Memory Management" /v FeatureSettingsOverrideMask /f
Credit immagine in apertura: University of Michigan.