Skip to content
Исследователи MIT обнаружили атаку TONTOU, обходящую защиту от Spectre v2 на процессорах Intel и AMD
09 августа 06:13 40 Просмотров Новости

Исследователи MIT обнаружили атаку TONTOU, обходящую защиту от Spectre v2 на процессорах Intel и AMD

Исследователи из Лаборатории компьютерных наук и искусственного интеллекта Массачусетского технологического института (MIT CSAIL) представили новую технику атаки под названием TONTOU (Time-of-Neutralization to Time-of-Use), которая позволяет обходить существующие механизмы защиты от уязвимостей класса Spectre v2 на процессорах Intel и AMD. Код, блокирующий эксплуатацию, был принят в ядро Linux 5 августа и уже включен в ряд актуальных версий. Логотип MIT CSAIL и схема атаки TONTOU

Детали обнаружения и механика атаки

Технику эксплуатации окна «Время нейтрализации — Время использования» нашли аспирант Даниэль Трухильо (Daniël Trujillo) и доцент Мэнцзя Янь. Они представили результаты на конференции Black Hat USA 6 августа, а также планируют выступить на USENIX Security 2026, которая пройдет с 27 по 29 октября. Исследователи сообщили о находке компаниям AMD и Intel 5 февраля.

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

Непривилегированная программа в Linux синхронизирует аппаратное прерывание так, чтобы оно попало в промежуток между очисткой предсказателя переходов процессором и использованием его ядром. На процессоре AMD Zen 2 это окно составляет две инструкции, шесть байт. Попадая внутрь, обработчик становится тренировочным гаджетом, вооруженным атакой Inception (CVE-2023-20569) для заполнения буфера возврата стека выбранной атакующим целью. Поскольку пассивное загрязнение RSB менее надежно, исследователи объединили внедрение прерываний с ранее раскрытой атакой Inception, в разработке которой также участвовал Даниэль Трухильо. Схема внедрения прерываний в процессоре AMD Zen 2

Результаты тестирования на AMD Zen 2

Тестирование проводилось на системе AMD Zen 2 под управлением Linux версии 6.14.0-37-generic с 16 ГБ ОЗУ. Исследователи успешно прошли все этапы атаки TONTOU: нейтрализацию, перенаправление, отравление и использование отравленных предикторов ветвлений.

  • Скорость извлечения произвольной памяти ядра: 5,47 байт/с
  • Точность извлечения: 91,97%
  • Практический результат: удавалось извлекать содержимое файла /etc/shadow, где хранятся хеши паролей системы
  • Из 10 тестовых запусков атака успешно находила и извлекала файл в пяти случаях
  • Каждая попытка занимала в среднем 18 минут

Атака не является самостоятельной удаленной — она требует локального выполнения кода. Риск существует на общих системах, работающих на уязвимом процессоре. Эксплойт не требует сети, однако атакующий может загружать начальные полезные нагрузки или отправлять результаты через прокси/SWG/DNS. Атака не вызывает обычных сбоев аутентификации или событий чтения файлов. График успешности извлечения /etc/shadow при атаке TONTOU

Позиция вендоров и выпускаемые патчи

Хотя атака возможна и на машинах Intel, исследователи отметили, что дополнительные программные требования усложняют задачу. Цепочка для Intel требует дополнительных программных условий и является более сложной, чем демонстрация на AMD. Intel выплатила дискреционную премию за обнаружение ошибки, но заявила: «не считает смягчение обязательным», пояснив, что эксплуатация «зависит от многих факторов» и техника покрывается существующими рекомендациями. The Hacker News проверила рекомендации Intel INTEL-SA-00598 (последнее обновление в мае 2025 года) и не нашла упоминания прерываний.

AMD опубликовала бюллетень AMD-SB-7061 6 августа под названием «Safe RET Interrupt Vulnerability». В уведомлении компания сообщила, что проблема внедрения прерываний «по-видимому, связана» с реализацией в Linux защиты Safe RET от потенциальных атак с раскрытием информации. Уязвимыми указаны процессоры Zen 1–Zen 4 (линейки Ryzen 1000 через Ryzen 7000/8000G). Поведение продемонстрировали на Zen 1 и Zen 2, а Zen 3 и Zen 4 предположительно уязвимы, но не продемонстрированы. Компания оперативно выпустила «заплатку» для уязвимости, которую уже включили в состав актуальных ядер Linux. Всем пользователям затронутых процессоров настоятельно рекомендуют установить последний апдейт Linux. Бюллетень безопасности AMD-SB-7061 и список уязвимых процессоров

Поделиться

Похожие публикации