LVI PUZaren exekuzio mekanismo espekulatiboaren aurkako eraso klase berri bat da

Argitaratu eraso-klase berri bati buruzko informazioa LVI (Karga-balioa injekzioa, CVE-2020-0551) Intel PUZetako exekuzio-mekanismo espekulatiboari buruz, Intel SGX enklabeetatik eta beste prozesu batzuetatik gakoak eta datu sekretuak filtratzeko erabil daitekeena.

Eraso-klase berri bat erasoetan erabiltzen diren mikroarkitektura-egitura berdinen manipulazioan oinarritzen da MDS (Datu Mikroarkitekturaren Laginketa), Spectre eta Meltdown. Aldi berean, eraso berriak ez dira blokeatzen Meltdown, Spectre, MDS eta antzeko beste eraso batzuen aurka babesteko dauden metodoek. LVI babes eraginkorrak hardware-aldaketak behar ditu CPUan. Babesa programatikoki antolatzean, memoriatik kargatzeko eragiketa bakoitzaren ondoren konpilatzaileak LFENCE instrukzioa gehituz eta RET instrukzioa POP, LFENCE eta JMPrekin ordezkatuz, gainkostu gehiegi erregistratzen da - ikertzaileen arabera, softwarearen babes osoa murriztuko da. errendimendua 2-19 aldiz.

Arazoa blokeatzeko zailtasunaren zati bat gaur egun erasoa teorikoagoa baino praktikoagoa izateak konpentsatzen du (erasoa teorikoki posible da, baina gauzatzeko oso zaila eta proba sintetikoetan soilik erreproduzigarria).
Intel bereganatu arazoak arrisku maila moderatua du (5.6etik 10) eta kaleratu SGX ingurunerako firmwarea eta SDK eguneratzen, bertan erasoa blokeatzen saiatu zen konponbide bat erabiliz. Proposatutako eraso-metodoak Intel prozesadoreetan soilik aplikatzen dira, baina ezin da baztertu Meltdown klaseko erasoak aplikatzen zaizkien beste prozesadore batzuetarako LVI egokitzeko aukera.

Joan den apirilean Lovainako Unibertsitateko Jo Van Bulck ikertzaileak identifikatu zuen arazoa, eta ondoren, beste unibertsitate batzuetako 9 ikertzaileren parte-hartzearekin, oinarrizko bost eraso-metodo garatu ziren, eta horietako bakoitzak zehatzagoak izatea ahalbidetzen du. aukerak. Era autonomoan, aurtengo otsailean, Bitdefender-eko ikertzaileak ere bai aurkitu LVI eraso aldaeretako bat eta Intel-i jakinarazi zion. Eraso-aldaerak mikroarkitektura-egitura desberdinak erabiltzeagatik bereizten dira, hala nola biltegiratze-buffera (SB, Store Buffer), betetze-buffera (LFB, Line Fill Buffer), FPU testuinguru-aldaketaren buffera eta lehen mailako cachea (L1D), aurretik erabilia. bezalako erasoetan ZombieLoad, RIDL, Fallout, LazyFP, Aurreikuspena ΠΈ Meltdown.

LVI PUZaren exekuzio mekanismo espekulatiboaren aurkako eraso klase berri bat da

Nagusia ohoreak MDS erasoen aurkako LVI-k hauxe da: MDSk manipulatzen duela cachean geratzen diren mikroarkitektura-egituren edukia zehaztea, akats espekulatiboak kudeatzeko edo kargatu eta biltegiratzeko eragiketen ondoren,
LVI erasoei esker, erasotzailearen datuak mikroarkitektura-egituretan txerta daitezke biktimaren kodearen ondorengo exekuzio espekulatiboan eragiteko. Manipulazio hauek erabiliz, erasotzaileak beste prozesu batzuetan datu-egitura pribatuen edukia atera dezake helburuko PUZaren nukleoan kode jakin batzuk exekutatzen dituenean.

LVI PUZaren exekuzio mekanismo espekulatiboaren aurkako eraso klase berri bat da

