Hertzbleed è una nuova famiglia di attacchi side-channel che colpisce le moderne CPU

Un team di ricercatori dell’Università del Texas, dell’Illinois e dell’Università di Washington ha divulgato informazioni su una nuova famiglia di attacchi side-channel (CVE-2022-23823, CVE-2022-24436), nome in codice Hertzbleed. Il metodo di attacco proposto si basa sulle caratteristiche del controllo dinamico della frequenza nei moderni processori e colpisce tutte le attuali CPU Intel e AMD. Potenzialmente, il problema potrebbe manifestarsi anche nei processori di altri produttori che supportano i cambiamenti dinamici di frequenza, ad esempio nei sistemi ARM, ma lo studio si è limitato a testare i chip Intel e AMD. I testi originali con l'implementazione del metodo di attacco sono pubblicati su GitHub (l'implementazione è stata testata su un computer con CPU Intel i7-9700).

Per ottimizzare il consumo energetico e prevenire il surriscaldamento, i processori modificano dinamicamente la frequenza in base al carico, il che porta a cambiamenti nelle prestazioni e influisce sul tempo di esecuzione delle operazioni (una variazione della frequenza di 1 Hz porta a una variazione delle prestazioni di 1 ciclo di clock per secondo). Durante lo studio, si è scoperto che in determinate condizioni sui processori AMD e Intel, la variazione di frequenza è direttamente correlata ai dati elaborati, il che, ad esempio, porta al fatto che il tempo di calcolo delle operazioni “2022 + 23823” e “2022 + 24436” sarà diverso. Sulla base dell'analisi delle differenze nel tempo di esecuzione di operazioni con dati diversi, è possibile ripristinare indirettamente le informazioni utilizzate nei calcoli. Allo stesso tempo, nelle reti ad alta velocità con ritardi costanti e prevedibili, è possibile effettuare un attacco da remoto stimando il tempo di esecuzione delle richieste.

Se l'attacco ha successo, i problemi identificati consentono di determinare le chiavi private sulla base di un'analisi del tempo di calcolo nelle librerie crittografiche che utilizzano algoritmi in cui i calcoli matematici vengono sempre eseguiti in tempo costante, indipendentemente dalla natura dei dati elaborati . Tali librerie erano considerate protette dagli attacchi del canale laterale, ma come si è scoperto, il tempo di calcolo è determinato non solo dall'algoritmo, ma anche dalle caratteristiche del processore.

Come esempio pratico che dimostra la fattibilità dell'utilizzo del metodo proposto, è stato dimostrato un attacco all'implementazione del meccanismo di incapsulamento delle chiavi SIKE (Supersingular Isogeny Key Encapsulation), che è stato incluso nella finale del concorso sui sistemi crittografici post-quantistici indetto dagli Stati Uniti National Institute of Standards and Technology (NIST) ed è posizionato come protetto dagli attacchi del canale laterale. Durante l'esperimento, utilizzando una nuova variante dell'attacco basata sul testo cifrato selezionato (selezione graduale basata sulla manipolazione del testo cifrato e sull'ottenimento della sua decrittazione), è stato possibile recuperare completamente la chiave utilizzata per la crittografia effettuando misurazioni da un sistema remoto, nonostante l'uso di un'implementazione SIKE con tempo di calcolo costante. La determinazione di una chiave a 364 bit utilizzando l'implementazione CIRCL ha richiesto 36 ore e PQCrypto-SIDH ha impiegato 89 ore.

Intel e AMD hanno riconosciuto la vulnerabilità dei loro processori al problema, ma non intendono bloccare la vulnerabilità tramite un aggiornamento del microcodice, poiché non sarà possibile eliminare la vulnerabilità nell'hardware senza un impatto significativo sulle prestazioni dell'hardware. Agli sviluppatori di librerie crittografiche vengono invece forniti consigli su come bloccare a livello di codice la fuga di informazioni durante l'esecuzione di calcoli riservati. Cloudflare e Microsoft hanno già aggiunto una protezione simile alle loro implementazioni SIKE, il che ha comportato un calo delle prestazioni del 5% per CIRCL e dell'11% per PQCrypto-SIDH. Un'altra soluzione alternativa per bloccare la vulnerabilità è disabilitare le modalità Turbo Boost, Turbo Core o Precision Boost nel BIOS o nel driver, ma questa modifica comporterà un drastico calo delle prestazioni.

Intel, Cloudflare e Microsoft sono state informate del problema nel terzo trimestre del 2021 e AMD nel primo trimestre del 2022, ma la divulgazione pubblica del problema è stata ritardata fino al 14 giugno 2022 su richiesta di Intel. La presenza del problema è stata confermata nei processori desktop e portatili basati sulla microarchitettura Intel Core di 8-11 generazioni, nonché in vari processori desktop, mobili e server AMD Ryzen, Athlon, A-Series ed EPYC (i ricercatori hanno dimostrato il metodo su CPU Ryzen con microarchitettura Zen 2 e Zen 3).

Fonte: opennet.ru

Aggiungi un commento