A Zürcher Műszaki Egyetem és a Google mérnökei új Rowhammer támadási technikát dolgoztak ki - Phoenix (CVE-2025-6202), amely lehetővé teszi, hogy megkerüljék a DDR5 chipekben alkalmazott TRR (Target Row Refresh) védelmi mechanizmusokat, amelyek megakadályozzák a memória cellák torzulását a töltésvesztés miatt. Nyilvánosságra hozták egy exploit prototípusát, amely lehetővé teszi egy adott bit tartalmának módosítását a rendszeren belül, ezzel emelve a privilégiumaikat. A támadás demója egy AMD Zen 4 mikroarchitektúrára épülő PC-n zajlott, amelyen a SH Hynix DDR5 memória volt, és tipikus asztali feladatokat hajtottak végre.
A RowHammer támadás lehetővé teszi a DRAM memória egyes bitek tartalmának torzítását a szomszédos memóriaüregek adataiból való ciklikus olvasás révén. Mivel a DRAM memória egy kétdimenziós cella tömböt képvisel, ahol minden cella egy kondenzátorból és egy tranzisztorból áll, a folyamatos olvasás egy bizonyos memória területről feszültség ingadozásokat és anomáliákat okoz, amelyek kis mennyiségű töltés elvesztéséhez vezetnek a szomszédos cellákban. Ha az olvasási intenzitás magas, akkor a szomszédos cella elegendő töltést veszíthet ahhoz, hogy a következő regenerálási ciklus már nem tudja visszaállítani az eredeti állapotát, ami a cellában tárolt adatok értékének megváltozásához vezet.
A Rowhammer támadási módszert 2014-ben javasolták, ezt követően pedig biztonsági kutatók és gyártók között egy "macska-egér" játék kezdődött - a memória chipek gyártói megpróbálták blokkolni a sebezhetőséget, míg a kutatók új megkerülési módokat találtak. Például a RowHammer ellen a chipgyártók TRR (Target Row Refresh) mechanizmust alkalmaztak, de kiderült, hogy ez csak bizonyos esetekben akadályozza meg a memória cellák torzulását, nem véd minden lehetséges támadási forma ellen. Támadási módszereket dolgoztak ki DDR3, DDR4 és DDR5 chipekre Intel, AMD és ARM processzorokkal rendelkező rendszerekben, valamint a NVIDIA grafikus kártyákban használt videomemóriára is. Sőt, megtalálták a módokat az ECC hibajavítás megkerülésére, és javasoltak hálózati támadási lehetőségeket is JavaScript kód végrehajtásával a böngészőben.
A DRAM memória cellák torzulásának védelme megkerülésének kulcsa a TRR mechanizmus működésének logikájának megértése, amely főként a megvalósítás részleteinek elrejtésére és a "biztonság a bizonytalanság által (security by obscurity)" elvre épít. A kutatók speciális FGPA Arty-A7 és ZCU104 alapú lapokat készítettek a logika meghatározására és a visszafejtés elvégzésére, amelyek lehetővé teszik a SO-DIMM és RDIMM DDR5 memória modulok tesztelését, a memória cellákhoz való hozzáférési minták azonosítását, valamint az alacsony szintű DDR parancsok észlelését, amelyek a memória programozási műveletei után kerülnek továbbításra, és a rájuk adott reakciók elemzését.

