Googlova programska oprema za zaščito LVI je pokazala 14-kratno povečanje zmogljivosti

Zola Bridges iz Googla predlagal za komplet prevajalnika LLVM, popravek z implementacijo zaščite SESES (Spekulativno izvajanje stranskih učinkov), ki pomaga blokirati napade na mehanizem špekulativnega izvajanja v procesorjih Intel, kot je npr. HVAC. Metoda zaščite je implementirana na ravni prevajalnika in temelji na dodajanju navodil s strani prevajalnika pri generiranju strojne kode. OGRAJA, ki so nadomeščeni pred vsakim ukazom za branje iz pomnilnika ali pisanje v pomnilnik in tudi pred prvim ukazom veje v skupini ukazov, ki konča blok.

Ukaz LFENCE počaka, da se potrdijo vsa predhodna branja pomnilnika, in prepreči vnaprejšnje izvajanje naslednjih navodil po LFENCE, preden je potrditev končana. Uporaba LFENCE povzroči znatno zmanjšanje zmogljivosti, zato je predlagana uporaba zaščite v skrajnih primerih za posebej kritično kodo. Poleg popolne zaščite popravek ponuja tri zastavice, ki vam omogočajo, da selektivno onemogočite določene ravni zaščite, da zmanjšate negativen vpliv na delovanje.

V izvedenih testih je uporaba zaščite SESES za paket BoringSSL povzročila zmanjšanje števila operacij, ki jih knjižnica izvede na sekundo, za 14-krat - zmogljivost različice knjižnice, prevedene z zaščito, se je izkazala za le 7.1% na povprečje od indikatorjev nezaščitene različice (razpon glede na test je bil od 4% do 23%).

Za primerjavo oz. predlagano prej za GNU Assembler je mehanizem, ki izvaja zamenjavo LFENCE po vsaki operaciji nalaganja pomnilnika in pred nekaterimi navodili za razvejanje, pokazal zmanjšanje zmogljivosti za približno 5-krat (22 % nezaščitene kode). tudi način zaščite predlagano и izvajati Intelovi inženirji, vendar rezultati testiranja zmogljivosti zanj še niso bili objavljeni. Sprva so raziskovalci, ki so identificirali napad LVI, napovedali 2- do 19-kratno zmanjšanje učinkovitosti pri uporabi popolne zaščite.

Vir: opennet.ru

Dodaj komentar