Phoenix Rowhammer

Editors' Pick

Az ETH Zürich és a Google kutatói új Rowhammer-támadási technikát dolgoztak ki, amely Phoenix néven fut, és sikerrel tud bit-flippeléseket előidézni DDR5-ös memóriákon annak ellenére, hogy azokba fejlett TRR (Target Row Refresh) mechanizmusokat építettek be.

A DDR5-ös memóriák bemutatása után a TRR rendszerek igyekeznek megakadályozni, hogy a Rowhammer-típusú ismételt memóriaaktiválások miatt egy sor bitje megolvadjon (bit flip), mint ahogy az DDR4-ben volt. Sok gyártó állítja, hogy az új TRR-megoldások lényegesen jobban működnek, de eddig nem volt világos, hogy mekkora védelmi hiányosságok maradtak. 

A Phoenix újítása az, hogy nem egy hagyományos, fix mintázatot követ, hanem képes önjavító (self-correcting) szinkronizáció memória-frissítésiciklusokkal. Amikor a támadó mintájában hiányzik egy frissítés, a rendszer érzékeli ezt, és képes módosítani a támadási mintát, hogy újra szinkronba kerüljön. Ez utóbbi képesség teszi lehetővé, hogy hosszabb ideig fenntartsák a mintázatot a memóriában, ami kritikus a sikerhez.

A kutatók több SK Hynix DDR5 modulon is teszteltek: úgy találták, hogy mind a tíz vizsgált RDIMM-modulon sikerült bit-flippelést előidézni a Phoenix-mintázatokkal, feltéve hogy a mintázatokat kellően pontosan időzítették.

Az eredmények között szerepel az is, hogy az aktiválási ráta (hány ACT parancsot lehet kiadni egy refresh ciklus alatt) számít: magasabb aktiválás mellett a bit-flipek nagyobb részét váltja ki a támadás. Ugyanakkor az, hogy mennyi ideig tudnak szinkronban maradni, alapvető, ha hamar kiszáll a mintázat, a TRR mechanizmus elcsípheti, és megakadályozza a flipet.

A bemutatott exploitj egy gyakori DDR5-ös rendszerben működött le olyan beállításokkal, amelyek jellemzőek lehetnek sok asztali gépre, a BIOS-alapértelmezett konfiguráció, tehát nem volt semmiféle extra védelmi erősítés. Ebben a környezetben root jogosultságot tudtak szerezni – méghozzá viszonylag rövid idő alatt (109 másodperc).

kutatás konklúziója az, hogy a DDR5-ös TRR mechanizmusok, bár fejlettebbek, még mindig nem nyújtanak eléggé átfogó védelmet olyan fejlett támadásokkal szemben, mint a Phoenix. A szerzők ezért javasolják, hogy a jövőbeli memória-termékekben kötelező jelleggel vezessék be olyan védelmet, mint a per-row aktiválási számlálók (activation counters), amely minden memóriasor aktivitását követi, és így valós időben képes lenne érzékelni, ha túl sok aktiválás történik. 

FORRÁS