Nepaisant papildomos apsaugos, DDR4 atminties lustai išlieka pažeidžiami RowHammer atakoms

Mokslininkų komanda iš Vrije Universiteit Amsterdam, ETH Ciurich ir Qualcomm išleista Apsaugos nuo klasės atakų, naudojamų šiuolaikiniuose DDR4 atminties lustuose, efektyvumo tyrimas „RowHammer“, leidžiantis keisti atskirų dinaminės laisvosios kreipties atminties (DRAM) bitų turinį. Rezultatai nuvylė, o didžiųjų gamintojų DDR4 lustai vis dar yra likti pažeidžiamas (CVE-2020-10255).

RowHammer pažeidžiamumas leidžia sugadinti atskirų atminties bitų turinį cikliškai nuskaitant duomenis iš gretimų atminties ląstelių. Kadangi DRAM atmintis yra dvimatis elementų masyvas, kurį sudaro kondensatorius ir tranzistorius, nuolatinis tos pačios atminties srities skaitymas sukelia įtampos svyravimus ir anomalijas, dėl kurių gretimose ląstelėse prarandamas nedidelis įkrovimas. Jei skaitymo intensyvumas yra pakankamai didelis, ląstelė gali prarasti pakankamai didelį krūvį ir kitam regeneravimo ciklui nebebus laiko atkurti pradinės būsenos, dėl to pasikeis ląstelėje saugomų duomenų vertė. .

Norėdami blokuoti šį efektą, šiuolaikiniai DDR4 lustai naudoja TRR (Target Row Refresh) technologiją, skirtą užkirsti kelią ląstelių sugadinimui RowHammer atakos metu. Problema ta, kad nėra vieno požiūrio į TRR diegimą ir kiekvienas procesoriaus ir atminties gamintojas interpretuoja TRR savaip, taiko savo apsaugos parinktis ir neatskleidžia įgyvendinimo detalių.
Išstudijavus gamintojų naudojamus RowHammer blokavimo metodus, buvo lengva rasti būdų, kaip apeiti apsaugą. Patikrinus paaiškėjo, kad gamintojų praktikuojamas principas „saugumas per dviprasmiškumą (security by obscurity) įgyvendinant TRR padeda apsaugoti tik ypatingais atvejais, apimančius tipines atakas, manipuliuojančias vienos ar dviejų gretimų eilučių ląstelių krūvio pokyčiais.

Mokslininkų sukurta programa leidžia patikrinti lustų jautrumą daugiašaliams RowHammer atakos variantams, kai vienu metu bandoma paveikti kelių eilučių atminties elementų krūvį. Tokios atakos gali apeiti kai kurių gamintojų įdiegtą TRR apsaugą ir sukelti atminties bitų sugadinimą, net ir naujoje aparatinėje įrangoje su DDR4 atmintimi.
Iš 42 tirtų DIMM modulių, nepaisant deklaruotos apsaugos, 13 modulių buvo pažeidžiami nestandartinių RowHammer atakos variantų. Probleminius modulius gamino SK Hynix, Micron ir Samsung, kurių produktai viršeliai 95% DRAM rinkos.

Be DDR4, buvo tiriami ir mobiliuosiuose įrenginiuose naudojami LPDDR4 lustai, kurie taip pat pasirodė jautrūs pažangiems RowHammer atakos variantams. Visų pirma, problema nukentėjo išmaniuosiuose telefonuose „Google Pixel“, „Google Pixel 3“, LG G7, „OnePlus 7“ ir „Samsung Galaxy S10“ naudojama atmintis.

Tyrėjai sugebėjo atkurti keletą probleminių DDR4 lustų naudojimo būdų. Pavyzdžiui, naudojant RowHammer-išnaudoti PTE (Page Table Entries) branduolio privilegijai gauti prireikė nuo 2.3 sekundės iki trijų valandų ir penkiolikos sekundžių, priklausomai nuo išbandytų lustų. Ataka dėl atmintyje saugomo viešojo rakto sugadinimo RSA-2048 užtruko nuo 74.6 sekundžių iki 39 minučių 28 sekundžių. Ataka prireikė 54 minučių ir 16 sekundžių, kad būtų galima apeiti kredencialų patikrinimą modifikuojant sudo proceso atmintį.

Paskelbta programa, skirta patikrinti vartotojų naudojamus DDR4 atminties lustus TRRespass. Norint sėkmingai įvykdyti ataką, reikalinga informacija apie atminties valdiklyje naudojamų fizinių adresų išdėstymą bankų ir atminties langelių eilučių atžvilgiu. Išdėstymui nustatyti papildomai buvo sukurta programa drama, kurį reikia paleisti kaip root. Artimiausiu metu taip pat planuojama paskelbti programą, skirtą išmaniojo telefono atminčiai išbandyti.

Įmonės "Intel" и AMD Apsaugai jie patarė naudoti klaidų taisymo atmintį (ECC), atminties valdiklius su maksimaliu aktyvinimo skaičiumi (MAC) ir naudoti padidintą atnaujinimo dažnį. Tyrėjai mano, kad jau išleistiems lustams nėra jokio sprendimo, kuris garantuotų apsaugą nuo Rowhammer, o ECC naudojimas ir atminties atkūrimo dažnio didinimas pasirodė neveiksmingi. Pavyzdžiui, anksčiau buvo pasiūlyta procesas atakų prieš DRAM atmintį apeinant ECC apsaugą, taip pat parodo galimybę atakuoti DRAM vietinis tinklas, nuo svečių sistema и pasinaudojant naršyklėje veikia JavaScript.

Šaltinis: opennet.ru

Добавить комментарий