Google prikazuje iskorištavanje Spectre ranjivosti koristeći JavaScript u pregledniku

Google je predstavio prije nekoliko dana razni eksploatacijski prototipovi koji pokazuju mogućnost iskorištavanja ranjivosti klase Spectre pri izvršavanju JavaScript koda u pregledniku, bez prolaska kroz gore dodane sigurnosne metode.

Eksploati se mogu koristiti za dobivanje pristupa memoriji procesa koja obrađuje web sadržaj u trenutnoj kartici. Da bi se testirao rad exploita, pokrenuto je web mjesto za propusnu stranicu i kod koji opisuje logiku operacije objavljen je na GitHubu.

Predloženi prototip dizajniran je za napadački sustavi s Intel Core i7-6500U procesori u Linuxu i Chrome 88 okruženju, premda to ne isključuje da se mogu napraviti promjene za upotrebu exploita u drugim okruženjima.

Način rada nije specifičan za procesori Intel: nakon pravilne prilagodbe, Potvrđeno je da eksploatacija radi na sustavima s nezavisnim CPU-ima, uključujući Apple M1 koji se temelji na ARM arhitekturi. Nakon manjih podešavanja, exploit također radi na drugim operativnim sustavima i ostalim preglednicima koji se temelje na Chromiumovom mehanizmu.

U okruženju koje se temelji na standardnim procesorima Chrome 88 i Intel Skylake, postigli smo curenje podataka iz procesa odgovornog za prikazivanje web sadržaja na trenutnoj kartici Chrome (postupak prikazivanja) brzinom od 1 kilobajta u sekundi. Uz to su razvijeni alternativni prototipi, na primjer, exploit koji omogućava, po cijenu smanjene stabilnosti, povećati brzinu curenja na 8 kB / s kada se koristi timer performance.now () s preciznošću od 5 mikrosekundi (0.005 milisekundi) ). Također je razvijena varijanta koja je radila s vremenskom preciznošću od jedne milisekunde, koja se mogla koristiti za organiziranje pristupa memoriji drugog procesa brzinom od oko 60 bajta u sekundi.

Objavljeni demo kod sastoji se od tri dijela:

  • Prvi dio kalibrirajte timer za procjenu vremena rada operacija potrebnih za dohvaćanje podataka koji ostaju u predmemoriji procesora kao rezultat špekulativnog izvršavanja CPU uputa.
  • Drugi dio Definira raspored memorije koji se koristi pri dodjeljivanju JavaScript niza.
  • Treći dio izravno iskorištava ranjivost Spectre kako bi odredio sadržaj memorije trenutnog procesa kao rezultat stvaranja uvjeta za spekulativno izvršavanje određenih operacija, čiji rezultat procesor odbacuje nakon utvrđivanja neuspjele prognoze, ali se tragovi izvršenja podmiruju u zajedničkoj predmemoriji i mogu se vratiti pomoću metode za određivanje sadržaja predmemorije pomoću kanala nezavisnih proizvođača koji analiziraju promjenu vremena pristupa predmemoriranim i ne-predmemoriranim podacima.

Predložena tehnika eksploatacije eliminira visoko precizne mjerače vremena dostupan putem API-ja performance.now () i bez podrške za tip SharedArrayBuffer, koji vam omogućuje stvaranje nizova u zajedničkoj memoriji.

Ekploit uključuje uređaj Spectre, koji uzrokuje kontrolirano izvršavanje špekulativnog koda, i analizator propuštanja bočnog kanala, koji određuje koji su podaci predmemorirani tijekom spekulativnog izvršavanja.

Naprava se implementira pomoću JavaScript niza, u kojem pokušava se pristupiti području izvan granica međuspremnika, koji utječe na stanje bloka predviđanja grana zbog prisutnosti provjere veličine međuspremnika koju je dodao kompajler (procesor špekulativno izvodi pristup prije vremena, ali vraća stanje nakon provjere).

Za analizu sadržaja predmemorije u uvjetima nedovoljne preciznosti tajmera predložena je metoda koja zavara strategiju izbacivanja podataka predmemorije Tree-PLRU koja se koristi u procesorima i omogućava, povećanjem broja ciklusa, da značajno poveća vrijeme razlike kada se vrijednost vrati iz predmemorije i u nedostatku vrijednosti u predmemoriji.

Google je objavio prototip eksploatacije kako bi pokazao izvedivost napada pomoću ranjivosti klase Spectre i potaknite web programere da koriste tehnike koje minimiziraju rizike od takvih napada.

Google istodobno vjeruje da je bez značajne revizije predloženog prototipa nemoguće stvoriti univerzalni exploit koji je spreman ne samo za demonstraciju, već i za široku upotrebu.

izvor: https://security.googleblog.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.