Phoenix — útok na čipy DDR5, který vede k poškození obsahu paměti

Výzkumníci z Curyšské technické univerzity ve spolupráci s inženýry z firmy Google vyvinuli novou techniku útoku známou jako Rowhammer - Phoenix (CVE-2025-6202), která umožňuje obcházet ochranné mechanismy TRR (Target Row Refresh) používající ve funkcích DDR5, které zabraňují zkreslení paměťových buněk v důsledku ztráty náboje. Byl zveřejněn prototyp exploitu, který umožňuje měnit obsah určitého bitu v operační paměti a získat vyšší privilegium v systému. Demonstrace útoku byla provedena na PC s procesorem AMD postaveným na mikroarchitektuře Zen 4 a DDR5 pamětí SK Hynix, na kterém probíhaly typické úkoly pro stolní počítače.

Útok RowHammer umožňuje narušit obsah jednotlivých bitů paměti DRAM cyklickým čtením dat ze sousedních buněk paměti. Protože paměť DRAM představuje dvourozměrné pole buněk, z nichž každá se skládá z kondenzátoru a tranzistoru, provádění nepřetržitého čtení této same oblasti paměti vede k fluktuacím napětí a anomáliím, které způsobují malou ztrátu náboje sousedních buněk. Pokud je intenzita čtení vysoká, může sousední buňka ztratit dostatečné množství náboje, a další regenerační cyklus nemusí stačit k obnovení jejího původního stavu, což povede ke změně uložených dat v buňce.

Metoda útoku Rowhammer byla představena v roce 2014 a od té doby začala mezi bezpečnostními výzkumníky a výrobci hardwaru hra na kočku a myš - výrobci paměťových čipů se snažili zablokovat zranitelnost, zatímco výzkumníci nacházeli nové způsoby, jak ji obejít. Například pro ochranu před RowHammer výrobci čipů implementovali mechanismus TRR (Target Row Refresh), ale ukázalo se, že blokuje zkreslení buněk pouze v některých případech a nechrání před všemi možnými variantami útoku. Metody útoků byly vyvinuty pro čipy DDR3, DDR4 a DDR5 na systémech s procesory Intel, AMD a ARM, stejně jako pro video paměť používanou ve grafických kartách NVIDIA. Navíc byly nalezeny způsoby, jak obcházet korekci chyb ECC a navrženy varianty provádění útoků přes síť a pomocí vykonávání JavaScript kódu v prohlížeči.

Klíčovým faktorem pro obcházání ochrany proti zkreslení paměťových buněk v DRAM je pochopení logiky fungování mechanismu TRR, který se primárně spoléhá na skrytí detailů implementace a princip „bezpečnost prostřednictvím nejasnosti“. Pro pochopení logiky fungování a provedení reverzního inženýrství vytvořili výzkumníci speciální desky založené na FGPA Arty-A7 a ZCU104, které umožňují testovat moduly DDR5 pamětí SO-DIMM a RDIMM, identifikovat vzory přístupu k paměťovým buňkám, určovat, jaké nízkoúrovňové DDR příkazy jsou odesílány po softwarových operacích s pamětí a analyzovat reakci na ně.

Phoenix - útok na čipy DDR5, který vede k narušení obsahu paměti.

Ukázalo se, že ochrana v analyzovaných čipech DDR5 je realizována bez dodatečných příkazů k řízení frekvence obnovování paměti a spoléhá se na schémata s variabilní frekvencí dobíjení buněk. Pro úspěšné provedení Rowhammer útoku za těchto podmínek je vyžadováno přesné sledování tisíců operací obnovování buněk. V těchto podmínkách se starší metody Rowhammer útoku ukázaly jako neaplikovatelné a vědci vyvinuli novou metodu, která provádí sebekorekci přístupových vzorů v průběhu odhalování zmeškaných operací obnovování paměti během útoku.

