Dve novi ranljivosti v eBPF omogočata obvodno zaščito pred Spectrom 4

Logotip Spectre

Pred kratkim je novica to razkrila ugotovljeni sta bili dve ranljivosti v jedru linux to dovolite uporabo podsistem eBPF za izogibanje zaščiti pred napadom Spectre 4 (SSB, špekulativni obvoz trgovine). Omenjeno je, da lahko napadalec z uporabo neprivilegiranega programa BPF ustvari pogoje za špekulativno izvajanje določenih operacij in določi vsebino poljubnih področij pomnilnika jedra.

Metoda napada Spectre 4 temelji na obnavljanju podatkov, ujetih v predpomnilniku procesorja po zavrženju rezultata špekulativnega izvajanja operacij pri obdelavi prepletenih operacij branja in pisanja z uporabo posrednega naslavljanja.

Ko operacija branja sledi operaciji pisanja, odmik smeri branja je morda že znan zaradi podobnih operacij (operacije branja se izvajajo veliko pogosteje in branje je mogoče iz predpomnilnika), procesor pa lahko pred pisanjem špekulativno bere, ne da bi čakal na izračun odmika smeri posrednega zapisa.

Če po izračunu zamika zazna presečišče pomnilniških področij za pisanje in branje, bo procesor preprosto zavrgel že pridobljeni rezultat branja in špekulativno ponovil to operacijo. Ta funkcija omogoča, da navodila za branje dostopajo do prejšnje vrednosti v določeni smeri, medtem ko je operacija shranjevanja še v teku.

Po izključitvi neuspešne špekulativne trgovine, sledi njegove izvedbe ostanejo v predpomnilniku, po tem za pridobitev lahko uporabite eno od metod za določanje vsebine predpomnilnika na podlagi analize sprememb v času dostopa do predpomnilnika in shranjenih podatkov.

Upoštevajte, da se lahko vsaka tema zlorablja neodvisno od druge, pri čemer se opira na pri napakah, ki se ne prekrivajo.

PoC so zasebno delili z vzdrževalci podsistema BPF pomoč pri razvoju aranžmaja.

Prva ranljivost CVE-2021-35477: nastane zaradi pomanjkljivosti v mehanizmu potrjevanja programa BPF. Za zaščito pred napadom Spectre 4 preverjevalnik po potencialno težavnih operacijah shranjevanja v pomnilniku doda dodatno navodilo in shrani ničelno vrednost za izravnavo sledov prejšnje operacije.

Predvidevalo se je, da bo operacija ničelnega zapisa zelo hitra in bo blokirala špekulativno izvedbo, saj je odvisna le od kazalca okvirja niza BPF. Toda v resnici je bilo mogoče ustvariti pogoje, v katerih ima čas, ki vodi do špekulativne izvedbe, čas za izvedbo pred operacijo preventivnega shranjevanja.

Druga ranljivost CVE-2021-3455: je povezan z dejstvom, da ko preverjalnik BPF zazna potencialno nevarne operacije shranjevanja v pomnilniku, neinicializirana področja sklada BPF, prva operacija pisanja, pri kateri ni zaščitena, se prezrejo.

Ta funkcija vodi v možnost izvajanja špekulativne operacije branja, odvisno od neinicializiranega pomnilniškega območja, pred izvedbo ukaza shranjevanja. Nov pomnilnik za sklad BPF je dodeljen brez preverjanja vsebine, ki je že v dodeljenem pomnilniku, v fazi pred zagonom programa BPF pa obstaja način za upravljanje vsebine pomnilniškega območja, ki bo nato dodeljeno sklad BPF.

Razpoložljiva rešitev za nadaljevanje izvaja tehnike blažitve priporočajo prodajalci procesorjev in so na voljo v jedru glavne vrstice git repozitorij.

Nazadnje je omenjeno, da so vzdrževalci podsistemov eBPF v jedru dobili dostop do prototipa izkoriščanja, ki dokazuje možnost izvajanja napadov v praksi.

Težave so odpravljene v obliki popravkov, ki bodo vključeni v naslednjo posodobitev jedra Linuxa, zato bodo posodobitve za različne distribucije začele prihajati v naslednjih dneh.

vir: https://www.openwall.com/


Pustite svoj komentar

Vaš e-naslov ne bo objavljen. Obvezna polja so označena z *

*

*

  1. Odgovoren za podatke: AB Internet Networks 2008 SL
  2. Namen podatkov: Nadzor neželene pošte, upravljanje komentarjev.
  3. Legitimacija: Vaše soglasje
  4. Sporočanje podatkov: Podatki se ne bodo posredovali tretjim osebam, razen po zakonski obveznosti.
  5. Shranjevanje podatkov: Zbirka podatkov, ki jo gosti Occentus Networks (EU)
  6. Pravice: Kadar koli lahko omejite, obnovite in izbrišete svoje podatke.