Spook.js, 'n nuwe tegniek om Specter -kwesbaarhede in Chrome te benut

'N Groep navorsers van Amerikaanse, Australiese en Israeliese universiteite berig dat beskryf 'n nuwe aanvalstegniek waarmee kwesbaarhede benut kan word Spookklas op blaaiers wat deur chroom aangedryf word.

Die aanval, kodenaam Spook.js, laat die JavaScript -meganisme toe om JavaScript -kode uit te voer en die lees van die inhoud van die hele adresruimte van die huidige proses, dit wil sê toegang tot die data van die bladsye wat op ander oortjies uitgevoer word, maar wat in dieselfde proses verwerk word.

Aangesien Chrome verskillende werwe in verskillende prosesse bekendstel, is praktiese aanvalle beperk tot dienste waarmee verskillende gebruikers hul bladsye kan huisves. Die aanvalmetode van Spook.js maak dit moontlik vanaf 'n bladsy waarin 'n aanvaller sy JavaScript -kode kan insluit, bepaal die teenwoordigheid van ander bladsye wat deur die gebruiker van dieselfde webwerf oopgemaak is en haal vertroulike inligting uit van hulle, byvoorbeeld, geloofsbriewe of bankbesonderhede wat deur die outomatiese stelsel in webvorms vervang word.

'N Ander toepassing van die metode is 'n aanval op blaaier -inproppe, wat dit moontlik maak om data uit ander inproppe te onttrek wanneer 'n inprop-in-plug-in geïnstalleer word.

Spook.js is van toepassing op enige blaaier wat gebaseer is op die Chromium -enjin, insluitend Google Chrome, Microsoft Edge en Brave. Die navorsers meen ook dat die metode aangepas kan word om met Firefox te werk, maar omdat die Firefox -enjin baie verskil van Chrome, word die werk om so 'n ontginning te skep, aan die toekoms oorgelaat.

Om te beskerm teen aanvalle wat verband hou met spekulatiewe uitvoering van instruksies deur die blaaier, word adresruimtesegmentering in Chrome geïmplementeer: sandbox-isolasie laat JavaScript toe om slegs met 32-bis-aanwysers te werk en deel die geheue van die beheerder in nie-oorvleuelende stapels van 4 GB.

Om toegang tot die hele adresruimte van die proses te organiseer en die 32-bis-beperking te vermy, het die navorsers die tipe verwarringstegniek gebruik, waarmee die JavaScript-enjin 'n voorwerp met die verkeerde tipe kan verwerk, wat dit moontlik maak om 'n 64-bis te vorm kode gebaseer op 'n kombinasie van twee 32-bis waardes.

Die kern van die aanval is dat deur die verwerking van 'n spesiaal vervaardigde kwaadwillige voorwerp in die JavaScript -enjin, toestande geskep word wat lei tot die spekulatiewe uitvoering van instruksies wat toegang tot die skikking het. Die voorwerp word so gekies dat die velde wat deur die aanvallers beheer word, in die gebied geplaas word waar die 64-bis wyser gebruik word.

Aangesien die tipe kwaadwillige voorwerp nie ooreenstem met die tipe skikking wat verwerk word nie, word sulke aksies onder normale omstandighede in Chrome geblokkeer deur die deoptimeringsmeganisme van die kode wat gebruik word om toegang tot die skikkings te verkry. Om hierdie probleem op te los, word die Type Confusion -aanvalskode in 'n voorwaardelike "if" -blok geplaas, wat nie onder normale omstandighede afvuur nie, maar in spekulatiewe modus loop, as die verwerker meer takke verkeerd voorspel.

As gevolg hiervan kry die verwerker spekulatief toegang tot die gegenereerde 64-bis-wyser en keer die toestand terug na die bepaling van die mislukte voorspelling, maar die uitvoeringsspore word in die gedeelde kas opgesit en kan met behulp van metodes herstel word om die inhoud van die kas tot en met derde te bepaal. partykanale, en ontleed die verandering in toegangstyd tot in die kas en nie-gekaste data.

Om die inhoud van die kas te ontleed in die omstandighede van onvoldoende akkuraatheid van die timer wat in JavaScript beskikbaar is, word 'n metode wat deur Google voorgestel word, gebruik om die Tree-PLRU-kasdata-uitsettingsstrategie wat in verwerkers gebruik word, te mislei en deur die aantal siklusse te laat toeneem, verhoog die tydsverskil in die teenwoordigheid en afwesigheid van 'n waarde in die kas.

Navorsers het 'n prototipe -uitbuiting vrygestel wat in Chrome 89 e werkn stelsels met Intel i7-6700K en i7-7600U. Die ontginning is geskep met prototipes van JavaScript -kode wat voorheen deur Google gepubliseer is om Spectre -aanvalle uit te voer.

Uiteindelik noem die navorsers dit dit reggekry om werksoortuigings voor te berei vir stelsels gebaseer op Intel- en Apple M1 -verwerkers, wat die geleentheid kry om die geheuelees te organiseer teen 'n spoed van 500 grepe per sekonde en 'n akkuraatheid van 96%. Die metode is veronderstel om van toepassing te wees op AMD -verwerkers, maar dit was nie moontlik om 'n ten volle funksionele ontginning voor te berei nie.

Fuente: https://www.spookjs.com


Die inhoud van die artikel voldoen aan ons beginsels van redaksionele etiek. Klik op om 'n fout te rapporteer hier.

Wees die eerste om te kommentaar lewer

Laat u kommentaar

Jou e-posadres sal nie gepubliseer word nie. Verpligte velde gemerk met *

*

*

  1. Verantwoordelik vir die data: Miguel Ángel Gatón
  2. Doel van die data: Beheer SPAM, bestuur van kommentaar.
  3. Wettiging: U toestemming
  4. Kommunikasie van die data: Die data sal nie aan derde partye oorgedra word nie, behalwe deur wettige verpligtinge.
  5. Datastoor: databasis aangebied deur Occentus Networks (EU)
  6. Regte: U kan u inligting te alle tye beperk, herstel en verwyder.