
Memóriaromboló támadás: itt a GPUhammer
Az egész ügy úgy kezdődött, hogy egyetemi labor kutatói bizonyították: az Nvidia RTX A6000 (egy rendkívül elterjedt, nagy teljesítményű GPU) sebezhető egy úgynevezett Rowhammer nevű támadással szemben. A sérülékenység lehetővé teszi, hogy a támadó egy memóriasor gyors, ismételt elérésével adatokat változtasson meg a szomszédos sorokban – magyarán a memória folyamatos „kalapálásával” (hammering) egyes biteket átír nulláról egyre vagy fordítva. Bár a Rowhammert eddig csak processzorok (CPU) memóriáján sikerült kivitelezni, most először GPU-ra is sikerült átültetni.
A GPUhammer nevű demonstrációban elég volt egyetlen bitet megváltoztatni egy MI-modell súlyainak tárolásakor (például egy exponens tagban), és már ennyivel is 2^16-tal változott az érték – ez az MI-modell pontosságát 80%-ról 0,1%-ra zuhanthatta. Ez „katasztrofális agykárosodás” a mesterséges intelligencia számára: egy önvezető autó például összekeverheti a stoptáblát egy 80 km/h táblával, a rákdiagnózis elcsúszhat, a víruskereső pedig nem találja meg a kártevőt.
Nem csak régi Rowhammer: immár GPU-kban is megbújhat
A kutatók elsődlegesen gépi tanuláson alapuló alkalmazásokat teszteltek, például a 3D U-Net gépi tanulási modellt, amelyet főként orvosi képfeldolgozásra használnak. Az Nvidia védelmi megoldása – a rendszer szintű hibajavító kód (ECC) bekapcsolása – körülbelül 10%-os lassulást okoz. Ez főként a memória és a GPU közötti sávszélesség csökkenéséből (12%), illetve az általános memória-kapacitás csökkenéséből (6,25%) adódik. Az a program, amely sok memóriát használ, különösen megérzi ezt a visszaesést.
Rowhammer típusú támadást nehéz kivitelezni GPU-kon: a grafikus chipek speciális, saját GDDR (grafikus memória) lapkákat használnak, amelyek eltérnek a CPU-k DDR memóriájától. Ráadásul a memóriacímzés titkosított, tehát még privilégizált felhasználó sem fér hozzá, így a szükséges támadási mintázatok visszafejtése is bonyolult. A GDDR modulok magasabb késleltetése, gyorsabb frissítése és saját védelmi trükkjei szintén nehezítik a támadók dolgát, mégis sikerült egy bejutási pontot találni.
Hogyan védekezzünk?
Az Nvidia Hopper és Blackwell architektúrájú GPU-in már alapból be van kapcsolva az ECC hibajavítás. A régebbi generációknál (például A6000) ez nincs mindig aktiválva, de szoftveresen (például Redfish vagy a gép CPU-ján keresztül) bekapcsolható. Az ECC általában a SECDED elvet követi, azaz az egybites hibákat teljesen kijavítja, a kétbites hibákat felismeri (de nem javítja), három vagy több bit flip esetén azonban a javítás már sikertelen lehet vagy hibás, sőt rejtve is maradhat. Jelenleg minden ismert Rowhammeres bitflip egybites volt, tehát az ECC hatékony védelemnek tűnik – de nem szünteti meg teljesen a kockázatot, csak mérsékli.
A GDDR6-alapú Ampere GPU-k (ezeket gépi tanulásra és játékokra is használják) is sérülékenyek lehetnek. Az újabb, például H100 (HBM3) vagy RTX 5090 (GDDR7) chipeknél már a memórián belül található ECC, amely valószínűleg még hatékonyabb védelmet nyújt, de ezen chipek elméleti sebezhetőségét még nem vizsgálták ki teljesen.
Miért veszélyes mindez?
Míg az otthoni számítógépekben vagy céges PC-kben is veszélyes lehet a Rowhammer, a helyzet még súlyosabb a felhőalapú szolgáltatásoknál, ahol egy erőforrást (például GPU-t) több ügyfél is használ. Egy támadó ilyen környezetben átírhatja más ügyfél fontos adatait, amíg ugyanazt a hardvert használják. Az Amazon Web Services és más kisebb szolgáltatók (Runpod, Lambda Cloud) mind kínálnak A6000-es példányokat; az AWS automatikusan bekapcsolja a védelmet.
Az elmúlt 10 évben a GPUhammer az első olyan támadás, amely képes bit flipet kiváltani GDDR6-os GPU-memóriában. Korábban minden Rowhammer-támadás csak CPU memórián (DDR3/4, LPDDR3/4) működött, sőt ha korábban GPU-t is használtak hammerelésre, akkor sem a GPU saját memóriáját, hanem az eszköz többi, különálló DDR vagy LPDDR memóriáját támadták.
A kutatási eredményeket a Torontói Egyetem kutatói (Chris S. Lin, Joyce Qu és Gururaj Saileshwar) júliusban, a 2025-ös Usenix Security Conference-en mutatják be.