SgxSpectre-hyökkäys voi loukata Intelin SGX-enklaaveihin tallennettuja arkaluonteisia tietoja

Uusin SgxSpectre-nimellä nimetty Spectre-hyökkäys voi paljastaa SGX-enklaaveihin tallennetut arkaluontoiset tiedot.

SgxSpectre - toinen Spectre-hyökkäys, joka aiheuttaa riskin arkaluontoisille tiedoille

Spectre-Meltdown CPU vika[1] vuoden 2018 alussa havaittuja haasteita enemmän kuin Microsoft, Intel ja muut teknologiajättiläiset odottivat. Se ei vain onnistunut laajentamaan Intel- ja AMD-siruista Skylake-, Kaby Lake- ja Coffee Lake -siruihin; se antoi hakkereille mahdollisuuden käynnistää useita haittaohjelmien levityskampanjoita[2] ja ohjelmistopohjaiset hyökkäykset.

Maaliskuun 2018 alussa kuuden IT-tutkijan ryhmä Ohion osavaltion yliopistosta havaitsi uuden muunnelman Spectre-hyökkäyksestä, joka on nimetty nimellä SgxSpectre, jota voidaan käyttää Intelin Software Guard Extensions (SGX) -enklaavien murtamiseen, jotka vastaavat herkkien laitteiden eristämisestä. komponentit. Itse asiassa näiden erillisalueiden suojaamat tiedot ovat luultavasti herkimpiä kaikista, koska käyttöjärjestelmän komponentit eivät saa olla vuorovaikutuksessa erillisaluesuojattujen tietojen kanssa.

Princetonin yliopiston tutkijat Caroline Trippel ja Daniel Lustig sekä Margaret Martonosi Nvidia ennakoi tällaisten hyökkäysten mahdollisuuden ja hahmotteli skenaarion tieteellisessä työssä olla nimeltään "MeltdownPrime ja SpectrePrime: Automaattisesti syntetisoitujen hyökkäysten hyödyntäminen. Mitätöintiin perustuvat koherenssiprotokollat."[3] Nämä ovat uusimpia Meltdown- ja Spectre-haavoittuvuuksia, jotka voivat päätyä arkaluontoisten tietojen hyökkäyksiin.

Aiemmilla Meltdown- ja Spectre-haavoittuvuuksilla ei ollut pääsyä SGX: n suojaamiin arkaluontoisiin tietoihin

Intelin Software Guard Extensions (SGX) on suhteellisen uusi ominaisuus, joka on saatavilla nykyaikaisissa Intelin prosessoreissa. Sen avulla voidaan luoda niin sanottuja erillisalueita ohjelmistosuojaukseen, joka käsittelee erittäin arkaluontoista tietoa ja koodaustietoa.

Edellisten SGX: n Spectre- ja Meltdown-hyökkäysten jälkivaikutukset eivät olleet selviä. Siitä huolimatta SGX-enklaavien koskemattomuus herätti monia kysymyksiä alusta alkaen. Kävi ilmi, että kummassakaan näistä haavoittuvuuksista ei ole ominaisuuksia, jotka mahdollistaisivat SGX-suojauksen murtamisen, mutta ilmeisesti hakkerit tähtäävät erillisalueiden sisällä oleviin tietoihin. Siksi SgxSpectre kehittyi.

SgxSpectren haavoittuvuustutkijoiden mukaan[4] haavoittuvuus mahdollistaa sen hyödyntämisen "kilpatilanne syötettyjen, spekulatiivisesti suoritettujen muistiviittausten, jotka johtavat sivukanavan havaittaviin välimuistijäljiin, ja haaran resoluution latenssin välillä." Tällä hetkellä haavoittuvuus voi vaikuttaa Intel SGX-, SDK-, Rust-SGX- ja Graphene-SDX-järjestelmiin.
Järjestelmä voi vaikuttaa, kun tietty koodimalli ohjelmistokirjastoissa on käytössä. Hyökkääjä, joka tavoittelee erillisalueissa säilytettyä tietoa, käyttää spekulatiivista suoritusta ja ennustaa erillisaluekoodia etsimällä pieniä muunnelmia välimuistin koosta. Kuten tutkijat selittivät,

Haarojen ennustusyksiköitä, joita käytetään erillistilassa haarakohteiden ennustamiseen, ei puhdisteta perusteellisesti erillisalueeseen tullessa. Siksi kohdeenklaavin ulkopuolella oleva koodi (joko suojaamattomalla muistialueella tai toisessa erillisalueessa) voi manipuloida haaraennusteen kohteita kohdistetun erillisalueen sisällä.

Intel on julkaissut haavoittuvuuksien tarkistustyökalun

Koko toimenpide saattaa tuntua vaikealta ihmisille, jotka eivät ole sotkeutuneet IT-maailmaan. Lyhyesti sanottuna, Meltdown- ja Spectre-haavoittuvuuksien avulla hakkerit löysivät tavan hyödyntää SDX-koodikuvioiden heikkouksia. Näiden haavoittuvuuksien ansiosta hakkerit voivat muokata SDK: n ajonaikaisia ​​kirjastoja ja hyökätä kaikkiin järjestelmiin, jotka on kehitetty Intelin virallisella SGX SDK: lla.

Intel ja Microsoft reagoivat havaittuun Meltdown- ja Spectre-haavoittuvuuteen välittömästi ja alkoivat julkaista korjaustiedostoja. Valitettavasti kaikki eivät toimi, joten on pakko seurata uutisia tästä haavoittuvuudesta.

Indirect Branch Restricted Speculation (IBRS) on yksi Intelin edustamista korjauksista. Se käsittelee Spectre-varianttia mukautetulla mikrokoodilla. Tämä korjaustiedosto ei kuitenkaan ole suunnattu SGX SDK: n haavoittuvuuteen.
SgxSpectre-korjaustiedoston julkaisupäivämäärä on 16. maaliskuuta 2018. Sovelluskehittäjien on vaihdettava vanhempi SDK-versio siihen, jonka Intel aikoo julkaista SGX-pohjaisiin sovelluksiin.

Ne, jotka haluavat tarkistaa, sisältävätkö heidän PC: nsä haavoittuvia koodeja, asiantuntijat loivat haavoittuvuuksien tarkistustyökalun,[5] joka tarkistaa erilliset ohjelmat ja tarkistaa koodin kuviot. Jos SgxPectre-hyödynnät havaitaan, käyttäjää varoitetaan ja häntä kehotetaan asentamaan Intelin kehittämä työkalupakki sekä vanhentuneet ohjelmistokehitystyökalut SGX-sovellustoimittajille.