Downfall, un attacco alle CPU Intel fino ai Core di 11a generazione

Downfall, un attacco alle CPU Intel fino ai Core di 11a generazione

Daniel Moghimi, Senior Research Scientist di Google, ha scoperto un problema di sicurezza nelle CPU Intel degli ultimi anni - ultimi modelli esclusi - e messo a punto un attacco ribattezzato Downfall che permette di sottrarre informazioni sensibili dai chip.

di pubblicata il , alle 13:41 nel canale Processori
IntelCoreXeon
 

Non c'è solo AMD in queste ore sulla proverbiale "graticola" delle falle di sicurezza, ma anche Intel. Un nuovo attacco, ribattezzato Downfall, è stato reso pubblico e coinvolge i processori della società dal 2015 al 2019, ovvero dai Core di 6a generazione Skylake fino all'11a generazione Rocket Lake e Tiger Lake. Non sono affetti dal problema i chip Core di 12a e 13a generazione, Alder e Raptor Lake, così come le CPU Xeon di 4a generazione Sapphire Rapids.

La cosiddetta "disclosure" è avvenuta in coordinamento tra Intel e il ricercatore che ha identificato il problema, Daniel Moghimi (Senior Research Scientist di Google). L'attacco è stato messo a punto lo scorso agosto, ma è stato mantenuto il riserbo sino a oggi. La casa di Santa Clara ha pubblicato un bollettino di sicurezza (INTEL-SA-00828) ed è stato creato un CVE apposito per il problema (CVE-2022-40982).

Il nuovo attacco permette di sottrarre password, chiavi di cifratura e dati privati come email, messaggi e informazioni bancarie da utenti che condividono lo stesso computer basato su una delle CPU incriminate. Il ricercatore ha descritto il problema di sicurezza su questa pagina.

"La vulnerabilità è causata dalle funzionalità di ottimizzazione della memoria nei processori Intel che rivelano involontariamente i registri hardware interni al software", ha scritto Moghimi. "Ciò consente al software non attendibile di accedere ai dati, archiviati da altri programmi, che normalmente non dovrebbero essere accessibili. Ho scoperto che l'istruzione Gather, legata ad AVX e pensata per velocizzare l'accesso ai dati in memoria, fa trapelare il contenuto del file di registro vettoriale interno durante l'esecuzione speculativa".

Un malintenzionato in grado di sfruttare la falla può estrarre informazioni protette da Software Guard eXtensions (SGX), la tecnologia di cifratura della memoria basata su hardware di Intel che separa il codice in memoria e i dati del software sul sistema. SGX è supportata solo da alcuni processori della casa di Santa Clara.

Moghimi ha sviluppato due tecniche di attacco, Gather Data Sampling (GDS) e Gather Value Injection (GVI), con quest'ultima che combina GDS con Load Value Injection (LVI). Usando GDS, Moghimi è stato in grado di rubare chiavi crittografiche AES a 128 e 256 bit su una macchina virtuale separata da quella controllata, con ogni sistemi su thread fratelli sul medesimo core della CPU.

In meno di 10 secondi, il ricercato è riuscito a rubare le chiavi AES e combinarle per rompere la codifica. "Per 100 chiavi diverse, la prima esecuzione dell'attacco ha avuto successo al 100% per AES-128. La prima esecuzione dell'attacco ha avuto successo all'86% per AES-256". Moghimi ha spiegato che l'attacco GDS può sottrarre dati arbitrari a riposo a causa di due condizioni in cui la CPU precarica questo tipo di informazioni nei buffer dei registri SIMD.

Secondo lui, anche se non si possiede un PC con CPU Intel, il dominio della società nel mercato dei server significa che tutti su Internet sono interessati dal problema e che "negli ambienti di cloud computing, un cliente malintenzionato potrebbe sfruttare la vulnerabilità Downfall per rubare dati e le credenziali di altri clienti che condividono lo stesso sistema sul cloud".