Azt találták, hogy a vizsgált DDR5 chipek védelme extra memóriafrissítési vezérlő parancsok nélkül valósult meg, és a cellák újratöltési frekvenciájának változó mintáin alapul. Rowhammer támadás sikeres végrehajtásához ezekben a körülmények között a memóriacellák frissítési műveleteinek ezreinek pontos nyomon követésére van szükség. Ezekben a körülmények között a korábban létező Rowhammer támadási módszerek alkalmazhatatlannak bizonyultak, ezért a kutatók egy új módszert dolgoztak ki, amely automatikusan korrigálja a hozzáférési mintákat a memóriában elmaradt frissítési műveletek észlelésével a támadás során.
A módszer hatékonynak bizonyult, és a tesztek során lehetővé tette a memória bitének kontrollált torzítását az SK Hynix 15 tesztelt DDR5 chipjének mindegyikén (amely a DRAM piac 36%-át képviseli), amelyek 2021 végétől 2024 végéig készültek. Egy bit torzítása elegendő volt ahhoz, hogy olyan exploitot hozzanak létre, amely lehetővé tette a root hozzáférést egy AMD Ryzen 7 7700X CPU-val és SK Hynix DDR5 memóriával rendelkező rendszeren a támadás során 109 másodperc alatt. A javasolt támadási módszer blokkolásához ajánlott a memóriafrissítési frekvencia háromszorosára emelése.
Aki root jogokat szeretne szerezni egy bit torzításával, az alábbi módszereket vizsgálta: a memóriaoldalak táblázatának (PTE, page table entry) bejegyzéseinek módosítása a kernel privilégiumának megszerzéséhez; az OpenSSH-ben tárolt RSA-2048 nyilvános kulcsának megsemmisítése (a nyilvános kulcsot a támadó privát kulcsához lehet illeszteni a cél VM-hez való csatlakozás érdekében); a jogosultságok ellenőrzésének megkerülése a sudo folyamat memóriájának módosításával. A PTE módszer minden 15 tesztelt chip esetében működőképesnek bizonyult, az RSA támadást 11 chip ellen, míg a sudo-t 5 chip ellen sikerült végrehajtani. virtuális gépben A PTE módszer működőképes volt minden 15 tesztelt chipnél, az RSA támadás 11 chip ellen, míg a sudo támadás 5 chip ellen volt sikeres.

A memória táblázat helyezéséhez a kiválasztott DRAM cellákban a Rubicon technikát alkalmazzák, amely egyidejűleg került előtérbe a Phoenix támadással. A Rubicon manipulálja a Linux kernel memóriaelosztási rendszereinek optimalizálási sajátosságait, lehetővé téve a memória kiosztását olyan területeken, amelyek más «migratetype» értékkel rendelkeznek, és amelyeket privilegiált műveletekhez tartanak fenn. A probléma létezését a Linux kernel 5.4-6.8 verzióiban igazolták, de elméletben a sérülékenység minden, a Zoned Buddy Allocator memóriaallokálási mechanizmussal rendelkező kernelre kiterjed.
A Rubicon technika nemcsak a Rowhammer támadások végrehajtását egyszerűsíti, hanem alkalmazható a mikroarchitektúra támadások, mint például a Spectre hatékonyságának növelésére is, és leegyszerűsíti a titkos adatok memóriába való elhelyezésének azonosítását, amelyeket speciális utasítások spekulatív végrehajtásával kell kinyerni. A Rubicon lehetővé teszi, hogy a memóriahosszú keresési fázis nélkül elkerülhessük a fájlok, mint például /etc/shadow, azonosítását. Ehelyett azonnal megkezdhető a mikroarchitektúrára vonatkozó sérülékenységek kihasználása egy ismert fizikai címhez tartozó fájl előre meghatározott elhelyezésével. Például a Rubicon módszer alkalmazása lehetővé tette az adatszivárgás felgyorsítását egy Intel i7-8700K CPU-val rendelkező rendszeren, 2698 másodpercről 9,5 másodpercre (284-szeres sebességgel), míg az AMD EPYC 7252 CPU-val rendelkező rendszeren 189 másodpercről 27,9 másodpercre (6,8-szoros sebességgel) csökkent.

Közben egy másik kutatócsoport, a George Mason Egyetemről, megmutatta a Rowhammer támadások alkalmazhatóságát AI rendszerek kompromittálására. A kutatók egy OneFlip módszert javasoltak, amely lehetővé teszi az AI modellek viselkedésének helyi, egy bit-információs torzításon keresztüli módosítását. Elérhető egy kód példa, amely lehetővé teszi a trójai változtatások behelyettesítését egy neurális hálózatba. Megmutatták, hogyan lehet egy bit megváltoztatását felhasználni az autópálya-modellek működésének torzítására, a „Stop” közlekedési jelzés „Sebességkorlátozás” jelzésre való értelmezésének megváltoztatására. A módszer alkalmazásának áttekintése során megvizsgálták azt is, hogy hogyan lehet megkerülni az arcfelismerő rendszereket. Azok számára, akik 32 bites egész számok formájában tárolják a súlyozási együtthatókat, a támadás sikerességét 99,9%-ra becsülik, anélkül, hogy befolyásolná a modell alapvető jellemzőit.

Forrás: opennet.ru
