Szerző: Asztalos Olivér

2019. november 14. 08:30

Feladják a leckét a biztonsági sebezhetőségek az Intelnek

Egy friss blogbejegyzésében összesen 77 különféle biztonsági hiba javításáról adott hírt az Intel. A vállalat büszkén emelte ki, hogy 67 darab hibát házon belül, saját alkalmazottai találtak. Független szakemberek szerint azonban ez még mindig kevés, egy súlyos processzoros sebezhetőséget ugyanis bő 1 év alatt sem tudtak kijavítani a mérnökök.

A 77 darab biztonsági rés a gyártó termékeinek széles palettáját érinti, a különféle hálózati adapterektől kezdve a GPU-s drivereken át egészen a processzoros mikroarchitektúrákig. Utóbbival kapcsolatban ugyanakkor nem lehet teljes az öröm, a májusban publikált MDS-re épülő egyik hibát ugyanis továbbra sem volt képes befoltozni az Intel. Az exploitra rámutató szakemberek szerint ez kiábrándító, a ZombieLoad v2 becenéven futó probléma ugyanis még tavaly szeptemberben, vagyis nagyjából 14 hónappal ezelőtt jutott el a chipgyártóhoz.

Maga az Intel mutat rá említett bejegyzésében, hogy a CVE-2019-11135 exploit kiaknázását bár megnehezítették, továbbra sem lehetetlen érzékeny adatokat kinyerni a rendszerből, a tökéletes javítás pedig egy újabb mikrokód frissítés formájában érkezik majd, valamikor. Az ügy pikantériája, hogy a Zombieload v2 a chipgyártó legújabb processzoraiban, vagyis a Cascade Lake kódnevű Xeonokban, illetve a Comet Lake mobil CPU-kban is ott lapul.

Mindent vivő munkahelyek

Mindig voltak olyan informatikai munkahelyek, melyek nagyon jól fekszenek az önéletrajzban.

Mindent vivő munkahelyek Mindig voltak olyan informatikai munkahelyek, melyek nagyon jól fekszenek az önéletrajzban.

Az MDS-es (Microarchitectural Data Sampling) résekre még májusban kezdett el javításokat kiadni az Intel. A biztonsági problémát az amszterdami Vrije Universiteit, a grazi University of Technology, az University of Michigan, a Worcester Polytechnic Institute, illetve a KU Leuven kutatói egyaránt kiszúrták. Ahogy a processzoros sebezhetőségi hullámot kiváltó Spectre/Meltdown esetében, úgy az MDS-nél is a modern (értsd: az elmúlt bő húsz évben készült) mikroarchitektúrák szerves részét képző spekulatív végrehajtás nyit utat a támadásra.

00:39

RIDL-TAA leaking full root password hash in seconds

Még több videó

Az MDS-nél a támadó ki tudja mérni a komplex művelet-végrehajtás egyes paramétereit, időzítéseit, a lekérdezések között eltelt időből pedig kikövetkeztethetőek a mag egyes puffereiben található adatok. A sebezhetőség nem a jellemzően nagyobb kapacitású, különféle gyorsítótárakra, hanem az apró pufferekre fókuszál. Ezekből több különféle található egy modern magban. Az egyik ilyen az LFB (Line Fill Buffer), melynek funkciója a rendkívül gyors L1D cache hatékony feltöltése. Ez gyakorlatilag hidat képez az első szintű adatcache és a memória között, elsőként a kis pufferbe kerülnek be ideiglenesen az adatok, majd végül innen a jellemzően 100 kilobájt alatti kapacitású L1D-be. Hasonló célt szolgál a store buffer, azonban ez fordítva is működhet, tehát akár memóriába való írást is segítheti, gyorsítva azt. A load portokban is bent "ragadhatnak" adatok, ezek funkciója ugyanis a memória és a regiszterek közötti kapcsolat hatékony áthidalása.

Az apró tárakban processzoros időszámítással kalkulálva viszonylag sokáig állhatnak különféle adatok. Az LFB-nek például addig nem törlődik a tartalma, amíg abba nem érkezik be egy újabb beolvasás eredménye, a store bufferben pedig vegyesen lehetnek különféle új és régi adatok a különböző store műveltek miatt. A load portokban szintén lehet úgynevezett állott adat, ezek ugyanis jellemzően szintén megtartják addig tartalmukat, amíg nem érkezik be friss adat. Az MDS-t kihasználó támadó ezekre a régi adatokra utazhat, amelyek megfelelő védelem nélkül bármelyik pufferből kinyerhetőek.

A Vrije Universiteit szerint az Intel mindeddig csupán részben javította az MDS-es sebezhetőségeket, az erőfeszítések tehát mindmáig félsikert mutatnak. Az egyetem szakemberei már májusban látták, hogy a chipgyártó megoldása ingatag lábakon áll, az Intel kérésének eleget téve azonban nem kommentálták a javítás minőségét. Kaveh Razavi, az egyik kutató szerint az Intel egyszerűen figyelmen kívül hagyta az egyik MDS-variánst, amely ráadásul mind közül a legveszélyesebb. Razaviék szerint ugyanis ezt meglovagolva csupán másodpercek alatt hozzá lehet férni érzékeny adatokhoz, például jelszavakhoz.

A villámgyors módszert TSX Asynchronous Abort (TAA) néven írták le. Ahogy az elnevezés is utal rá, ehhez az Intel TSX utasításkészlet-kiterjesztése szükséges. A Haswell architektúrában megjelent fejlesztés a tranzakcionális memóriakezelést hivatott javítani. A tranzakció végrehajtása közben a processzor feljegyzi, hogy mely memóriaterületekről történt olvasás és melyekre írás, valamint a módosítások csak az L1D és L2 cache-be kerülnek, miközben az L3 az eredeti adatokat tartalmazza, így a többi programszál ezeket látja. A művelet végén a processzor ellenőrzi, hogy a feljegyzett memóriaterületek még mindig az eredeti értékeket tartalmazzák-e (azaz amikkel a program a tranzakció alatt számolt, azt más szál nem módosította-e időközben). Amennyiben igen, akkor az adatmódosítások egyszerre lesznek láthatóak a teljes rendszer számára (commit), ha viszont változás történt, akkor az L1/L2 cache-ben levő a módosított értékeket felülírja az aktuális értékekkel (rollback), és újra megpróbálkozik a teljes tranzakció lefuttatásával.

A támadó ez utóbbit lovagolhatja meg, vagyis kvázi kényszerítheti a processzort arra, hogy rollbackeljen, amely utat nyit a pufferekben található friss adatokhoz. A Vrije Universiteit másik kutatója, Jonas Theis szerint ezzel mindössze 30 másodperc alatt képesek adminisztrátori jelszavak hashének kinyerésére. Az Intel ezzel szemben azt állítja, hogy a Zombieload v2 rendkívül nehezen aknázható ki, amely inkompetencia mellett a probléma elbagatellizálására egyaránt utalhat. A hozzáállást látva az ugyancsak a Vrije Universiteitnél tevékenykedő Cristiano Giuffrida mélységes csalódásának adott hangot, mely szerint az Intel biztonsági mérnökei lassan két évvel a processzoros sebezhetőségi hullámot kiváltó Spectre/Meltdown után sincsenek a helyzet magaslatán.

 

a címlapról