For ustiapen arazoa biktima prozesuaren kodean bildu beharko luke Erasotzaileak kontrolatutako balio bat kargatzen den kode-sekuentzia bereziak (gadgets), eta balio hori kargatzeak salbuespenak (matxura, abortua edo laguntza) botatzea eragiten du, emaitza baztertuz eta instrukzioa berriro exekutatuz. Salbuespen bat prozesatzen denean, leiho espekulatibo bat agertzen da eta bertan tramankuluan prozesatutako datuak filtratzen dira. Bereziki, prozesadorea kode zati bat (gadget) modu espekulatiboan exekutatzen hasten da, gero iragarpena justifikatu ez zela zehazten du eta eragiketak jatorrizko egoerara itzultzen ditu, baina exekuzio espekulatiboan prozesatutako datuak L1D cachean gordetzen dira. eta mikroarkitektura-buffer eta haietatik berreskuratzeko erabilgarri dago hirugarrenen kanalen bidez hondar datuak zehazteko metodo ezagunak erabiliz.

"Asistentzia" salbuespena, "matxura" salbuespena ez bezala, barnean kudeatzen du prozesadoreak software-kudeatzaileei deitu gabe. Laguntza gerta daiteke, adibidez, memoria-orriaren taulako A (sartuta) edo D (zikina) bita eguneratu behar denean. Beste prozesu batzuen aurkako erasoa egiteko zailtasun nagusia biktima prozesua manipulatuz laguntzaren agerpena nola abiarazi da. Gaur egun ez dago hori egiteko modu fidagarririk, baina baliteke etorkizunean aurkitzea. Eraso bat egiteko aukera orain arte Intel SGX enklabeetarako bakarrik baieztatu da, beste eszenatoki batzuk teorikoak dira edo baldintza sintetikoetan erreproduzigarriak dira (kodeari zenbait gadget gehitzea eskatzen du)

LVI PUZaren exekuzio mekanismo espekulatiboaren aurkako eraso klase berri bat da

LVI PUZaren exekuzio mekanismo espekulatiboaren aurkako eraso klase berri bat da

Eraso-bektore posibleak:

  • Nukleoko egituretatik datuen ihesa erabiltzaile-mailako prozesura. Linux kernelak Spectre 1 erasoen aurkako babesak, baita SMAP (Supervisor Mode Access Prevention) babes-mekanismoak ere, LVI erasoaren probabilitatea nabarmen murrizten du. Nukleoari babes gehigarria gehitzea beharrezkoa izan daiteke etorkizunean LVI eraso metodo sinpleagoak identifikatzen badira.
  • Prozesu ezberdinen arteko datu-ihesketa. Erasoak aplikazioan kode zati batzuk egotea eta xede-prozesuan salbuespen bat botatzeko metodo baten definizioa eskatzen du.
  • Ostalari-ingurunetik sistema gonbidatura datuen ihesa. Erasoa konplexuegia bezala sailkatuta dago, eta sisteman inplementatzeko zailak diren hainbat urrats eta jardueraren iragarpenak eskatzen ditu.
  • Gonbidatutako sistema desberdinetako prozesuen arteko datu-ihesketa. Eraso-bektorea prozesu desberdinen artean datuen ihesa antolatzetik gertu dago, baina, gainera, manipulazio konplexuak behar ditu sistema gonbidatuen arteko isolamendua saihesteko.

Ikertzaileek argitaratua hainbat prototipoak erasoa egiteko printzipioen erakustaldiarekin, baina oraindik ez dira egokiak benetako erasoak egiteko. Lehenengo adibideak biktimaren prozesuan kode espekulatiboaren exekuzioa birbideratzeko aukera ematen du, itzulera bideratutako programazioaren antzera (ROP,Itzulera Orientatutako Programazioa). Adibide honetan, biktima bereziki prestatutako prozesu bat da, beharrezko gadgetak dituena (zaila da benetako hirugarrenen prozesuei erasoa aplikatzea). Bigarren adibideari esker, Intel SGX enklabearen barruan AES enkriptatzean kalkuluetan sartzeko eta datu-ihes bat antolatzeko argibideak espekulatiboki exekutatzen diren bitartean enkriptatzeko erabilitako gakoaren balioa berreskuratzeko.


Iturria: opennet.ru

Gehitu iruzkin berria