Разработана атака на уязвимость в DRAM-памяти с использованием JavaScript

Разработана атака на уязвимость в DRAM-памяти с использованием JavaScript

Группа исследователей из Корнелльского университета (США) разработала технику проведения атаки с использованием уязвимости RowHammer в современных чипах памяти DRAM, примечательную необходимостью запуска только высокоуровневого кода на языке JavaScript.

При помощи нового метода атака может быть проведена через размещение JavaScript-кода на любом сайте, без необходимости выполнения на стороне жертвы заданных машинных инструкций.

Так как из JavaScript-кода невозможно явно выполнить машинные инструкции CLFLUSH, для очистки процессорного кэша в представленной реализации используются косвенные методы вытеснения данных из кэша. По сравнению с предложенными ранее типовыми алгоритмами вытеснения из кэша эффективность нового метода значительно выше и может достигать 99.99%. Для обращения к фиксированным ячейкам памяти используется особенность браузеров выделять страницы памяти для больших типизированных массивов JavaScript, пишет opennet.ru.

В текущем прототипе эксплоита пока удалось добиться только повреждения памяти как таковой, без доведения атаки до получения прав root. Эксплоит был продемонстрирован на ноутбуке Lenovo x230 (Ivy Bridge) и был работоспособен только при увеличении в настройках интервала регенерации памяти, что иногда делается любителями компьютерных игр для увеличения производительности. С одной стороны для атаки требуются специфичные условия, но с другой стороны заставляет задуматься сам факт совершения атаки подобного уровня на JavaScript. Кроме того, опасность атаки усиливается возможностью её проведения извне, без получения прямого доступа к системе - размещение вредоносного JavaScript-кода на популярных ресурсах может привести к единовременному охвату очень большого числа пользователей.

Напомним, что атака RowHammer вызвана эффектом искажения содержимого отдельных битов памяти DRAM, повреждение которых может быть инициировано через цикличное чтение данных из соседних ячеек памяти (простой цикл с чтением содержимого памяти и очисткой кэша). Проблема обусловлена особенностью работы памяти DRAM, которая формируется как двухмерный массив ячеек, каждая из которых состоит из конденсатора и транзистора. Состояние сохранённого в ячейке значения определяется тем, заряжен или нет конденсатор. Для поддержания заряда применяется цикл регенерации. При выполнении непрерывного чтения одной и той же области памяти из-за постоянного открытия и закрытия линии WL (Word Line), которая управляет транзисторами доступа, возникают флуктуации напряжения, которые могут привести к аномалии, вызывающей небольшую потерю заряда соседних ячеек. Если интенсивность чтения достаточно большая, то ячейка может потерять достаточно большой объём заряда и очередной цикл регенерации не успеет восстановить его первоначальное состояние, что приведёт к изменению значения сохранённых в ячейке данных. 

Подпишитесь на новости

Windows 11 научилась стирать данные перед переустановкой

Microsoft прокачала облачное восстановление Windows 11: теперь Cloud rebuild умеет не только переустанавливать систему, но и предварительно зачищать накопители. Опция пригодится тем, кто собирается продать, вернуть работодателю или отправить компьютер на переработку и не хочет дарить новому владельцу бонус в виде старых документов и фотографий.

Cloud rebuild загружает из Windows Update чистый образ операционной системы и необходимые драйверы.

В отличие от функции «Сбросить этот компьютер», инструмент не зависит от состояния установленной Windows и может восстановить компьютер даже при серьёзных проблемах с системой.

В экспериментальной сборке Windows 11 Insider Preview 26340.9502 появились два режима: «Удалить файлы» (Remove files) и Удалить и зачистить (Remove & sanitize files). Первый удаляет файлы и переустанавливает ОС, но теоретически оставляет шанс восстановить часть данных, пока они не перезаписаны.

 

Второй вариант действует жёстче: Windows обращается к накопителю и запускает поддерживаемую им процедуру безопасного удаления. После этого восстановить информацию должно стать значительно сложнее.

Правда, Microsoft предусмотрительно не обещает магии и формулирует результат именно как гораздо более трудное восстановлени», а не полную невозможность.

Есть и подвох. Эффективность очистки зависит от конкретного SSD или другого накопителя: он должен поддерживать нужную команду и правильно её выполнять. Windows может запросить удаление и получить отчёт об успехе, но лично проверить каждый стёртый бит система не способна.

Microsoft представила обновлённый Cloud rebuild в экспериментальном канале Windows Insider. Там же появилась возможность удалённо запускать восстановление через Recovery CSP — полезная штука для корпоративных администраторов.

Пока обычным пользователям новая зачистка недоступна. Если тестирование пройдёт без сюрпризов, функция позднее может добраться до стабильных версий Windows 11.

RSS: Новости на портале Anti-Malware.ru