Intel ha pubblicato un aggiornamento del microcode per i chip coinvolti, ma non nasconde che la mitigazione potrebbe avere un impatto rilevante, fino al 50% a seconda che il carico di lavoro usi Gather. Intel ha un meccanismo "opt-out" nel microcode che consente di disabilitare la mitigazione per Downfall al fine di "evitare l'impatto prestazionale in determinati carichi di lavoro che usano pesantemente la vettorizzazione".

Secondo Moghimi, disattivare la mitigazione "è una cattiva idea. Anche se il carico di lavoro non utilizza istruzioni vettoriali, le CPU moderne si affidano a registri vettoriali per ottimizzare le operazioni comuni, come copiare la memoria e cambiare il contenuto del registro: ciò fa trapelare dati a codice non attendibile sfruttando Gather".

Vivek Tiwari, Vice President of Remediation and Response Engineering di Intel, ritiene che "cercare di sfruttarlo al di fuori di un ambiente di laboratorio controllato sarebbe un'impresa complessa". Moghimi presenterà Downfall alla conferenza BlackHat USA di oggi e all'USENIX Security Symposium l'11 agosto.

21 Commenti
Gli autori dei commenti, e non la redazione, sono responsabili dei contenuti da loro inseriti - info
Marco7109 Agosto 2023, 14:09 #1

In un mondo sbandato ormai...

...in ogni settore dello scibile umano, come questo "Voi" fidatevi poi dell'ultima frase
Vivek Tiwari, Vice President of Remediation and Response Engineering di Intel, ritiene che "cercare di sfruttarlo al di fuori di un ambiente di laboratorio controllato sarebbe un'impresa complessa".


Come qualche dubbio sul fatto che non ci siano mercati neri e di altre tonalità di grigio che mercanteggiano questo tipo di vulnerabilità microarchitetturali.

E quindi anche Microsoft quando impedisce di installare Windows 11 su cpu che non siano nella sua lista in divenire...lo sa che quelle attualmente presenti in gran parte sono a "rischio" ?
E via di aggiornamenti di microcodice, toppe su toppe in un mondo sempre più sbandato che non ha mai saputo progettare una cpu per personal computer esente al 100 % reale da problemi, deviazioni dalla nominalità progettuale ecc. ecc.
Se venissero lette, analizzate tutte le "errata" per tutte le cpu dal Pentium Pro almeno in poi sarebbe una ecatombe.
Ed includiamoci pure tutte le cpu, SoC basati su ARM.

Situazione e panorama tragico.

Marco71
Opteranium09 Agosto 2023, 15:18 #2
Originariamente inviato da: Marco71
in un mondo sempre più sbandato che non ha mai saputo progettare una cpu per personal computer esente al 100 % reale da problemi

si chiama mondo reale, diverso da quello fatato e privo di bug cui ti riferisci
Ago7209 Agosto 2023, 15:25 #3
Originariamente inviato da: Marco71
E via di aggiornamenti di microcodice, toppe su toppe in un mondo sempre più sbandato che non ha mai saputo progettare una cpu per personal computer esente al 100 % reale da problemi, deviazioni dalla nominalità progettuale ecc. ecc.


Forse non si e' mai fatto, perche' e' impossibile farlo? E lo sai perche' è impossibile? Perche' chi progetta la CPU (o qualunque altro oggetto) e' l'uomo, che per sua natura e' fallace, e quindi non potra' mai progettare qualcosa di infallibile.
Ci sono tecniche di progettazione per arrivare vicino al 100%, ma non per raggiungere il 100%, specialmente se sono sistemi complessi come una CPU, con miliardi di transistor e milioni di righe di codice.
Marco7109 Agosto 2023, 16:29 #4

Eh sì...è il mondo reale...

...ma troppo spesso la gente pensa in modo iperottimistico, al di fuori del realismo.

E sono gli altri che vivono nel mondo fatato non certo io...per informazione.

si chiama mondo reale, diverso da quello fatato e privo di bug cui ti riferisci


Marco71
Marco7109 Agosto 2023, 16:34 #5

Eh no Ago72...

...perché nemmeno in era 80386 e suoi, più o meno 275 000 transistor secondo processo Intel dell'epoca, "eravamo" capaci di progettare cpu esenti da deviazioni dalla nominalità.

