Атака MIT обходит защиту процессоров и читает закрытые данные Linux / Все новости / Главная

Исследователи Массачусетского технологического института нашли новый способ обойти защиту современных чипов Intel и AMD. Атака, названная TONTOU, использует крошечное окно — буквально несколько машинных инструкций — и в лабораторных условиях позволила прочитать защищённую память Linux, включая файл с хэшами паролей суперпользователя.

Работу представили лаборатория CSAIL на конференциях Black Hat USA и USENIX Security. Авторы — аспирант Даниэль Трухильо (Daniël Trujillo) и доцент Мэнцзя Янь (Mengjia Yan).

Откуда вообще берётся щель

Современный процессор ради скорости заранее угадывает, по какой ветке пойдёт программа, и начинает работу до подтверждения. Если угадал неверно, результат отбрасывают. Но следы в микроархитектуре иногда остаются. По ним злоумышленник может вытянуть данные из областей памяти, к которым у него не должно быть доступа. Этот класс атак известен с 2018 года после Spectre.

Защиты стараются перед использованием прогноза очистить или изолировать «машинное предсказание». Трухильо и Янь показали: очистка и использование не происходят в один и тот же миг. Между ними остаётся короткая пауза, в которую прогноз снова можно «загрязнить».

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

Что получилось на Intel и AMD

TONTOU проверили на четырёх поколениях чипов обеих компаний и смогли вызвать ложные прогнозы и там, и там. На Intel обошли и программную защиту старых камней, и аппаратную — у более новых. На одном поколении железная защита сработала, на другом нет: реализации различаются.

У AMD механизм saferet чистит прогноз непосредственно перед использованием. Окно сужается примерно до двух инструкций — десятки наносекунд. Исследователи всё равно попали в него, замедлив процессор в нужной точке.

На компьютере AMD с актуальным ядром Linux они сначала сняли рандомизацию расположения системы в памяти: десять попыток из десяти, каждая около девяти минут. Затем продемонстрировали чтение защищённых данных. Производителей уведомили в феврале, сопровождающих ядро Linux — в марте. AMD уже выпустила смягчение через обновления системы.

Предложение MIT — повторно чистить прогноз после прерывания. Для AMD это выглядит рабочим. На части Intel, наоборот, может сделать атаку стабильнее. Иными словами, универсальной заплатки пока нет: гонка между догадками процессора и теми, кто эти догадки подслушивает, продолжается.

 

Похожие новости
Комментарии

comments powered by Disqus
Мы в социальных сетях: