Spook.js, Spectre ahultasunak Chrome-n ustiatzeko teknika berria

Ikertzaile talde bat Amerikako, Australiako eta Israelgo unibertsitateetatik jakinarazi dute eraso teknika berri bat deskribatu du ahultasunak ustiatzeko aukera ematen duena Chromium bidezko arakatzaileetan Spectre klasea.

Erasoa, izen kodetua Spook.js-k, JavaScript kodea exekutatzean gunea isolatzeko mekanismoa saihesten du eta uneko prozesuaren helbide espazio osoaren edukia irakurtzea, hau da, beste fitxetan exekutatzen diren baina prozesu berean prozesatzen diren orrien datuetara sartzea.

Chrome-k prozesu desberdinetan gune desberdinak abiarazten dituenez, eraso praktikoak erabiltzaile ezberdinek beren orriak ostatatzea ahalbidetzen duten zerbitzuetara mugatzen dira. Spook.js eraso metodoak erasotzaile batek bere JavaScript kodea txerta dezakeen orri batetik posible da, zehaztu gune bereko erabiltzaileak irekitako beste orrien presentzia eta isilpeko informazioa atera horietatik, adibidez, egiaztagiriak edo banku-datuak automatikoki osatutako sistemak ordezkatutako web inprimakietan.

Metodoaren beste aplikazio bat arakatzailearen pluginen aurkako erasoa da, horri esker, erasotzaileak kontrolatutako plugina instalatuta dagoenean, beste plug-in batzuetatik datuak ateratzea.

Spook.js Chromium motorrean oinarritutako edozein arakatzaileri aplika dakioke, besteak beste, Google Chrome, Microsoft Edge eta Brave. Ikertzaileek uste dute metodoa Firefoxekin lan egiteko egokitu daitekeela, baina Firefox motorra Chrome-tik oso desberdina denez, horrelako ustiapen bat sortzeko lana etorkizunean geratzen da.

Arakatzailearen bidez argibideak exekuzio espekulatiboarekin erlazionatutako erasoen aurka babesteko, Chrome-n helbideen espazioaren segmentazioa ezartzen da: sandbox isolatzeak JavaScript 32 biteko erakusleekin soilik funtziona dezake eta kontrolagailuaren memoria partekatzen ez duten 4 GB piletan.

Prozesuaren helbide espazio osorako sarbidea antolatzeko eta 32 biteko muga saihesteko, ikertzaileek mota nahasketaren teknika erabili dute, hau da, JavaScript motorrak okerreko mota duen objektu bat prozesatzea ahalbidetzen du, 64 biteko osaketa ahalbidetuz. 32 biteko bi balioen konbinazioan oinarritutako kodea.

Erasoaren funtsa da Javascript motorrean bereziki landutako objektu maltzur bat prozesatzean, array-ra sartzen diren argibideen exekuzio espekulatiboa eragiten duten baldintzak sortzen direla. Objektua erasotzaileek kontrolatutako eremuak 64 biteko erakuslea erabiltzen den eremuan kokatzeko moduan hautatzen da.

Objektu maltzur mota prozesatzen ez den array motarekin bat ez datorrenez, baldintza normaletan ekintza horiek Chrome-n blokeatzen dira matrizeetan sartzeko erabiltzen den kodearen desoptimizazio mekanismoaren bidez. Arazo hau konpontzeko, Type Confusion eraso kodea "if" baldintzazko bloke batean kokatzen da, baldintza normaletan tiro egiten ez duena, baina modu espekulatiboan exekutatzen bada, prozesadoreak adar gehiago gaizki iragartzen baditu.

Ondorioz, prozesadoreak espekulatiboki sartuko du sortutako 64 biteko erakuslea eta egoera itzuliko du huts egin duen iragarpena zehaztu ondoren, baina exekuzioaren aztarnak partekatutako cachean ezarrita daude eta cachearen edukia hirugarrenen bidez zehazteko metodoen bidez berreskura daitezke. alderdien kanalak, gordetako eta ez gordetako datuetarako sarbide-denboraren aldaketa aztertuz.

Javascript-en erabilgarri dagoen tenporizadorearen zehaztasun nahikorreko baldintzetan cache-aren edukia aztertzeko, Google-k proposatutako metodo bat erabiltzen da prozesadoreetan erabilitako Tree-PLRU cache datuak kanporatzeko estrategia trukatzen duena eta ahalbidetzen duena, zenbaki zikloak handituz, cachean balio baten presentzia eta ez egotearen denbora aldea nabarmen handitu.

Ikertzaileek Chrome 89 e-n funtzionatzen duen prototipo ustiapena kaleratu duten Intel i7-6700K eta i7-7600U sistemekin. Google-k aurretik argitaratutako JavaScript kodearen prototipoak erabiliz sortu zen ustiapena Spectre erasoak burutzeko.

Azkenean ikertzaileek hori aipatu dute Intel eta Apple M1 prozesadoreetan oinarritutako sistemetarako lan-ustiapenak prestatzea lortu zuen, irakurritako memoria segundoko 500 byteko abiaduran eta% 96ko zehaztasunean antolatzeko aukera ematen zaie. Metodoa AMD prozesadoreei aplika dakiekeela uste da, baina ezin izan da erabat ustiapen funtzionala prestatu.

Fuente: https://www.spookjs.com


Artikuluaren edukia gure printzipioekin bat dator etika editoriala. Akats baten berri emateko egin klik hemen.

Idatzi lehenengo iruzkina

Utzi zure iruzkina

Zure helbide elektronikoa ez da argitaratuko. Beharrezko eremuak markatuta daude *

*

*

  1. Datuen arduraduna: Miguel Ángel Gatón
  2. Datuen xedea: SPAM kontrolatzea, iruzkinen kudeaketa.
  3. Legitimazioa: Zure baimena
  4. Datuen komunikazioa: datuak ez zaizkie hirugarrenei jakinaraziko legezko betebeharrez izan ezik.
  5. Datuak biltegiratzea: Occentus Networks-ek (EB) ostatatutako datu-basea
  6. Eskubideak: Edonoiz zure informazioa mugatu, berreskuratu eta ezabatu dezakezu.