Training Solo: Ranjivost Spectre-v2 koja utiče na Intelove procesore

ranjivost

Istraživači sa Vrije Universiteit Amsterdam obznanio, putem objave na blogu, do "Training Solo, nova porodica Spectre-v2 napada koji iskorištavaju nedostatke u spekulativnom predviđanju kako bi probili sigurnosne granice između privilegovanih i neprivilegovanih prostora za izvršavanje, direktno utičući na Intelove CPU-e.

Nove tehnike dozvoliti izdvajanje osjetljivog sadržaja iz kernela ili hipervizor brzinama do 17 KB u sekundi, čak i na sistemima koji implementiraju moderne mjere ublažavanja kao što su IBPB, eIBRS ili BHI_NO.

Trening Solo, novo lice Spectre-v2 se ponovo pojavljuje sa snagom

Od svog otkrića, Spectre-v2 je bio jedna od najtežih klasa ranjivosti za ublažavanje zbog svoje spekulativne prirode i "Solo trening», ponovo se uvodi ključni problem, budući da ne zahtijeva nikakav kod koji kontrolira napadač da bi utjecao na prediktor grananja, već se umjesto toga oslanja na postojeće fragmente koda (gadgete) unutar kernela ili hipervizora za treniranje prediktora iz korisničkog prostora.

Naš rad pokazuje da napadači mogu spekulativno preoteti tok kontrole unutar iste domene (npr. kernela) i procuriti tajne preko granica privilegija, oživljavajući klasične Spectre-v2 scenarije bez oslanjanja na moćne sandbox okruženja poput eBPF-a. Kreirali smo novi skup testova za analizu prediktora grananja u scenariju samoobuke.

Istraživači su pokazali da manipulisanjem ovim napravama (npr. korištenje SECCOMP filtera zasnovanih na cBPF-u) spekulativno izvršenje može biti izazvano koji curi podatke iz privilegovanog sistema.

Kroz ovu tehniku, koja se naziva "individualni trening", historija prediktora se može promijeniti viljuški tako da se tokom spekulativnog izvršenja događaju netačni skokovi, s ciljem curenja memorijskog sadržaja kroz nuspojave u keš memoriji.

u Solo napadi za trening dolaze u tri varijante, pri čemu svaki iskorištava različite slabosti:

  1.  Manipulisanje istorijom grana pomoću kernel gadgetaIskorištava sistemske pozive kao što je SECCOMP, gdje filteri mogu izazvati lažne spekulativne grane, cureći memoriju brzinom od 1,7 KB/s na Intel Tiger Lake i Lion Cove procesorima.
  2.  Kolizije pokazivača instrukcija (IP) u baferu za predviđanje grananja (BTB): Ovdje, dvije različite indirektne grane mogu utjecati jedna na drugu ako se njihove adrese sudare u baferu, što omogućava pogrešno predviđanje spekulativnih odredišta.
  3.  Uticaji između direktnih i indirektnih grana: Ova tehnika, zasnovana na dvije specifične ranjivosti (CVE-2024-28956 (ITS) i CVE-2025-24495), iskorištava kako direktne grananja mogu utjecati na predviđanje indirektnih grananja. Koristeći ovaj pristup, heš root lozinke je oporavljen nakon pokretanja passwd -s naredbe za samo 60 sekundi.

Naš rad se fokusira na razbijanje izolacije domena po dizajnu putem napada samoobučavanjem. Međutim, hardverski problemi otkriveni u našem testnom skupu također utječu na implementaciju izolacije, budući da se pretpostavljalo da se direktne grane neće koristiti za treniranje indirektnih grana. 

Uticaj i obim novih ranjivosti

Napadi utiču na širok spektar Intelovih procesora, uključujući popularne linije kao što su Coffee Lake, Tiger Lake, Ice Lake i Rocket Lake, kao i Xeon servere druge i treće generacije. Pored toga, arhitekture Lunar Lake i Arrow Lake su također ranjive prema CVE-2-3.

Da bi se ublažili ovi napadi, Intel je objavio ažuriranje mikrokoda koja uvodi novu instrukciju: IBHF (Indirect Branch History Fence), dizajniranu da spriječi kontaminaciju historije grananja. Ova promjena mora biti eksplicitno implementirana nakon bilo kojeg koda koji utiče na prediktor grananja. Za starije CPU-ove preporučuje se korištenje softverskih rješenja koja ručno brišu historiju.

Sa svoje strane, programeri kernela Linux je već počeo integrirati zakrpe kako bi se suprotstavio ovim tehnikama., uključujući mjere koje premještaju indirektne skokove izvan osjetljivih područja keša i zaštitu od cBPF-a.

AMD je, sa svoje strane, potvrdio da Ove tehnike ne utiču na vaše procesore. ARM je naznačio da će biti dostupni samo njegovi stariji čipovi, bez podrške za ekstenzije FEAT_CSV2_3 i FEAT_CLRBHB.

Konačno, ako ste zainteresirani da saznate više o tome, možete pogledati detalje Na sledećem linku.