Googlen insinööri ehdotti prosessorien ohjelmistosuojausta LVI-hyökkäyksiltä

Jokin aika sitten tuli tieto uudesta haavoittuvuudesta Intel-prosessorien spekulatiivisessa arkkitehtuurissa, jota ns Kuorman arvon injektio (LVI). Intelillä on oma mielipiteensä LVI:n vaaroista ja suosituksia sen lieventämiseksi. Oma versio suojauksesta tällaisia ​​hyökkäyksiä vastaan hän tarjosi insinööri Googlella. Mutta turvallisuuden kustannuksella on keskimäärin 7 %:n lasku prosessorin suorituskyvyssä.

Googlen insinööri ehdotti prosessorien ohjelmistosuojausta LVI-hyökkäyksiltä

Totesimme aiemmin, että LVI:n vaara ei piile tutkijoiden löytämässä erityisessä mekanismissa, vaan LVI-sivukanavahyökkäyksen periaatteessa, joka näytettiin ensimmäistä kertaa. Näin avautui uusi suunta uhkauksille, joita kukaan ei ollut aiemmin epäillyt (ainakaan julkisessa tilassa tästä ei keskusteltu). Siksi Googlen asiantuntija Zola Bridgesin kehityksen arvo on siinä, että hänen korjaustiedostonsa vähentää jopa tuntemattomien uusien LVI-periaatteeseen perustuvien hyökkäysten vaaraa.

Aiemmin GNU Project Assemblerissä (GNU-kokoonpanija) on tehty muutoksia, jotka vähentävät LVI-haavoittuvuuden riskiä. Nämä muutokset koostuivat lisäämisestä esteen ohjeet LFENCE, joka loi tiukan sekvenssin muistihakujen välille ennen ja jälkeen esteen. Korjauksen testaus yhdessä Intelin Kaby Lake -sukupolven prosessoreista osoitti suorituskyvyn pudonneen jopa 22 %.

Googlen kehittäjä ehdotti korjaustiedostoaan lisäämällä LFENCE-ohjeet LLVM-kääntäjäjoukkoon ja kutsui suojausta SESES:ksi (Spekulatiivisen suoritusten sivuvaikutusten esto). Hänen ehdottamansa suojausvaihtoehto lieventää sekä LVI-uhkia että muita vastaavia, esimerkiksi Spectre V1/V4. SESES-toteutus antaa kääntäjälle mahdollisuuden lisätä LFENCE-käskyjä sopiviin paikkoihin konekoodin generoinnin aikana. Lisää ne esimerkiksi ennen jokaista muistista lukemista tai muistiin kirjoittamista koskevaa ohjetta.

LFENCE-käskyt estävät kaikkien myöhempien käskyjen ennaltaehkäisyn, kunnes aiemmat muistilukemat on suoritettu loppuun. Ilmeisesti tämä vaikuttaa prosessorien suorituskykyyn. Tutkija havaitsi, että SESES-suojaus vähensi tehtävien suorittamisen nopeutta suojatun kirjaston avulla keskimäärin 7,1 %. Suorituskyvyn heikkeneminen vaihteli välillä 4-23 %. Tutkijoiden alkuperäinen ennuste oli pessimistisempi ja vaati jopa 19-kertaista suorituskyvyn laskua.



Lähde: 3dnews.ru

Lisää kommentti