LVI: një klasë e re e sulmeve ekzekutuese spekulative në CPU-të Intel

Informacione rreth një klasë e re sulmesh LVI në mekanizëm ekzekutimi spekulativ që prek Intel, i cili mund të përdoret për nxjerrjen e çelësave dhe të dhënave të ndjeshme nga enklavat Intel SGX dhe procese të tjera.

Klasa e re e sulmeve bazohet në manipulime me të njëjtat struktura mikroarkitektonike si në sulmet MDS, Specter dhe Meltdown. Në të njëjtën kohë, sulmet e reja nuk bllokohen nga metodat ekzistuese mbrojtje ndaj Meltdown, Spectre, MDS dhe sulmeve të tjera të ngjashme.

Rreth LVI

Problemi u identifikua në prill të vitit të kaluar nga studiuesi Jo Van Bulck nga Universiteti i Leuven, pas së cilës, me pjesëmarrjen e 9 studiuesve nga universitete të tjera, u zhvilluan pesë metoda themelore të sulmit, secila prej të cilave lejon mundësi më specifike.

Gjithsesi, në shkurt të këtij viti, Studiuesit e Bitdefender gjithashtu zbuluan një nga opsionet e sulmit LVI dhe e raportoi atë tek Intel.

Opsionet e sulmit dallohen nga përdorimi i strukturave të ndryshme mikroarkitektonike, si Buffer Store (SB, Buffer Store), Buffer Fill (LFB, Buffer Fill Fill), Buffer FPU Context Switch dhe Cache i Nivelit të Parë (L1D), të përdorura më parë në sulme si ZombieLoad, RIDL, Fallout, LazyFP, Foreshadow dhe Shkrirja.

Dallimi kryesor midis Unë i sulmoj atas LVI dhe MDS është se MDS manipulon përcaktimin e përmbajtjes të strukturave mikroarkitektonike që mbeten në memorje të fshehtë pas trajtimit të gabimeve spekulative ose ngarkesave dhe ruajtjeve ndërsa Sulmet LVI lejojnë që sulmuesi të zëvendësohet në strukturat mikroarkitektonike për të ndikuar në ekzekutimin pasues spekulativ të kodit të viktimës.

Duke përdorur këto manipulime, një sulmues mund të nxjerrë përmbajtjen e strukturave të mbyllura të të dhënave në procese të tjera gjatë ekzekutimit të kodit të caktuar në thelbin e CPU-së së synuar.

Për shfrytëzim, problemet duhet të gjenden në kodin e procesit dhe dërgoni sekuenca të kodeve speciale (veglave) në të cilat ngarkohet vlera e kontrolluar nga sulmuesi dhe ngarkimi i kësaj vlere shkakton përjashtime që hedhin rezultatin dhe ri-ekzekutojnë udhëzimet.

Kur përpunon një përjashtim, shfaqet një dritare spekulative gjatë së cilës filtrohen të dhënat e përpunuara në vegël.

Në veçanti procesori fillon të ekzekutojë në mënyrë spekulative një pjesë të kodit (një vegël), pastaj përcakton se parashikimi nuk është justifikuar dhe përmbys operacionet, por të dhënat e përpunuara Gjatë ekzekutimit spekulativ vendosen në memorjen memorëse dhe tamponët L1D të dhëna mikroarkitektonike dhe mund të nxirren prej tyre duke përdorur metoda të njohura për të përcaktuar të dhëna të mbetura nga kanalet e palëve të treta.

Vështirësia kryesore për të sulmuar procese të tjera dhes si të fillohet ndihma duke manipuluar procesin e viktimës.

Aktualisht, nuk ka mënyra të besueshme për ta bërë këtë, por në të ardhmen nuk përjashtohet gjetja e tij. Deri më tani mundësia e një sulmi është konfirmuar vetëm për enklavat Intel SGX, skenarë të tjerë janë teorikë ose të riprodhueshëm në kushte sintetike.

Vektorët e mundshëm të sulmit

  • Rrjedhja e të dhënave nga strukturat e kernelit në procesin e nivelit të përdoruesit. Mbrojtja e kernelit Linux kundër sulmeve të Spektrit 1 dhe mekanizmit të mbrojtjes SMAP (Parandalimi i Qasjes në Mënyrën e Mbikëqyrësit) zvogëlojnë ndjeshëm gjasat e një sulmi LVI. Futja e mbrojtjes shtesë të kernelit mund të jetë e nevojshme kur identifikohen metoda më të thjeshta për të kryer një sulm LVI në të ardhmen.
  • Rrjedhja e të dhënave ndërmjet proceseve të ndryshme. Një sulm kërkon praninë e fragmenteve të caktuara të kodit në aplikim dhe përcaktimin e metodës për të ngritur një përjashtim në procesin e synuar.
  • Rrjedhja e të dhënave nga ambienti pritës në sistemin e vizitorëve. Sulmi klasifikohet si shumë kompleks, duke kërkuar zbatimin e disa hapave të vështirë për tu zbatuar dhe parashikimet e aktivitetit në sistem.
  • Rrjedhja e të dhënave ndërmjet proceseve në sisteme të ndryshme të vizitorëve. Vektori i sulmit është afër organizimit të rrjedhjes së të dhënave midis proceseve të ndryshme, por gjithashtu kërkon manipulime komplekse për të shmangur izolimin midis sistemeve të ftuar.

Për të siguruar mbrojtje efektive kundër LVI, kërkohen ndryshime të pajisjeve në CPU. Duke organizuar mbrojtjen në mënyrë programore, duke shtuar deklaratën përpiluese LFENCE pas çdo operacioni të ngarkesës nga memoria, dhe duke zëvendësuar deklaratën RET me POP, LFENCE dhe JMP, rregullon shumë lart; Sipas studiuesve, mbrojtja gjithëpërfshirëse e softuerit do të çojë në një degradim të performancës prej 2 deri në 19 herë.

Fuente: https://www.intel.com


Lini komentin tuaj

Adresa juaj e emailit nuk do të publikohet. Fusha e kërkuar janë shënuar me *

*

*

  1. Përgjegjës për të dhënat: Miguel Ángel Gatón
  2. Qëllimi i të dhënave: Kontrolloni SPAM, menaxhimin e komenteve.
  3. Legjitimimi: Pëlqimi juaj
  4. Komunikimi i të dhënave: Të dhënat nuk do t'u komunikohen palëve të treta përveç me detyrim ligjor.
  5. Ruajtja e të dhënave: Baza e të dhënave e organizuar nga Occentus Networks (BE)
  6. Të drejtat: Në çdo kohë mund të kufizoni, rikuperoni dhe fshini informacionin tuaj.