На конференцията 38C3 беше представен фреймворкът FlippyRAM, предназначен за проверка на уязвимости, позволяващи атаки от класса Rowhammer за изменение на съдържанието на оперативната памет. Кодът на инструмента е написан на C++ и се разпространява под MIT лиценз. За улесняване на тестването е създаден готов live-дистрибутив (1 ГБ), който позволява проверка чрез зареждане от USB флаш, както и контейнерен образ за Docker.
Целта на проекта е да привлече потребители да участват в изследване, което се опитва да събере статистика за това колко уязвимости от клас Rowhammer се проявяват в системите, които се използват в ежедневието. Данните за резултатите от тестването могат да бъдат изпратени както от заредения дистрибутив, така и ръчно добавени на сайта на изследването.
Методът на атака Rowhammer беше предложен преди 10 години, след което започна игра на "котка и мишка" между изследователи по сигурността и производители на хардуер - производителите на паметта се опитваха да блокират уязвимостта, а изследователите намираха нови начини за нейното заобикаляне. Освен при DDR3 чиповете на Intel x86, бяха открити методи за атака върху DDR4 и DDR5 чипове, системи с AMD и ARM процесори, варианти за заобикаляне на корекцията на грешки ECC, методи за извършване на атака по мрежата и чрез изпълнение на JavaScript код в браузъра.
Атаката RowHammer позволява изкривяване на съдържанието на отделни битове в паметта DRAM чрез циклично четене на данни от съседни клетки. Тъй като паметта DRAM представлява двуизмерен масив от клетки, всяка от които се състои от кондензатор и транзистор, непрекъснатото четене на едно и също място в паметта води до флуктуации на напрежението и аномалии, предизвикващи малка загуба на заряд в съседните клетки. Ако интензитетът на четенето е голям, съседната клетка може да загуби достатъчно голям обем заряд и следващият цикъл на регенерация няма да успее да възстанови първоначалното й състояние, което води до промяна на стойността на данните, съхранявани в клетката. За защита от RowHammer производителите на чипове добавиха механизъм TRR (Target Row Refresh), който блокира изкривяването на клетки в определени случаи, но не защитава от всички възможни варианти на атака.
Източник: opennet.ru
