Az új NetSpectre Attack nem követeli meg az áldozattól a rosszindulatú kód letöltését vagy futtatását

Biztonság / Az új NetSpectre Attack nem követeli meg az áldozattól a rosszindulatú kód letöltését vagy futtatását

A NetSpectre bombázza a gépi portokat a belépéshez

4 perc olvasás

Egy új Spectre-osztályú CPU-támadásra az akadémikusok felhívták a figyelmet, amikor nemrégiben megjelent egy „NetSpectre: Olvassa el az önkényes memóriát a hálózaton” címmel egy kutatási cikket, amely mélyreható részleteket tartalmaz a CPU-támadások ezen osztályának működéséről.



Az új Spectre CPU támadást kissé ijesztővé teszi nem igényel a támadó becsapja áldozatát, hogy rosszindulatú szkripteket töltsön le és futtasson a gépére, vagy akár egy olyan webhelyre is belépjen, amely rosszindulatú JavaScriptet futtat a felhasználó böngészőjében.

A NetSpectre egyszerűen bombázni fogja a gép hálózati portjait, amíg meg nem találja a módját céljainak elérésére.



'A látványtámadások arra késztetik az áldozatot, hogy spekulatív módon hajtson végre olyan műveleteket, amelyek nem történnének meg a program utasításainak szigorúan soros sorrendben történő feldolgozása során, és amelyek az áldozat bizalmas információit rejtett csatornán keresztül szivárogtatják ki a támadóba'



A NetSpectre azonban nem hiányzik saját hibái nélkül. Hihetetlenül lassú a szűrési sebessége, óránként körülbelül 15 bit a támadások hálózati kapcsolaton keresztül történő végrehajtásához, és a CPU gyorsítótárában tárolt adatokat célozza meg.



A kutatási cikkben az akadémikusok akár 60 bit / óra sebességet is elérhettek a NetSpectre egy speciális variációjával, amely a CPU AVX2 modulján keresztül feldolgozott adatokat célozta meg, amely kifejezetten az Intel processzoraira vonatkozik.

Mindkét esetben a NetSpectre jelenleg túl lassú, hogy értékes legyen a támadók számára, ami azt jelenti, hogy a NetSpectre csak egy elméleti fenyegetés, nem pedig valami, amitől a vállalatoknak fedezékként kellene kibújniuk még csak . A technológia fejlődésével azonban az exfiltrálási sebesség kétségtelenül megnő, majd egy életképes és hihetetlenül egyszerűen végrehajtható CPU-támadások teljesen új osztályával kell aggódnunk.

Az új NetSpectre támadás a Spectre V1 biztonsági réssel (CVE-2017-5753) függ össze, amelyet a Google kutatói az év elején (2018) tártak fel. Ez azt jelenti, hogy az összes olyan CPU, amelyet a Spectre V1 befolyásolhat, szintén NetSpectre, ha megfelelő operációs rendszerrel és CPU firmware-rel telepítik.



A NetSpectre számára jelenleg két támadási változat létezik: Adatok kinyerése a célrendszerből, és az ASLR (Address Space Layout Randomisation) távoli megszakítása a célrendszeren.

Az első típusú támadás eseménylánca a következő:

  1. Rosszul tegye az ág előrejelzőjét.
  2. Állítsa vissza a mikroarchitekturális elem állapotát.
  3. Szivárog egy kicsit a mikroarchitekturális elemig.
  4. Tegye ki a hálózatra a mikroarchitekturális elem állapotát.
  • Az 1. lépésben a támadó elrontja az áldozat ágjelzőjét, hogy Spectre támadást hajtson végre. Az elágazás előrejelzőjének téves megsértése érdekében a támadó érvényes indexekkel használja a szivárgás modult. Az érvényes indexek biztosítják, hogy az elágazás-előrejelző megtanuljon mindig elágazást venni, vagyis az elágazás-előrejelző feltételezi, hogy a feltétel igaz. Vegye figyelembe, hogy ez a lépés csak a szivárgás modultól függ. A támadónak nincs visszajelzése, és így a mikroarchitekturális állapotot nem kell alaphelyzetbe állítani vagy továbbítani.
  • A 2. lépésben a támadónak vissza kell állítania a mikroarchitekturális állapotot, hogy lehetővé tegye a kiszivárgott bitek kódolását egy mikroarchitekturális elem segítségével. Ez a lépés nagymértékben függ a használt mikroarchitekturális elemtől, például a gyorsítótár kihasználásakor a támadó egy nagy fájlt tölt le az áldozattól; ha az AVX2-t használják, a támadó egyszerűen több mint 1 ezredmásodpercet vár. Ezt a lépést követően minden követelmény teljesül, hogy egy kicsit kiszivárogjon az áldozattól.
  • A 3. lépésben a támadó kihasználja a Specter sebezhetőséget, hogy egyetlen bitet szivárogjon ki az áldozattól. Mivel az elágazás-előrejelzőt az 1. lépésben hibásan alakítják ki, a kiszivárgó kütyü határon túli indexének biztosítása futtatja a határon belüli utat és módosítja a mikroarchitekturális elemet, vagyis a bit a mikroarchitekturális elemben van kódolva.
  • A 4. lépésben a támadónak a hálózaton keresztül kell továbbítania a kódolt információkat. Ez a lépés megfelel az eredeti Spectre támadás második szakaszának. A támadó hálózati csomagot küld, amelyet az átviteli eszköz kezel, és méri az időt a csomag elküldésétől a válasz megérkezéséig.

2. támadási módszer: Az ASLR távoli megszakítása

  1. Rosszul tegye az ág előrejelzőjét.
  2. Hozzáférés egy határon túli indexhez (ismert) memóriahelyek gyorsítótárazásához.
  3. Mérje meg egy függvény végrehajtási idejét a hálózaton keresztül, hogy megállapítsa, a határon túli hozzáférés gyorsítótárazott-e egy részét.

Spectre ellenintézkedések

Az Intel és az AMD javasolja az lfence utasítás használatát spekulációs korlátként. Ezt az utasítást a biztonság szempontjából kritikus határellenőrzés után kell beilleszteni a spekulatív végrehajtás leállításához. Ennek hozzáadása minden határellenőrzéshez jelentős teljesítmény-rezsivel jár.

Mivel a NetSpectre hálózati alapú támadás, nem csak a Spectre mérséklésével lehet megakadályozni, hanem a hálózati réteg ellenintézkedéseivel is. Egy triviális NetSpectre támadást könnyen felismerhet egy DDoS védelem, mivel több ezer azonos csomagot küldnek ugyanabból a forrásból.

A támadó azonban bármilyen kompromisszumot választhat a másodpercenként csomagok és a kiszivárgott bitek másodpercenként között. Így a bitek kiszivárgásának sebességét egyszerűen csökkenteni lehet a küszöb alatt, amelyet a DDoS monitorozás képes észlelni. Ez igaz minden olyan megfigyelésre, amely megpróbálja észlelni a folyamatban lévő támadásokat, például behatolás-észlelő rendszereket.

Noha a támadást elméletileg nem akadályozzák meg, egy ponton a támadás megvalósíthatatlanná válik, mivel a kissé szivárgáshoz szükséges idő drasztikusan megnő. A NetSpectre enyhítésének másik módszere az, hogy mesterséges zajt adunk a hálózati késleltetéshez. Mivel a mérések száma a hálózati késés szórásától függ, a további zajokhoz a támadónak további mérésekre van szüksége. Így ha a hálózati késleltetés szórása elég nagy, akkor a NetSpectre támadások a sok szükséges mérés miatt megvalósíthatatlanná válnak.