Ata zhvilluan një seri sulmesh të rikuperimit të cache të CPU-së në shfletuesit e internetit pa kërkuar JavaScript

Një ekip studiuesish nga universitete të ndryshme Amerikanë, izraelitë dhe australianë ka zhvilluar tre sulme që synojnë shfletuesit e internetit që lejojnë nxjerrjen e informacionit në lidhje me përmbajtjen e cache të procesorit. Një metodë punon në shfletues pa JavaScriptt dhe dy të tjerët anashkalojnë metodat ekzistuese të mbrojtjes kundër sulmeve përmes kanaleve të palëve të treta, duke përfshirë ato të përdorura në shfletuesin Tor dhe DeterFox.

Për të analizuar përmbajtjen e cache në të gjitha sulmet përdorin metodën "Prime + Probe"Që përfshin mbushjen e cache me një sërë vlerash referuese dhe përcaktimin e ndryshimeve duke matur kohën e hyrjes atyre kur karikohet. Në mënyrë që të anashkalohen mekanizmat e sigurisë të pranishëm në shfletuesit, të cilët parandalojnë matjen e saktë të kohës, në dy versione thirret një server i kontrolluar sulmues DNS ose WebSocket, i cili mban një regjistër të kohës së marrjes së kërkesave. Në një mishërim, koha fikse e përgjigjes së DNS përdoret si referencë kohore.

Matjet e bëra duke përdorur servera të jashtëm DNS ose WebSocket, falë përdorimit të një sistemi klasifikimi të bazuar në të mësuarit e makinës, ishin të mjaftueshme për të parashikuar vlera me një saktësi prej 98% në skenarin më optimal (mesatarisht 80-90%). Metodat e sulmit janë testuar në platforma të ndryshme hardware (Intel, AMD Ryzen, Apple M1, Samsung Exynos) dhe janë provuar të jenë të gjithanshme.

Varianti i parë i sulmit DNS Racing përdor një implementim klasik të metodës Prime + Probe duke përdorur vargje JavaScript. Dallimet vijnë për shkak të përdorimit të një kohëmatësi të jashtëm të bazuar në DNS dhe një mbajtës gabimesh që ndizet kur përpiqeni të ngarkoni një imazh nga një domen inekzistent. Kohëmatësi i jashtëm lejon sulmet Prime + Probe në shfletuesit që kufizojnë ose çaktivizojnë plotësisht hyrjen në kohëmatës JavaScript.

Për një server DNS të vendosur në të njëjtin rrjet Ethernet, saktësia e kohëmatësit vlerësohet të jetë rreth 2 ms, e cila është e mjaftueshme për të kryer një sulm të kanalit anësor (për krahasim: saktësia e kohëmatësit standard të JavaScript në shfletuesin Tor ka janë zvogëluar në 100ms). Për sulmin, nuk kërkohet kontroll mbi serverin DNS, pasi koha e ekzekutimit të operacionit është zgjedhur në mënyrë që koha e përgjigjes së DNS të shërbejë si një sinjal i një përfundimi të hershëm të verifikimit (në varësi të faktit nëse administruesi i gabimit është shkaktuar më herët ose më vonë). , konkludohet se operacioni i verifikimit me memorien e fshehtë ka përfunduar) ...

Sulmi i dytë "String and Sock" është krijuar për të anashkaluar teknikat e sigurisë të cilat kufizojnë përdorimin e vargjeve të nivelit të ulët JavaScript. Në vend të vargjeve, String dhe Sock përdor operacione në vargje shumë të mëdha, madhësia e të cilave zgjidhet në mënyrë që variabla të mbulojë të gjithë cache LLC (memori i nivelit të lartë).

Tjetra, duke përdorur funksionin indexOf (), kërkohet një varg i vogël në varg, i cili fillimisht mungon në vargun origjinal, domethënë, operacioni i kërkimit rezulton në një përsëritje mbi të gjithë vargun. Meqenëse madhësia e linjës korrespondon me madhësinë e cache të LLC, skanimi lejon që të kryhet një operacion i kontrollit të cache pa manipuluar vargjet. Për të matur vonesat, në vend të DNS, ky është një apel për një server sulmues WebSocket të kontrolluar nga sulmuesi: para fillimit dhe pas përfundimit të operacionit të kërkimit, kërkesat dërgohen në zinxhir,

Versioni i tretë i sulmit "CSS PP0" përmes HTML dhe CSS dhe mund të funksionojë në shfletues me JavaScript të çaktivizuar. Kjo metodë duket si "Varg dhe Çorapë" por nuk lidhet me JavaScript. Sulmi gjeneron një sërë përzgjedhësish CSS që kërkojnë me maskë. Linja e shkëlqyeshme origjinale që mbush memorien e përkohshme vendoset duke krijuar një etiketë div me një emër shumë të madh të klasës, dhen e cila brenda ka një grup divësh të tjerë me identifikuesit e tyre.

Secila prej tyre këto ndarje të ndara vendosen me një përzgjedhës që kërkon një nënshtresë. Kur jep faqen, shfletuesi së pari përpiqet të përpunojë ndarjet e brendshme, gjë që rezulton në një kërkim në një varg të madh. Kërkimi bëhet duke përdorur një maskë që mungon dukshëm dhe çon në një përsëritje të të gjithë vargut, pas së cilës shkaktohet kushti "jo" dhe bëhet një përpjekje për të ngarkuar imazhin e sfondit.


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.