Разработана атака на уязвимость в 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), которая управляет транзисторами доступа, возникают флуктуации напряжения, которые могут привести к аномалии, вызывающей небольшую потерю заряда соседних ячеек. Если интенсивность чтения достаточно большая, то ячейка может потерять достаточно большой объём заряда и очередной цикл регенерации не успеет восстановить его первоначальное состояние, что приведёт к изменению значения сохранённых в ячейке данных. 

WhatsApp для Windows ест до 1,2 ГБ RAM и тормозит даже на мощных ПК

WhatsApp (принадлежит корпорации Meta, признанной экстремисткой и запрещённой в России) для Windows превратился в прожорливый тормоз, пользователи жалуются на гигабайты памяти и лаги. Пока Meta рассказывает об успехах WhatsApp с его 3 миллиардами пользователей, владельцы Windows-компьютеров всё чаще задаются другим вопросом: как мессенджер умудрился стать настолько медленным?

Журналист Windows Latest опубликовал разгромный материал о текущей версии WhatsApp для Windows, которую Meta перевела на WebView2 — фактически браузерную оболочку на базе Chromium.

По его словам, приложение способно потреблять сотни мегабайт оперативной памяти ещё до аутентификации пользователя. А после входа в аккаунт и активной работы объём занятой памяти легко переваливает за 1 ГБ.

 

При этом проблема не только в аппетитах. Пользователи жалуются на задержки при отправке сообщений, медленное переключение между чатами, подтормаживания интерфейса и нестабильную работу после выхода компьютера из режима сна. Автор утверждает, что браузерная версия WhatsApp в обычной вкладке зачастую работает быстрее, чем официальное настольное приложение.

Особенно тяжело приходится владельцам старых ПК. В качестве примера приводится компьютер с процессором Intel Core i3 шестого поколения и 8 ГБ оперативной памяти. По наблюдениям автора, Windows 11 на такой машине работает вполне бодро, а вот WhatsApp способен загружать процессор более чем на 20 % даже в состоянии простоя.

 

Главным виновником называется переход с нативного UWP-приложения на WebView2. Старая версия WhatsApp для Windows занимала менее 100 МБ памяти и использовала системные механизмы уведомлений. Новая же фактически запускает внутри себя мини-браузер с набором отдельных процессов для рендеринга, сети, хранения данных и других задач.

Досталось и Microsoft. Автор напоминает, что даже корпоративный Teams до сих пор построен на WebView2 и также известен высоким потреблением ресурсов. По его мнению, именно многолетняя непоследовательность Microsoft в развитии собственных платформ заставила разработчиков всё чаще выбирать веб-оболочки вместо нативных приложений.

Самое ироничное в этой истории — у Meta есть полноценный и хорошо оптимизированный WhatsApp для macOS и даже для Apple Watch. А вот для полутора миллиардов пользователей Windows компания предлагает по сути браузерную вкладку, упакованную в отдельное окно и выдаваемую за полноценное приложение.

Напомним, ранее мы рассказывали о способе вернуть быстрый нативный WhatsApp в Windows 11. Речь идёт о версии 2.2546.3.0 от ноября 2025 года — это ещё тот самый UWP-клиент. Если установить её вручную и немного подправить, Windows 11 позволит продолжить пользоваться нативным приложением.

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