Zenbleed, una vulnerabilitat que afecta processadors AMD Zen 2

vulnerabilitat

Si s'exploten, aquestes falles poden permetre als atacants obtenir accés no autoritzat a informació confidencial o, en general, causar problemes

Fa pocs dies un investigador de l'equip de seguretat de Google, va donar a conèixer la notícia que detecte una vulnerabilitat (ja catalogada sota CVE-2023-20593) als processadors AMD basats en la microarquitectura Zen2 que es pot utilitzar per detectar registres mentre altres processos s'executen al mateix nucli de la CPU.

Aquesta vulnerabilitat es considera important, ja que l'atac es pot fer des de màquines virtuals i entorns aïllats. En essència, el problema sassembla a les vulnerabilitats clàssiques dús després dalliberar causades per laccés a la memòria després que shagi alliberat.

El problema passa amb AMD Ryzen 3000, Ryzen PRO 3000, Ryzen Threadripper 3000, Ryzen 4000 amb Radeon Graphics, Ryzen PRO 4000, Ryzen 5000 amb Radeon Graphics, Ryzen 7020 amb Radeon Graphics i la sèrie de processadors EPYC 7002.

Sobre la vulnerabilitat, s'esmenta és perquè en els processadors, per emmagatzemar el contingut dels registres, s'utilitza un arxiu de registre (RF, Register File), que és un arranjament que es comparteix en totes les tasques al mateix nucli de la CPU. La taula d'assignació de registres (RAT) és responsable d'adjuntar registres amb noms específics als recursos del fitxer de registre. En aquest cas, el valor zero s'emmagatzema al registre no emmagatzemant un valor buit al fitxer de registre, sinó configurant l'indicador de bit z a la taula RAT.

La vulnerabilitat és deguda al fet que si el bit z s'estableix durant l'execució especulativa d'instruccions, no n'hi ha prou simplement restablir-ho en cas d'una predicció de bifurcació incorrecta, ja que l'espai a l'arxiu de registre es pot reassignar a partir de l'execució especulativa.

L'efecte revelat passa quan simultàniament es canvia el nom d'un registre, es fa servir una instrucció per a la qual s'aplica l'optimització de combinació i s'executa especulativament una instrucció vectorial VZEROUPPER que estableix el bit zy allibera recursos del fitxer de registre. Si la predicció de bifurcació falla i l'operació especulativa VZEROUPPER es desfà, el contingut dels registres vectorials es pot corrompre, ja que el bit z es desfà, però el recurs alliberat roman sense descartar.

A través de la manipulació de la instrucció VZEROUPPER, és possible aconseguir una fuita controlada de dades processades als registres vectorials YMM utilitzats en els modes AVX (Advanced Vector Extensions) i SSE (Streaming SIMD Extensions). Aquests registres s'utilitzen activament a les funcions de còpia de memòria i processament de cadenes, per exemple, a la biblioteca Glibc s'utilitzen a les funcions memcpy, strcmp i strlen.

Per demostrar la vulnerabilitat, el nom del qual en codi és Zenbleed, s'ha preparat un prototip d'exploit que permet a un usuari sense privilegis determinar les dades processades a les instruccions AES-NI o ​​REP-MOVS (normalment utilitzades en la funció memcpy), que poden utilitzar-se per reconstruir claus de xifrat i contrasenyes d'usuari, processades en altres processos, inclosos els privilegiats. El rendiment de fugida de dades de l'exploit és d'aproximadament 30 KB per segon.

la vulnerabilitat es va corregir al nivell d'actualització del microcodi. Per Linux s'ha preparat un pegat per descarregar el microcodi corregit. Encara que si no és possible actualitzar el microcodi, hi ha una solució per bloquejar la vulnerabilitat, cosa que condueix a una disminució del rendiment.

Per a això, s'ha de configurar el bit de control DE_CFG[9] a la CPU i per a això, en una terminal s'ha de teclejar la següent ordre:

Cal esmentar que deshabilitar el mode SMT no bloqueja la vulnerabilitat i la solució per bloquejar la vulnerabilitat va ser implementada dins de les actualitzacions del nucli 6.4.6, 6.1.41, 5.15.122, 5.10.187, 5.4.250 i 4.19.289.

Per als interessats a donar seguiment a la informació de vulnerabilitat a les diferents distribucions, poden fer-ho a les següents pàgines: DebianUbuntuGentooRHELSUSEFedoraArcOpenBSDFreeBSDNetBSD.

Finalment si estàs interessat a poder conèixer més sobre això, pots consultar els detalls al següent enllaç.


Deixa el teu comentari

La seva adreça de correu electrònic no es publicarà. Els camps obligatoris estan marcats amb *

*

*

  1. Responsable de les dades: AB Internet Networks 2008 SL
  2. Finalitat de les dades: Controlar l'SPAM, gestió de comentaris.
  3. Legitimació: El teu consentiment
  4. Comunicació de les dades: No es comunicaran les dades a tercers excepte per obligació legal.
  5. Emmagatzematge de les dades: Base de dades allotjada en Occentus Networks (UE)
  6. Drets: En qualsevol moment pots limitar, recuperar i esborrar la teva informació.