
Bitflip-robbanás: hogyan alakul át a memóriatámadás
Az elmúlt tíz év során a Rowhammer-támadások forradalmasították a memóriabiztonság kérdését: már nem csak a hagyományos DDR3 RAM-ok sérülékenységét jelentik, hanem egyre változatosabb DRAM-típusokat és védelmi mechanizmusokat céloznak meg. Az alapelv ugyanaz: a memóriacellák gyors és ismétlődő megcélzása elektromos zavart okoz, amely nullákat egyesre, illetve fordítva változtat – ezt nevezzük bitflipnek. Korábban ezek a technikák főként a központi memória, vagyis a CPU memóriájának kompromittálására szolgáltak, de most a figyelem a GPU-k felé fordult.
GDDRHammer és GeForge: a támadások új generációja
Az RTX 3060 és RTX 6000 Ampere szériás Nvidia videokártyákat sikerült az új módszerekkel kompromittálni, melyek közül a GDDRHammer nevű támadás jelentősen növelte a memóriabankonkénti bitflipek számát: átlagosan 129 módosulást figyeltek meg, ami a korábbi rekord hatszáznegyvenszerese. A módszer különlegessége, hogy képes áttörni a GPU-oldali memórialaptáblák védelmét, így a támadó gyakorlatilag szabadon olvashatja és írhatja a GPU memóriáját.
A GeForge nevű technika még továbbment: az RTX 3060 kártyánál 1171, míg az RTX 6000-nél 202 bitflipet regisztráltak, és ezzel lehetőség nyílik a gazdagép memóriájának elérésére is. Ennek eredményeként mindkét támadással rootszintű jogosultságot lehet szerezni, vagyis teljes kontroll vehető át a Linux-alapú rendszerek felett.
Bizonyos jelek arra utalnak, hogy ezt a két támadást különösen veszélyessé teszi, hogy a CPU-kra tervezett, Rowhammer elleni szoftveres és hardveres védelem egyszerűen használhatatlanná válik, ha a támadó a GPU-oldalt veszi célba.
Memory massaging: az új varázsszó
A támadások kulcsa az úgynevezett „memory massaging” (memóriamanipuláció) eljárás. Ez különféle módszerekkel eléri, hogy a GPU-oldali memórialaptáblák – amelyek alapból védettek a bitflip ellen – kikerüljenek biztonságos helyükről, és sebezhetőbb memóriaterületekre tolódjanak. A támadó ekkor képes a címfordítás felülírására, és így láthatja és módosíthatja akár az egész GPU, sőt a CPU memóriáját is.
A technika lényege, hogy a támadó lecsapolja a dedikált memórialap-kijelölő poolt, pontos időzítéssel szabadítja fel a megfelelő memóriaregiókat, majd ezekre helyezteti át az illesztőprogrammal a támadható részeket. Végül a megfelelő célzással eléri, hogy a hamisított laptábla-bejegyzések a támadó számára kedvező címekre mutassanak.
Védekezési lehetőségek és kockázatok
Ennek ellenére léteznek olyan védelmi mechanizmusok, amelyek jelentősen megnehezítik a támadók dolgát. Az IOMMU (input-output memory management unit) bekapcsolása a BIOS-ban például képes a GPU hozzáférését érzékeny rendszerterületekhez korlátozni, de ez alapból ki van kapcsolva, hogy a teljesítmény ne csökkenjen. Emellett a hibaellenőrző kódok (ECC) GPU-n történő engedélyezése – amit parancssorból aktiválhat a felhasználó – is növeli a biztonságot, bár a működési sebesség kárára.
A jelenlegi tudás szerint csak az RTX 3060 és az RTX 6000, vagyis a 2020-ban bevezetett Ampere architektúrájú Nvidia-kártyák sérülékenyek. Ugyanakkor nem zárható ki, hogy a jövőben további modellek is sebezhetőnek bizonyulnak majd, hiszen a kutatás lényegesen lassabban halad, mint a kártyapiac fejlesztési üteme.
Kitekintés: a felhőszolgáltatók és hétköznapi felhasználók
A nagyvállalati és felhőalapú szolgáltatók biztonsági protokolljai többnyire túlmutatnak a hagyományos otthoni vagy hobbi felhasználók által elérhető szinten, de az új támadási módszerek egyértelműen jelzik: még a videokártya is lehet a rendszer leggyengébb láncszeme. Fontos hangsúlyozni, hogy még nem ismert ezeknek az új Rowhammer-támadásoknak tényleges kihasználása éles környezetben.
Bizonyos jelek arra utalnak, hogy a GPU-gyártóknak és felhasználóknak egyaránt fel kell készülniük arra, hogy a jövő biztonsági incidensei a videokártyák felől is érkezhetnek. Az Nvidia kiegészítő útmutatót tett közzé a sérülékenységgel kapcsolatban, és minden GPU-tulajdonosnak javasolt átnézni a beállításokat, illetve figyelemmel kísérni a gyártók további lépéseit.
