Spook.js, nova tehnika za iskorištavanje Spectrevih ranjivosti u Chromeu

Skupina istraživača s američkih, australskih i izraelskih sveučilišta opisao novu tehniku ​​napada što omogućuje iskorištavanje ranjivosti Klasa savršenstva u preglednicima na Chromiumu.

Napad pod kodnim imenom Spook.js, omogućuje prilikom izvođenja JavaScript koda zaobići mehanizam izolacije web mjesta i čitanje sadržaja čitavog adresnog prostora tekućeg procesa, odnosno pristup podacima stranica koje se izvršavaju na drugim karticama, ali se obrađuju u istom procesu.

Budući da Chrome pokreće različite web lokacije u različitim procesima, praktični napadi ograničeni su na usluge koje dopuštaju različitim korisnicima da ugoste njihove stranice. Metoda napada Spook.js omogućuje sa stranice u koju napadač može ugraditi svoj JavaScript kod, utvrditi prisutnost drugih stranica koje je otvorio korisnik iste web stranice i izvući povjerljive podatke od njih, na primjer, vjerodajnice ili bankovni podaci zamijenjeni sustavom za automatsko dovršavanje u web obrascima.

Druga primjena metode je napad na dodatke preglednika, što omogućuje, kada je instaliran dodatak kojim upravlja napadač, izdvajanje podataka iz drugih dodataka.

Spook.js je primjenjiv na bilo koji preglednik temeljen na Chromium motoru, uključujući Google Chrome, Microsoft Edge i Brave. Istraživači također vjeruju da se metoda može prilagoditi radu s Firefoxom, ali budući da se Firefoxov stroj jako razlikuje od Chromea, rad na stvaranju takvog iskorištavanja prepušten je budućnosti.

Kako bi se zaštitili od napada povezanih sa spekulativnim izvršavanjem uputa putem preglednika, segmentacija adresnog prostora implementirana je u Chromeu: izolacija pješčanika omogućuje JavaScript da radi samo s 32-bitnim pokazivačima i dijeli memoriju kontrolera u nepreklapajućim hrpama od 4 GB.

Kako bi organizirali pristup cijelom adresnom prostoru procesa i izbjegli 32-bitno ograničenje, istraživači su koristili tehniku ​​zabune tipa koja omogućuje JavaScript motoru da obradi objekt pogrešnog tipa, što omogućuje formiranje 64-bitnog kod temeljen na kombinaciji dviju 32-bitnih vrijednosti.

Bit napada je u tome što se obradom posebno izrađenog zlonamjernog objekta u JavaScript stroju stvaraju uvjeti koji dovode do spekulativnog izvršavanja uputa koje pristupaju nizu. Objekt je odabran na način da se polja koja kontroliraju napadači postavljaju u područje gdje se koristi 64-bitni pokazivač.

Budući da vrsta zlonamjernog objekta ne odgovara vrsti niza koji se obrađuje, u normalnim uvjetima takve radnje su blokirane u Chromeu mehanizmom dezoptimizacije koda koji se koristi za pristup nizovima. Kako bi riješio ovaj problem, kôd napada Type Confusion napada stavlja se u uvjetni blok "if", koji se ne pokreće u normalnim uvjetima, ali radi u spekulativnom načinu, ako procesor pogrešno predvidi više grana.

Kao rezultat toga, procesor spekulativno pristupa generiranom 64-bitnom pokazivaču i vraća stanje nakon utvrđivanja neuspješnog predviđanja, ali su tragovi izvođenja postavljeni u dijeljenoj predmemoriji i mogu se vratiti pomoću metoda za određivanje sadržaja predmemorije kroz treći- stranačkih kanala, analizirajući promjenu vremena pristupa predmemoriranim podacima i podacima koji nisu predmemorirani.

Za analizu sadržaja predmemorije u uvjetima nedovoljne preciznosti odbrojavanja dostupnog u JavaScriptu, koristi se metoda koju je predložio Google koja zavarava strategiju izbacivanja podataka iz predmemorije Tree-PLRU koja se koristi u procesorima i omogućuje, povećavajući broj ciklusa, značajno povećati vremensku razliku u prisutnosti i odsutnosti vrijednosti u predmemoriji.

Istraživači su objavili prototip eksploatacije koji radi u Chromeu 89 en sustavi s Intel i7-6700K i i7-7600U. Eksploatacija je nastala korištenjem prototipova JavaScript koda koji je prethodno objavio Google za izvođenje Spectre napada.

Konačno, istraživači to spominju uspio pripremiti radne podvige za sustave temeljene na procesorima Intel i Apple M1, koji imaju priliku organizirati čitanje memorije brzinom od 500 bajtova u sekundi i točnošću od 96%. Metoda bi trebala biti primjenjiva na AMD procesorima, ali nije bilo moguće pripremiti potpuno funkcionalan exploit.

izvor: https://www.spookjs.com


Ostavite svoj komentar

Vaša email adresa neće biti objavljen. Obavezna polja su označena s *

*

*

  1. Za podatke odgovoran: Miguel Ángel Gatón
  2. Svrha podataka: Kontrola neželjene pošte, upravljanje komentarima.
  3. Legitimacija: Vaš pristanak
  4. Komunikacija podataka: Podaci se neće dostavljati trećim stranama, osim po zakonskoj obvezi.
  5. Pohrana podataka: Baza podataka koju hostira Occentus Networks (EU)
  6. Prava: U bilo kojem trenutku možete ograničiti, oporaviti i izbrisati svoje podatke.