Атака через JavaScript по определению содержимого L3-кэша CPU

Атака через JavaScript по определению содержимого L3-кэша CPU

Группа исследователей из Колумбийского университета сообщила о выявлении нового вида атак (отчёт в PDF), позволяющих восстановить часть содержимого общего для всей системы L3-кэша CPU, запустив в браузере JavaScript-код.

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

Потенциально атаке подвержены все системы на базе относительно новых моделей процессоров Intel (Ivy Bridge, Sandy Bridge и Haswell), на которых используются актуальные выпуски браузеров c поддержкой HTML5. Так как L3-кэш общий для всех ядер CPU и совместно используется всеми процессами в системе, включая ядро, через периодический мониторинг содержимого кэша атакующий может получить детальные сведения о пользователях и системе, сообщает opennet.ru.

Предложенный метод является разновидностью атак по сторонним каналам (side-channel attacks), использующим косвенные методы, такие как анализ перепадов напряжения, температуры и времени выполнения операции, для восстановления данных из изолированного окружения. В частности, в результате атаки пошагово моделируется содержимое кэша на основе измерения отклонения времени доступа к данным до и после сброса кэша. В атаке используется особенность работы JavaScript-движков с типизированными массивами, а именно применяемые методы маппинга адресов физической памяти в кэш. Для измерения времени используются средства JavaScript для доступа к системному таймеру с высоким разрешением с оглядкой на фиксированные задержки в JavaScript runtime. 

В ядре Linux нашли первую уязвимость в коде на Rust

В ядре Linux зафиксировали первую уязвимость (CVE), связанную с кодом на Rust. Об этом сообщил один из ключевых разработчиков ядра Грег Кроа-Хартман, а подробности появились в рассылке Linux. Речь идёт о проблеме под идентификатором CVE-2025-68260, которая затрагивает переписанный на Rust драйвер Android Binder.

Проблема, согласно публикации Phoronix, связана с состоянием гонки (race condition), возникающим из-за использования небезопасного Rust-кода. В определённых условиях это может привести к повреждению указателей в памяти и, как следствие, к сбою системы.

Уязвимость затрагивает версии ядра Linux 6.18 и новее, то есть те сборки, где появился Rust-драйвер Binder. Важно отметить, что речь идёт именно о потенциальном сбое в работе системы — удалённого выполнения кода или компрометации здесь нет.

Сам Грег Кроа-Хартман подчёркивает, что это первый подобный случай с момента появления Rust-кода в основном дереве ядра Linux. И хотя для кого-то новость может прозвучать тревожно, разработчики призывают не делать поспешных выводов: уязвимость не критическая, а сам факт её обнаружения — скорее показатель того, что Rust-код в ядре теперь проходит тот же путь зрелости, что и C-код десятилетиями ранее.

В сообществе также отмечают, что проблема возникла не «вопреки» Rust, а как раз из-за использования небезопасных участков, без которых в ядре пока не обойтись. Это лишний раз показывает, что Rust снижает класс рисков, но не отменяет необходимости аккуратного проектирования и ревью.

Подробности по CVE-2025-68260 уже опубликованы в официальной рассылке Linux CVE, а исправления, как ожидается, появятся в ближайших обновлениях ядра.

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