Kasper, a Linux kernel spekulatív kódjának eszközellenőrzője

Egy csoportja Az Amszterdami Szabad Egyetem kutatói felfedték nevű eszközt egy blogbejegyzésen keresztül "casper" amelyek kiemelik, hogy az kódrészletek azonosítására tervezték a Linux kernelben, amely kihasználható Spectre osztályú sebezhetőségek amelyet a processzor spekulatív kódvégrehajtása okoz.

Azoknak, akik nincsenek tisztában az ilyen típusú támadásokkal, tudniuk kell ezt osztályú biztonsági rések, például a Spectre v1 lehetővé teszik a memória tartalmának meghatározását, egy bizonyos szkriptre (gadgetekre) van szükség a privilegizált kódban, ami az utasítások spekulatív végrehajtásához vezet.

Az optimalizáláshoz, a processzor spekulatív módban kezdi el futtatni az ilyen eszközöketvagy, majd megállapítja, hogy az elágazás előrejelzése nem igazolódott, és visszagörgeti a műveleteket az eredeti állapotukba, de a spekulatív végrehajtás során feldolgozott adatok a gyorsítótárban és a mikroarchitektúra pufferben helyezkednek el, és különböző maradékadat-meghatározási módszerekkel kinyerhetők harmadik- party csatornák.

Gadget Scan Tools minták alapján korábban elérhető a Spectr sebezhetősége miatte nagyon magas arányban mutatott hamis pozitív eredményeket, miközben sok valódi kütyü elveszett (a kísérletek azt mutatták, hogy az ilyen eszközök által észlelt kütyük 99%-a nem használható támadásokra, a működők 33%-a pedig nem volt megfigyelhető támadásra képes eszköz).

Bemutatjuk a Kaspert, egy átmeneti (vagy spekulatív) végrehajtóeszköz-ellenőrzőt. Korrupcióelemzési házirendekkel modellez egy támadót, amely képes kihasználni tetszőleges szoftver-/hardver-sebezhetőséget átmeneti úton. 

Casperről

A minőség javítása érdekében a problémás eszközök azonosításáról, A Kasper modellezi a támadók által felhasználható sebezhetőségeket a Spectre-osztályú támadások minden lépésénél: a problémákat úgy modellezik, hogy lehetővé tegyék az adatkezelést (például a támadói adatok mikroarchitektúrás struktúrákba való helyettesítését a későbbi spekulatív végrehajtás befolyásolása érdekében) LVI-osztályú támadások segítségével, érzékeny információkhoz való hozzáférést (például amikor a a puffer túl van a határokon, vagy a memória használatba kerül a felszabadítása után), és érzékeny információk szivárognak ki (például a processzor gyorsítótárának állapotának elemzésével vagy az MDS-módszer használatával).

Modellezzen egy támadót, aki képes az adatok vezérlésére (pl. memóriamasszázs vagy LVI-érték-injektálás), titkokhoz való hozzáférésre (pl. határokon kívüli hozzáférésen keresztül vagy szabad használat után), és kiszivárogtatja ezeket a titkokat (pl. gyorsítótár-alapú, MDS-en keresztül) alapú vagy port-versenyen alapuló titkos csatornák). 

A teszt végrehajtásakor, a kernel a futásidejű könyvtárakkal érintkezik írta Kasper és ellenőrizze, hogy LLVM szinten működnek-e. Az ellenőrzés során a spekulatív kódvégrehajtást az ellenőrzőpont-visszaállítási mechanizmus emulálja, amely kifejezetten egy helytelenül előre jelzett kódelágazást hajt végre, majd visszatér az elágazás kezdete előtti eredeti állapotába.

A Kasper különféle szoftveres és hardveres sebezhetőségeket is megpróbál modelleznielemzi az építészeti és mikroarchitektúrás hatások hatását, és fuzzing teszteket végez a lehetséges támadói akciókról. A végrehajtási folyamatok elemzéséhez a Linux kernel DataFlowSanitizer portját, a fuzzing tesztekhez pedig a syzkaller csomag módosított változatát használjuk.

Ennek eredményeként a Kasper 1.379 korábban ismeretlen eszközt fedezett fel az erősen megkeményedett Linux kernelben. Eredményeinket megerősítettük azáltal, hogy bemutattuk az egyik talált eszköz teljes körű koncepcióbizonyítását.

A Linux kernel Kasperrel végzett vizsgálata során 1379 korábban ismeretlen eszközt azonosítottak, amelyek adatszivárgáshoz vezethetnek az utasítások spekulatív végrehajtása során.

Megjegyzendő, hogy ezek közül talán csak néhány jelenthet valós problémákat, de annak bizonyítására, hogy nem csak elméleti, hanem valós veszély is fennáll, az egyik problémás kódrészlethez kifejlesztették az exploit működő prototípusát, ami a kernelmemória információinak szivárgása.

Végül ha érdekel, hogy többet tudjon meg róla Kasperről ezt tudnod kell a forráskódot Az Apache 2.0 licenc alatt terjesztik.

forrás: https://www.vusec.net


Hagyja megjegyzését

E-mail címed nem kerül nyilvánosságra. Kötelező mezők vannak jelölve *

*

*

  1. Az adatokért felelős: AB Internet Networks 2008 SL
  2. Az adatok célja: A SPAM ellenőrzése, a megjegyzések kezelése.
  3. Legitimáció: Az Ön beleegyezése
  4. Az adatok közlése: Az adatokat csak jogi kötelezettség alapján továbbítjuk harmadik felekkel.
  5. Adattárolás: Az Occentus Networks (EU) által üzemeltetett adatbázis
  6. Jogok: Bármikor korlátozhatja, helyreállíthatja és törölheti adatait.