Metoda se ukázala jako účinná a během testů umožnila dosáhnout kontrolovaného zkreslení paměťového bitu na všech 15 testovaných čipech DDR5 od společnosti SK Hynix (má 36% podíl na trhu DRAM), vyrobených od konce roku 2021 do konce roku 2024. Zkreslení jednoho bitu se ukázalo jako dostatečné pro vytvoření exploitu, který umožňuje získat root přístup v systému při útoku na systém s CPU AMD Ryzen 7 7700X a pamětí SK Hynix DDR5 během 109 sekund. Pro blokaci navržené metody útoku se doporučuje zvýšit frekvenci obnovování paměti třikrát.

Jako metody exploitace, které umožňují získat práva root prostřednictvím zkreslení jednoho bitu, byly zváženy následující techniky: změna obsahu záznamů v tabulce stránek paměti (PTE, page table entry) pro získání privilegium jádra; poškození v paměti uloženého veřejného klíče RSA-2048 v OpenSSH (může být uveden veřejný klíč do shody s útočníkovým virtuálním stroji privátním klíčem pro připojení k VM oběti); obcházení ověřování oprávnění modifikací paměti procesu sudo. Metoda s PTE se ukázala jako funkční pro všech 15 testovaných čipů, útok přes RSA se podařilo provést u 11 čipů, a přes sudo — u 5.

Phoenix - útok na čipy DDR5, který vede k narušení obsahu paměti.

V exploitaci pro umístění tabulek stránek paměti ve vybraných buňkách DRAM je využita technika Rubicon, která byla odhalena současně s diskutovaným útokem Phoenix. Rubicon manipuluje vlastnostmi optimalizace v systému správy paměti jádra Linuxu a umožňuje získat přidělení paměti v oblastech s jiným hodnotou „migratetype“, které jsou rezervovány pro privilegované operace. Přítomnost problému byla potvrzena v jádrech Linuxu od verze 5.4 do 6.8, ale teoreticky tato zranitelnost pokrývá všechna jádra s mechanismem přidělování paměti Zoned Buddy Allocator.

Kromě zjednodušení provádění útoků třídy Rowhammer je technika Rubicon také použitelná pro zvýšení účinnosti mikroarchitektonických útoků, jako je Spectre, a zjednodušení určení umístění v paměti důvěrných dat, která je třeba získat prostřednictvím úniků během spekulativního provádění instrukcí. Rubicon umožňuje vyhnout se dlouhé fázi skenování paměti a určování souborů, jako je /etc/shadow. Místo toho je možné okamžitě začít využívat mikroarchitektonické zranitelnosti díky předem definovanému umístění souboru na známé fyzické adrese. Například použití metody Rubicon umožnilo urychlit únik dat na systému s CPU Intel i7-8700K z 2698 na 9.5 sekundy (o 284 násobků), a s CPU AMD EPYC 7252, z 189 na 27.9 sekundy (o 6.8 násobků).

Přehrát video

Mezitím jiná skupina výzkumníků z George Mason University demonstrovala použitelnost útoků třídy Rowhammer pro kompromitaci AI systémů. Výzkumníci navrhli metodu OneFlip, která umožňuje cíleně změnit chování AI modelů prostřednictvím zkreslení v paměti 1 bitu informace. Je k dispozici příklad kódu pro implementaci trojského přenosu do neuronové sítě. Bylo prokázáno, jak změna jednoho bitu může být použita k narušení fungování modelu autopilota pro změnu interpretace dopravní značky „Stop“ na značku „Omezení rychlosti“. Také bylo zvažováno využití této metody pro obcházení systémů rozpoznávání obličejů. Pro modely, které uchovávají váhové koeficienty ve formě 32-bitových celých čísel, je úspěšnost provedení útoku hodnocena na 99.9 % bez vlivu na původní vlastnosti modelu.

Phoenix - útok na čipy DDR5, který vede k narušení obsahu paměti.


Zdroj: opennet.ru
Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery 🔥 Koupit spolehlivý hosting pro webové stránky s ochranou proti DDoS, VPS VDS servery | ProHoster