BHI: una nova vulnerabilitat de classe Spectre que afecta Intel i ARM

Investigadors de la Universitat Lliure d'Amsterdam van donar a conèixer fa poc que van trobar una nova vulnerabilitat que és una versió estesa de la vulnerabilitat Spectre-v2 als processadors Intel i ARM.

Aquesta nova vulnerabilitat, a la qual han batejat com a BHI (Branch History Injection, CVE-2022-0001), BHB (Branch History Buffer, CVE-2022-0002) i Spectre-BHB (CVE-2022-23960), es caracteritza per permetre eludir els mecanismes de protecció eIBRS i CSV2 agregats als processadors.

La vulnerabilitat es descriu en diferents manifestacions del mateix problema, ja que BHI és un atac que afecta diferents nivells de privilegi, per exemple, un procés d'usuari i el nucli, mentre que BHB és un atac al mateix nivell de privilegi, per exemple , eBPF JIT i el kernel.

Sobre la vulnerabilitat

conceptualment, BHI és una variant estesa de l'atac Spectre-v2, en què eludir la protecció addicional (Intel eIBRS i Arm CSV2) i organitzar la fuita de dades, la substitució de valors al memòria intermèdia amb un historial de branca global (Búfer d'historial de branca ), que s'utilitza a la CPU per millorar la bifurcació de la precisió de la predicció tenint en compte lhistorial de transicions passades.

Durant un atac a través de manipulacions amb l'historial de transicions, es creen condicions per a la predicció incorrecta de la transició i l'execució especulativa de les instruccions necessàries, el resultat de les quals es diposita a la memòria cau.

Amb l'excepció d'usar un memòria intermèdia d'historial de versió en lloc d'un memòria intermèdia d'objectiu de versió, el nou atac és idèntic a Spectre-v2. La tasca de l'atacant és crear tals condicions que la direcció, en realitzar una operació especulativa, preneu de l'àrea de les dades que s'estan determinant.

Després de fer un salt indirecte especulatiu, la direcció de salt llegida de la memòria roman a la memòria cau, després d'això es pot utilitzar un dels mètodes per determinar el contingut de la memòria cau per recuperar-lo en funció d'una anàlisi del canvi en el temps d'accés a la memòria cau i dades no emmagatzemades a la memòria cau.

Els investigadors han demostrat un exploit funcional que permet que l'espai de l'usuari tregui dades arbitràries de la memòria del nucli.

Per exemple, es mostra com, usant l'exploit preparat, és possible extreure dels buffers del nucli una cadena amb un hash de la contrasenya de l'usuari root, carregada des del fitxer /etc/shadow.

L'exploit demostra la capacitat d'explotar la vulnerabilitat dins un únic nivell de privilegi (atac de nucli a nucli) utilitzant un programa eBPF carregat per l'usuari. Tampoc no es descarta la possibilitat d'utilitzar els gadgets de Spectre existents al codi del nucli, seqüències d'ordres que condueixen a l'execució especulativa d'instruccions.

la vulnerabilitat apareix a la majoria dels processadors Intel actuals, amb l'excepció de la família de processadors Atom i en diversos dels processadors ARM.

Segons la investigació, la vulnerabilitat no es manifesta als processadors AMD. Per solucionar el problema, s'han proposat diversos mètodes de programari per bloquejar la vulnerabilitat, que es poden utilitzar abans de laparició de la protecció de maquinari en futurs models de CPU.

Per bloquejar atacs a través del subsistema eBPF, si recomana deshabilitar per defecte la capacitat de carregar programes eBPF per part d'usuaris sense privilegis escrivint 1 al fitxer «/proc/sys/kernel/unprivileged_bpf_disabled» o ​​executant l'ordre «sysctl -w kernel .unprivileged_bpf_disabled=1».

Per bloquejar atacs a través de gadgets, es recomana utilitzar la instrucció LFENCE en seccions de codi que potencialment condueixin a una execució especulativa. Cal destacar que la configuració predeterminada de la majoria de distribucions de Linux ja conté les mesures de protecció necessàries suficients per bloquejar l'atac eBPF demostrat pels investigadors.

Les recomanacions d'Intel per deshabilitar l'accés sense privilegis a eBPF també s'apliquen per defecte a partir del nucli de Linux 5.16 i s'adaptaran a branques anteriors.

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: Miguel Ángel Gatón
  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ó.