Az Intel, AMD, ARM és IBM processzorokat érintő új Foreshadow támadásváltozat

A Grazi Műszaki Egyetem (Ausztria) és a Helmholtz Center for Information Security (CISPA) kutatóiból álló csoport kiderült (PDF) egy új vektor az oldalcsatornás támadások használatához Sejtet (L1TF), amely lehetővé teszi az adatok kinyerését az Intel SGX enklávéiból, az SMM-ből (System Management Mode), az operációs rendszer kernelének memóriaterületeiből és a virtualizációs rendszerek virtuális gépeiből. A 2018-ban javasolt eredeti támadástól eltérően Sejtet Az új változat nem kifejezetten Intel processzorokra vonatkozik, és más gyártók, például az ARM, az IBM és az AMD CPU-it érinti. Ráadásul az új változat nem igényel nagy teljesítményt, és a támadás akár JavaScript és WebAssembly webböngészőben történő futtatásával is végrehajtható.

A Foreshadow támadás azt a tényt használja ki, hogy amikor egy virtuális címen érik el a memóriát, ami kivételt (terminállaphiba) eredményez, a processzor spekulatív módon kiszámítja a fizikai címet, és betölti az adatokat, ha az elérhető az L1 gyorsítótárban. A spekulatív hozzáférést a memórialaptábla-keresés befejezése előtt hajtják végre, függetlenül a memórialaptábla-bejegyzés (PTE) állapotától, pl. mielőtt ellenőrizné az adatok fizikai memóriában való jelenlétét és olvashatóságát. A memória rendelkezésre állás ellenőrzésének befejezése után a PTE-ben a jelen jelző hiányában a művelet elvetődik, de az adatok a gyorsítótárban maradnak, és az oldalcsatornákon keresztüli gyorsítótár tartalmának meghatározására szolgáló módszerekkel (a hozzáférési idő változásának elemzésével) visszakereshetők. gyorsítótárazott és nem gyorsítótárazott adatokhoz).

A kutatók kimutatták, hogy a Foreshadow elleni védekezés meglévő módszerei nem hatékonyak, és a probléma helytelen értelmezésével hajtják végre őket. Sebezhetőség
A Foreshadow a korábban elégségesnek tartott kernel biztonsági mechanizmusoktól függetlenül kihasználható. Ennek eredményeként a kutatók bemutatták a Foreshadow támadás végrehajtásának lehetőségét viszonylag régi kernelekkel rendelkező rendszereken, amelyekben az összes elérhető Foreshadow védelmi mód engedélyezve van, valamint új kernelekkel, amelyekben csak a Spectre-v2 védelem van letiltva (a a Linux kernel beállítása nospectre_v2).

Megállapították, hogy előtöltési hatás nem kapcsolódik a szoftver előzetes letöltési utasításaihoz vagy a hardvereffektushoz
prefetch a memóriaelérés során, de akkor fordul elő, amikor a felhasználói terület spekulatív dereferenciái regisztrálódnak a kernelben. A sérülékenység okának ez a félreértelmezése kezdetben ahhoz a feltételezéshez vezetett, hogy a Foreshadow adatszivárgása csak az L1 gyorsítótáron keresztül történhet, míg bizonyos kódrészletek (prefetch gadgetek) jelenléte a kernelben hozzájárulhat az L1 gyorsítótáron kívüli adatszivárgáshoz. például az L3 gyorsítótárban.

Az azonosított funkció új támadások létrehozásának lehetőségét is megnyitja, amelyek célja a virtuális címek fizikai címekké történő fordítása elszigetelt környezetben, valamint a CPU-regiszterekben tárolt címek és adatok meghatározása. Demonstrációként a kutatók bemutatták annak lehetőségét, hogy az azonosított hatás segítségével adatokat vonjanak ki az egyik folyamatból a másikba, körülbelül 10 bit/másodperc teljesítménnyel egy Intel Core i7-6500U CPU-val rendelkező rendszeren. Megjelenik az Intel SGX enklávéból való regisztertartalom kiszivárgásának lehetősége is (32 percbe telt egy 64 bites regiszterbe írt 15 bites érték meghatározása). Bizonyos típusú támadásokról kiderült, hogy megvalósíthatóak a JavaScriptben és a WebAssemblyben, például meg lehetett határozni egy JavaScript-változó fizikai címét, és a 64 bites regisztereket feltölteni a támadó által szabályozott értékkel.

A Foreshadow támadásnak az L3 gyorsítótáron keresztül történő blokkolásához a retpoline javításkészletben megvalósított Spectre-BTB (Branch Target Buffer) védelmi módszer hatékony. Ezért a kutatók úgy vélik, hogy engedélyezni kell a retpoline-t még azokon az új CPU-kkal rendelkező rendszereken is, amelyek már rendelkeznek védelemmel a CPU spekulatív végrehajtási mechanizmusának ismert sebezhetőségei ellen. Az Intel képviselői ugyanakkor kijelentették, hogy nem tervezik további védelmi intézkedések bevezetését a Foreshadow ellen a processzorokba, és elegendőnek tartják a Spectre V2 és L1TF (Foreshadow) támadások elleni védelmet.

Forrás: opennet.ru

Hozzászólás