Security Week 2327: RowPress, новая атака на оперативную память

На прошлой неделе исследователи из Швейцарской высшей технической школы Цюриха опубликовали работу, в которой показали новый метод атаки на ячейки оперативной памяти. Метод RowPress развивает идеи атаки RowHammer, впервые показанной в 2014 году еще на модулях памяти стандарта DDR3. Если предельно упростить описание этой атаки, RowHammer вызывает сбои в ячейках памяти путем многократных операций чтения соседних ячеек. Вызванная таким «постукиванием» перемена значения в целевой ячейке с единицы на ноль или наоборот может эксплуатироваться для, например, доступа к защищенным данным в оперативной памяти.

sqvaadhh2daqah4sgrdi6v475_q.png


Суть RowPress показана на этом трудночитаемом графике. Исследователи из ETH Zurich слегка изменили метод атаки: они последовательно, сотни и тысячи раз подряд, обращались к ячейкам памяти так, чтобы контроллер держал «открытым» соответствующий ряд ячеек максимально долго. То есть, по сути, они применили новый порядок обращения к данным. Именно это усовершенствование привело к значительному уменьшению количества операций, необходимых для того, чтобы в соседнем ряду произошел сбой и значение целевой ячейки изменилось. Эффективность атаки таким образом удалось повысить в десятки и сотни раз. В некоторых случаях повреждение данных удавалось вызвать после всего одной активации соседнего ряда ячеек. Самое главное, что работоспособность RowPress была продемонстрирована на вполне актуальных модулях памяти DDR4, которые защищены от предыдущих атак RowHammer.
И RowPress, и RowHammer (этот метод позднее адаптировали для чипов DDR4) можно отнести к аппаратным атакам. Атакующая программа задействует какую-то особенность «железа», причем избавиться от этого аппаратного недостатка крайне сложно. Атаки на оперативную память, таким образом, имеют нечто общее с уязвимостями типа Spectre в процессорах. В случае с памятью фундаментальной проблемой является высокая плотность ячеек памяти, из-за которой многократные запросы к одной области памяти (куда у атакующей программы есть доступ) могут повреждать соседние области (к которым доступа нет).

RowPress не только обходит защиту от RowHammer, но также показывает более высокую эффективность: для достижения результата при прочих равных требуется меньше обращений к памяти. В задачи авторов работы не входила демонстрация практической атаки. Более того, для большинства экспериментов создавались искусственные условия, облегчающие тестирование. В том числе модули памяти принудительно нагревались до 50 (в некоторых случаях — до 80) градусов, что повышало вероятность сбоев. Впрочем, был проведен и эксперимент, максимально приближенный к реальным условиям (использовалась система с процессором Intel Core i5 10-го поколения и 16-гигабайтный модуль памяти с защитой от RowHammer). В нем с помощью атаки RowPress был достигнут успех (повреждение памяти), в то время как атака RowHammer результатов не достигла.

Применение RowHammer или RowPress в реальных атаках выглядит высшим пилотажем. Нужно одновременно:
  • допустить выполнение произвольного кода на целевой системе, пусть и с низкими привилегиями;
  • нацелить вредоносную программу на работу с ячейками памяти по соседству с целевыми, там, где повреждение данных может вызвать какой-то полезный эффект;
  • мириться с тем, что это повреждение будет более-менее случайным (изменится значение какой-то ячейки в ряду, одной или нескольких, либо не изменится вовсе).

Такая практическая атака была продемонстрирована в 2015 году: с помощью RowHammer был получен неограниченный доступ к оперативной памяти в ОС Linux. Вполне вероятно, что будут появляться и другие работающие методы атаки на оперативную память, — главное, чтобы основной вектор атаки был доступен.

И пока выходит так, что он остается доступным, несмотря на принимаемые меры. Это, увы, главная особенность аппаратных уязвимостей: от них нельзя полностью избавиться. В той же защите от RowHammer, например, в 2020 году была обнаружена лазейка. Авторы работы RowPress обсуждают потенциальные методы противодействия новому методу атаки, включая адаптацию существующей защиты от RowHammer. Примечательно, что память с коррекцией ошибок ECC затрудняет атаку, но не исключает ее полностью. К счастью, предложенные методы защиты от RowPress лишь незначительно сказываются на производительности.

Что еще произошло​


Эксперты «Лаборатории Касперского» исследуют вредоносные технологии, используемые в атаках на организации группировкой LockBit. В статье анализируются фишинговые киты, используемые для создания страниц, напоминающих таковые в реальных сетевых сервисах. Также был обнаружен тестовый (в смысле, пока не работающий) вредоносный код для разных аппаратных архитектур, включая Apple M1.

Закрыта критическая уязвимость в аппаратных брандмауэрах компании Fortinet.

Компания Trend Micro приводит еще один пример распространения вредоносного кода (в данном случае — шифровальщика-вымогателя) через рекламные объявления. Целью этой атаки были пользователи, загружающие утилиту WinSCP.

Серьезная, активно эксплуатируемая дыра обнаружена в плагине Ultimate Member для Wordpress, установленном на более чем 200 тысячах веб-сайтов.

habr.com
 
Назад
Сверху Снизу