П’ять років тому була виявлена небезпечна уразливість в мікросхемах і модулях оперативної пам’яті. Це атака Rowhammer на осередки з записаними даними, яка відкривала хакерам доступ до системи. За минулі роки була придумана технологія захисту від Rowhammer. Вважалося, що пам’ять DDR4 і LPDDR4 невразлива до даного виду атаки. Виявилося, що уразливість залишилася і її не так просто ліквідувати.
Група VUSec по системам і мережевої безпеки в університеті VU Amsterdam опублікувала дослідження, в якому розвінчується міф про стійкість пам’яті DDR4 а атакам виду Rowhammer. Цей вид атаки став можливий після того, як техпроцес виробництва оперативної пам’яті подолав позначку 40 нм.
Чим нижче технологічні норми, тим щільніше розташовуються осередки пам’яті і заряди в осередках (біти). Зловмисник, атакуючи з високою швидкістю читання-запису певні осередки (ряди) пам’яті, викликає перемикання стану в суміжних комірках, куди запис безпосередньо командами не провадиться. Тим самим відбувається запис шкідливого коду в пам’ять з подальшим його виконанням або, що простіше, викликається відмову в обслуговуванні системи, а також несанкціоноване підвищення привілеїв.
Для пом’якшення і усунення загрози Rowhammer була придумана технологія Target Row Refresh (TRR). Точніше, це загальна назва для комплексного захисту від Rowhammer. Виробники пам’яті можуть самі вибирати підхід, який захищає їх пам’ять від даної уразливості. Наприклад, з цієї вразливістю справляється збільшення частоти оновлення даних в пам’яті або включення ECC.
Свіжа перевірка 42 модулів пам’яті від кількох компаній показала, що модулі з включеною захистом TRR захищають від відомих методів Rowhammer. Ось тільки дослідники VUSec створили алгоритм обходу TRR, після застосування якого 13 з 42 модулів вдалося успішно зламати.
Нова технологія проведення атаки Rowhammer названа TRRespass (обхід TRR). Знайти шляхи обходу захисту дослідникам допомогли фахівці з Вищої технічної школи Цюріха (ETH Zurich), які надали дослідникам всю інфраструктуру пам’яті у вигляді матриці ПЛІС. Після детального вивчення механізмів роботи пам’яті і інтерфейсів дослідники створили програмний інструмент для атаки за принципом фаззінга. Метод фаззінга використовується при автоматичному тестуванні програм. На вхід подаються часто випадкові дані, після чого аналізуються вихідні дані. Програма, а в даному випадку модуль пам’яті, для дослідника залишається «чорним ящиком», знати про вміст якого вони не зобов’язані.
За допомогою «guided black box fuzzer» дослідники виявили уразливість до Rowhammer не тільки в модулях пам’яті, але також виявили можливість цієї атаки на пам’ять в 5 моделях смартфонів: Google Pixel, Google Pixel 3, LG G7 ThinQ, OnePlus 7 і Samsung Galaxy S10e ( G970F). Гірший час, необхідне для отримання привілеїв ядра, становило три години 15 хвилин, а краще — 2,3 секунди. Також дослідники змогли підробити підпис довіреної ключа RSA-2048 за 39 хвилин (а найкращий час склало трохи більше хвилини).
Компанії Intel і AMD вже відреагували на повідомлення про нову технологію обходу уразливості Rowhammer (CVE2020-10255). В Intel заявили, що ця вразливість не відноситься до процесорів і є проблемою виробників модулів пам’яті. В AMD були менш говіркі і заявили, що контролери пам’яті в її процесорах випускаються з використанням специфікацій JEDEC і вони нічого знати не знають.
Comments