Siamo andati avanti coltivando per decenni e decenni un irrealistico positivismo e scientismo confidando che la Scienza e tecnologia potessero approssimarsi ad un asintoto irragiungibile di perfezione, solo nominale però.

E da Pentium Pro in poi si è costruito un apposito vaso di Pandora, latente da cui oggi attigono a piene mani.
Tra esecuzione fuori ordine, speculativa, predizione dei salti ecc. ecc.

Ed oggi siccome l'intelligenza cosiddetta "naturale" è arrivata al limite di gestione della complessità ci stiamo incamminando su altro binario iperpositivista e scientista quello delle presunte, intelligenze artificiali più o meno deboli; più o meno forti.
Sperando che ti progettino almeno loro, una cpu o meglio un sistema digitale di calco complesso esente da difetti e devianze dalla nominalità.

Forse non si e' mai fatto, perche' e' impossibile farlo? E lo sai perche' è impossibile? Perche' chi progetta la CPU (o qualunque altro oggetto) e' l'uomo, che per sua natura e' fallace, e quindi non potra' mai progettare qualcosa di infallibile.
Ci sono tecniche di progettazione per arrivare vicino al 100%, ma non per raggiungere il 100%, specialmente se sono sistemi complessi come una CPU, con miliardi di transistor e milioni di righe di codice.


Marco71
Marco7109 Agosto 2023, 16:42 #6

Per non dire...

...della verifica "esaustiva" delle unità in virgola mobile altra tragedia.
Che venne parzialmente affrontata solo all'indomani del notissimo "errore" sulla istruzione assembly FDIV della cpu Pentium.

Più tutto il resto che ancora giace latente in attesa di essere attivamente e fattivamente sfruttato non solo dal cracker, isolato, pseudo nerd dell'Est Europa o zona sperduta del mondo ma anche da "gente ben più in alto" per altri scopi.
E questo è vivere nel mondo reale...chi invece si illude altrimenti ad occhi aperti...sogna e vive nei mondi fatati.


Marco71
gnappoman09 Agosto 2023, 16:43 #7

dieselgate docet

questa è tipo l'euro sette per le cpu... ti fanno comprare quelle nuove, cosí giustificano gli investimenti nelle inutili gigafabbriche costosissime made in usa. Ma tanto i cinesi ormai la tecnologia ce l'hanno e sarà inutile cercare di costringerci a spendere un botto per il made in usa. Intel con queste mosse scava la sua tomba sempre più in profondità....
belta09 Agosto 2023, 16:47 #8
Originariamente inviato da: gnappoman
Intel con queste mosse scava la sua tomba sempre più in profondità....


Ma volesse la Madonna
Ago7209 Agosto 2023, 16:57 #9
Originariamente inviato da: Marco71
...perché nemmeno in era 80386... <cut>


se ritieni che l'80386 non sia complesso, e' inutile continuare a parlare.

PS
Consiglio, usa termini meno "complicati", perche' se non si sanno usare o non si conoscono bene, il rischio di contraddirsi è molto alto.
Marco7109 Agosto 2023, 17:02 #10

Amico mio...

...sono ingegnere elettronico e conosco bene la materia.
Con me ti sbagli e di grosso anche.


In quello che hai scritto hai parlato di miliardi di transistor...con un certo livello di complessità.


Di quanti ordini di grandezza era meno "complesso" un 80386 con i suoi bei bug ?

Vuoi metterla sulla tassonomia classica MSI, LSI, VLSI ecc. ?

Nemmeno la lingua italiana ormai "sappiamo" comprendere...dove ti avrei scritto che l'80386 non era "complesso" di grazia ?!?!?!?!

Non siamo per niente e mi fermo qui.


Non siamo più in grado di gestire i sistemi "complessi" che progettiamo o concepiamo e dobbiamo fare atti di umiltà e fermarci per fare mente locale.

Marco71

Devi effettuare il login per poter commentare
Se non sei ancora registrato, puoi farlo attraverso questo form.
Se sei già registrato e loggato nel sito, puoi inserire il tuo commento.
Si tenga presente quanto letto nel regolamento, nel rispetto del "quieto vivere".

La discussione è consultabile anche qui, sul forum.
 
^