Na konferenci Semicon China přednesla texaská firma Third I/O referát, podle nějž je zranitelnost jednak rozšířenější, než se mínilo, a také se ukazuje, že je snadnější ji zneužít. Podle referátu se u osmi z dvanácti namátkou testovaných modulů DDR4 potvrdilo, že u nich lze metodou Rowhammer docílit změnu obsahu paměti, ke které útočící kód nemá přístup. Postiženy byly například moduly Crucial Ballistix Sport nebo další moduly od Micronu, ale také Geilu. Odolaly ale například testované G.Skilly. Nicméně vzorek byl malý, takže rozdíly nemusí být dány značkou, ale spíše parametry a shodou okolností. Hodno pozornosti je, že v jiném testu s DDR3 fungoval útok i na pamětech s ECC.
Rowhammer překlápí bity v buňkách vedle těch, do nichž přistupuje
Útok Rowhammer využívá známý jev nastávající v DRAM, kdy paměťové buňky ruší interferencí své sousedy. Výrobci pamětí v průběhu let vyvinuli různá řešení, jak chybám zabránit, ovšem ukazuje se, že při cílených pokusech o narušení integrity tyto techniky nestačí. Rowhammer používá speciálně nastavený vzor přístupu k paměti, s nímž opakovaně „tluče“ na danou adresu. U současné DRAM (DDR3) s vysokou hustotou se takto dají buňky v sousedních řadách přehodit z jednoho logického stavu do druhého – z nuly na jedničku a obráceně. Náboj z paměťových buněk totiž „přeteče“ do sousedních.
Útok Rowhammer (Zdroj: Eurosoft)
Výrobci pamětí tvrdili, že u DDR4 je riziko útoku Rowhammer již minimalizováno. Paměť je sice stejně či ještě hustší než DDR3 díky menšímu procesu, ale byly aplikovány techniky, které mají stabilitu zlepšit, například cílené obnovování částí paměti (Targetted Row Refresh, TRR). Použití TRR mělo dle Samsungu či Micronu překlápění bitů v DDR4 zabránit, zřejmě ale není dostatečnou ochranou. Pokročilejší testování a pokusy (Third I/O používá vlastní zátěžový test původně vyvinutý pro jiné účely) totiž zranitelnost opět odhalily.
Podle Third I/O je také zřejmě napadnutelnost závislá na datech, použitých k onomu „bušení“. Při některých testech se specifickými sekvencemi bitů daly sousední buňky narušit mnohem snáze než s jinými. Na některé moduly prý například působil „zabijácký vzor“ 492492492492492… (binárně 0100100100100…) o 50 % účinněji než samé nuly či jedničky.
Primární efekt tohoto útoku je jen ničivý, tedy narušení dat aplikací či systému a následný pád, podle toho, kde překlopené bity přistanou. Demonstrována byla ale již i sofistikovanější zneužití, kdy je vložen a poté spuštěn škodlivý kód nebo zvýšena přístupová oprávnění. Obojí pak umožňuje ovládnout systém. Špatnou zprávou je, že zneužití není zdaleka jen akademickou záležitostí. Demonstrována byla i implementace pomocí javascriptu, takže útočit by se dalo přímo z webových stránek.
S DRAM vyráběnou současnými procesy se patrně už nedá nic dělat, doufejme ale, že se díky těmto experimentům podaří dostat efektivnější ochrany do příštích generací pamětí. Ochrana existujících systémů bude ale asi muset být na softwarové úrovni, tedy nějak detekovat přístupové charakteristiky útoků Rowhammer a zabránit jim.
Zdroj: Ars Technica