Inžinier spoločnosti Google navrhol softvérovú ochranu procesorov pred útokmi LVI

Pred časom sa dozvedela o novej zraniteľnosti v špekulatívnej architektúre procesorov Intel, ktorá bola tzv Vstrekovanie hodnoty zaťaženia (LVI). Intel má svoj vlastný názor na nebezpečenstvo LVI a odporúčania na jeho zmiernenie. Vaša vlastná verzia ochrany proti takýmto útokom ponúkol inžinier v spoločnosti Google. Za bezpečnosť si ale budete musieť zaplatiť znížením výkonu procesora v priemere o 7 %.

Inžinier spoločnosti Google navrhol softvérovú ochranu procesorov pred útokmi LVI

Už sme si všimli, že nebezpečenstvo LVI nespočíva v špecifickom mechanizme objavenom výskumníkmi, ale v samotnom princípe útoku na LVI bočným kanálom, ktorý sa ukázal po prvýkrát. Tým sa otvoril nový smer hrozbám, o ktorých predtým nikto netušil (aspoň sa o tom vo verejnom priestore nehovorilo). Preto hodnota vývoja Google špecialistu Zola Bridgesa spočíva v tom, že jeho patch zmierňuje nebezpečenstvo aj neznámych nových útokov založených na princípe LVI.

Predtým v GNU Project Assembler (Zostavovateľ GNU) boli vykonané zmeny, ktoré znižujú riziko zraniteľnosti LVI. Tieto zmeny spočívali v pridávaní bariérové ​​pokyny LFENCE, ktorý zaviedol prísnu postupnosť medzi prístupmi do pamäte pred a za bariérou. Testovanie opravy na jednom z procesorov generácie Kaby Lake od Intelu ukázalo zníženie výkonu až o 22 %.

Vývojár Google navrhol svoju opravu s pridaním inštrukcií LFENCE do sady kompilátorov LLVM a nazval ochranu SESES (Speculative Execution Side Effect Suppression). Možnosť ochrany, ktorú navrhol, zmierňuje hrozby LVI a ďalšie podobné hrozby, napríklad Spectre V1/V4. Implementácia SESES umožňuje kompilátoru pridať inštrukcie LFENCE na vhodné miesta počas generovania strojového kódu. Vložte ich napríklad pred každý pokyn na čítanie z pamäte alebo zápis do pamäte.

Inštrukcie LFENCE zabraňujú preempcii všetkých nasledujúcich inštrukcií, kým sa nedokončia predchádzajúce čítania pamäte. To samozrejme ovplyvňuje výkon procesorov. Výskumník zistil, že ochrana SESES znížila rýchlosť dokončovania úloh pomocou chránenej knižnice v priemere o 7,1 %. Rozsah zníženia produktivity sa v tomto prípade pohyboval od 4 do 23 %. Pôvodná prognóza výskumníkov bola pesimistickejšia a volala po až 19-násobnom poklese výkonu.



Zdroj: 3dnews.ru

Pridať komentár