TONTOU: Një sulm i ri Spectre v2 ndaj AMD dhe Intel

Pikat kryesore:
  • TONTOU shfrytëzon hapësirën kohore midis pastrimit të buferit të parashikimit dhe përdorimit të tij.
  • Sulmuesit përdorin "Injeksionin Ndërprerës" për të ridrejtuar rrjedhën e bërthamës dhe për të kontaminuar makinerinë e parashikimit.
  •  Ndikon në arkitekturat Zen 1 deri në 4 të AMD dhe në gjenerata të shumta të procesorëve Intel.
  • Patimet zbutëse janë përfshirë tashmë në përditësimet e fundit të kernelit Linux (5 gusht).

Sulmi i TONTOU-t

A është e mundur që shpejtësia e procesorit tuaj të jetë pikërisht ajo që po kompromenton sigurinë tuaj? Për të kuptuar se si procesorët e arrijnë shpejtësinë e tyre , duhet të marrim në konsideratë se ata funksionojnë duke "parashikuar të ardhmen"... Jo, ata nuk janë magjikë dhe as nuk kanë një top të vogël kristali...

Mënyra se si funksionojnë procesorët është se, në vend që të presin për të parë se cilën rrugë do të ndjekë një program, çipi parashikon rrugën e mundshme dhe e parashikon atë. Nëse parashikimi është i pasaktë, puna hidhet poshtë, por gjurmët mbeten në memorie. Këtu hyn në lojë Spectre , një nga dobësitë më të rëndësishme të zbuluara vitet e fundit. Që nga zbulimi i tij, sulmuesit kanë mësuar si t'i lexojnë këto gjurmë, duke krijuar variante gjithnjë e më të sofistikuara; TONTOU është një nga këto dobësi të reja.

Studiuesit e MIT kanë zbuluar TONTOU (Koha-e-Neutralizimit në Kohën-e-Përdorimit), një teknikë e re dhe e sofistikuar për shfrytëzimin e dobësive të Spectre v2 , duke lejuar që memoria e bërthamës të lexohet nga hapësira e përdoruesit.

Edhe pse prodhuesit dhe zhvilluesit kanë projektuar mekanizma të ndryshëm mbrojtës kundër sulmeve parashikuese për vite me radhë, sulmuesit kanë arritur të zbulojnë rrugë të reja, dhe ky studim i ri i CSAIL tregon se si t'i anashkalohen këto mbrojtje.

Studiuesit zbuluan se ekziston një boshllëk kohor i pashmangshëm midis momentit kur pastrohet memoria e përkohshme dhe momentit kur përdoren parashikimet, dhe është në këtë boshllëk të vogël që kodi (ndonjëherë vetëm një grusht udhëzimesh) injektohet përmes ndërprerjeve të sistemit, duke bërë të mundur ri-kontaminimin e pajisjeve dhe nxjerrjen e të dhënave kritike.

Lidhur me Sulmin: Ndërprerjet dhe Shkelja në Safe-RET

AMD ka një mbrojtje kundër dobësive SRSO (Speculative Return Stack Overflow) të quajtur Saferet, e cila pastron mekanizmin e parashikimit menjëherë para çdo përdorimi. Kjo lë një dritare dobësie që mund të shfrytëzohet brenda disa dhjetëra nanosekondave. Për të sulmuar një dritare kaq të vogël, studiuesit zhvilluan një teknikë që e quajtën Injeksion Ndërprerës.

Procesorët i ndërpresin vazhdimisht detyrat e tyre për të trajtuar ndërprerjet, dhe programet e zakonshme mund t'i konfigurojnë këta kohëmatës . Duke pasur parasysh këtë, studiuesit rregulluan me saktësi një kohëmatës dhe, duke përdorur një teknikë për të ngadalësuar CPU-në, shkaktuan ndërprerjen e procesorit pikërisht në momentin e gabuar . Gjatë kësaj ndërprerjeje, një sulmues mund të detyrojë ekzekutimin e një numri të madh thirrjesh, duke e tejmbushur pirgun e adresave. Kur përfundon ekzekutimi i gabuar, procesori e hedh poshtë procesin, por të dhënat e aksesuara mbeten në memorjet e përbashkëta të përkohshme , nga ku mund të nxirren duke analizuar kohët e aksesit.

Nxjerrja dhe Testimi i Fjalëkalimeve në Sisteme Reale

Për të demonstruar ashpërsinë e TONTOU, ekipi ndërtoi një shfrytëzim funksional në një sistem AMD që përdorte një kernel Linux aktual. Pengesa e parë ishte anashkalimi i mbrojtjes që randomizon pozicionin e sistemit operativ në memorie, gjë që ata arritën ta bënin në dhjetë përpjekje, duke zgjatur rreth nëntë minuta për test.

Më pas, ata demonstruan një sulm lokal si një përdorues i paprivilegjuar për të përcaktuar hash-in e fjalëkalimit root, duke nxjerrë me sukses të dhënat me një shpejtësi prej 5.47 bajt për sekondë me saktësi 91.97%. Në 50% të testeve (të cilat zgjatën mesatarisht 18 minuta), ata zbuluan dhe nxorën me sukses përmbajtjen e skedarit të fjalëkalimit. Ndërsa kjo është një shpejtësi e ngadaltë, është më se e mjaftueshme për të kompromentuar në mënyrë kritike një server.

Ndikimi në Intel, AMD dhe patch-in e zbutjes

Ekipi testoi katër breza të procesorëve Intel dhe AMD, duke arritur dështime parashikimi në të dyja arkitekturat. Ndërsa teknika rezultoi e zbatueshme në familjet Zen 1 deri në 4 të AMD , në çipat Intel sulmi anashkaloi dy mbrojtje të ndryshme , megjithëse u vu re sjellje jokonsistente midis brezave të ndryshëm të Intel, duke sugjeruar që mbrojtjet nominale zbatohen ndryshe në harduer.

Si zgjidhje, studiuesit sugjerojnë pastrimin e makinerisë së parashikimit një herë të dytë pasi të përfundojë ndërprerja. Ndërsa kjo masë duket e zbatueshme për AMD, mund të jetë kundërproduktive për Intel, pasi sulmi mbështetet në ndërprerjen që lë një gjendje të qëndrueshme dhe mund ta bëjë sulmin më të besueshëm.

Studiuesit njoftuan AMD dhe Intel në fillim të shkurtit dhe mirëmbajtësit e kernelit Linux në mars. Si rezultat, bllokimi i kodit për të zbutur dobësinë u integrua në kernelin Linux më 5 gusht.

Së fundmi, nëse jeni të interesuar të mësoni më shumë, mund t'i gjeni detajet në lidhjen e mëposhtme.


Shto si burim të preferuar në Google