КИБЕРБЕЗОПАСНОСТЬ

MIT показал обход защит Spectre на Intel и AMD

За 18 минут исследователи MIT показали атаку TONTOU: на Linux с защитами по умолчанию она обходит Spectre v2 на Intel и AMD и ломает KASLR.

✍️ Редакция iTech News | 08.08.2026 | ⏱ 4 мин | Источник: The Register
🚨

Полный цикл демонстрации занял около 18 минут, но этого хватило, чтобы обойти защиты Spectre v2 на Linux-системе с настройками по умолчанию. Исследователи MIT показали, что атака TONTOU снова открывает окно для отравления предсказателя ветвлений на процессорах Intel и AMD. Для команд, которые держат на одном ядре чужой код и собственные секреты, новость неприятная: старые микропроцессорные сюрпризы по-прежнему умеют пролезать там, где защиту уже считали закрытым вопросом.

О находке сообщает The Register. Работу подготовили Daniël Trujillo и Mengjia Yan из лаборатории CSAIL при MIT, а сам доклад они собираются представить на DEF CON 34. Авторы назвали новый класс атак TONTOU, от Time-of-Neutralization to Time-of-Use. По сути речь идет о способе переотравить branch predictor уже после того, как процессор или операционная система попытались привести его в безопасное состояние перед исполнением чувствительного кода. Для этого исследователи используют технику interrupt injection: непривилегированная программа запускает частые таймерные прерывания в надежде попасть в очень короткий промежуток между нейтрализацией состояния predictor и моментом, когда им воспользуется защищенная ветка ядра.

Важная деталь в том, что нынешние защиты Spectre v2 держатся на одном и том же базовом допущении. Неважно, очищает ли система predictor при переключении контекста, как это делает Intel через eIBRS, или перестраховывается прямо перед критической веткой, как AMD с механизмом Safe RET после Inception 2023 года, логика одна: после нейтрализации атакующий уже не успеет ничего испортить. Исследователи делят эти подходы на entry neutralization и in-place neutralization. Новая атака TONTOU бьет именно по промежутку после этой нейтрализации. Если таймерное прерывание попадает в нужную точку, его обработчик успевает заново отравить структуры вроде return stack buffer или branch history buffer и направить спекулятивное выполнение в гаджет утечки.

На бумаге такие сюжеты всегда выглядят чуть слишком красивыми, поэтому авторы пошли дальше и собрали практическую цепочку атаки. Тесты проводились на Intel Cascade Lake Refresh и Arrow Lake, а также на AMD Zen 2 и Zen 4 под Linux. Полноценный end-to-end exploit они довели только для Zen 2, главным образом потому, что на Intel для практической эксплуатации нужны более специфические программные условия. Но и этого достаточно, чтобы разговор не сводился к академической экзотике. В десяти запусках исследователи каждый раз обходили KASLR, а в пяти из десяти успешно находили и утекали содержимое /etc/shadow, включая хеш пароля root. Для атаки, которая опирается на тайминг и спекулятивное исполнение, это уже не просто красивая диаграмма на слайде.

Еще один неприятный момент в том, что стенд для демонстрации не был собран из редких деталей. По описанию авторов, использовалась стандартная версия Linux kernel, без дополнительных модулей и с включенными защитами по умолчанию. То есть сценарий не требует специальной лабораторной погоды, а использует обычные свойства системы: непривилегированный код, доступность таймеров и совместное использование ядра с жертвой. Сами исследователи отдельно подчеркивают, что в первую очередь это проблема для многоарендных контейнерных платформ и любых сред, где чужой user space код живет рядом с чужими секретами. Иными словами, домашнему ноутбуку здесь, скорее всего, страшно меньше, чем shared-инфраструктуре, где изоляция традиционно строится на более оптимистичных предположениях.

При этом авторы не продают сенсацию как готовое массовое оружие. Спекулятивные side-channel атаки по-прежнему сложны, капризны и дороги по времени. Даже в удачной демонстрации один полный цикл занимал десятки минут, а вероятность успеха для утечки конкретного секрета составила 5 из 10. В реальной жизни типичная компания действительно скорее получит ransomware, чем настолько ювелирную атаку на branch predictor. Но проблема Spectre давно живет не как одна уязвимость, а как длинный сериал из новых способов обойти старые заплатки. И TONTOU здесь интересна не только результатом, но и идеей: защищенная зона ломается не в точке исполнения, а в промежутке между защитой и использованием.

Реакция вендоров хорошо показывает, как индустрия оценивает такие риски. После того как исследователи собрали результаты, они уведомили Intel, Arm и AMD. Из этой тройки только AMD пообещала решать вопрос через патчи ядра. Intel, по словам авторов, не планирует дополнительных мер, ссылаясь на то, что реальная эксплуатация зависит от слишком большого числа факторов, включая наличие подходящих гаджетов утечки. При этом компания все же выплатила вознаграждение по bug bounty, но речь идет лишь о нескольких сотнях долларов. Arm заняла еще более сухую позицию и отнесла interrupt injection к passive leakage, от которой она активно не защищается. Для разработчиков и платформенных команд вывод отсюда простой: дефолтные mitigations остаются базовым минимумом, а не гарантией того, что тема Spectre закрыта.

Главный вопрос теперь не в том, появится ли еще один акроним для старой болезни speculative execution, а в том, сколько защит в CPU и ОС все еще опираются на хрупкое допущение «после очистки уже безопасно». Если атака TONTOU закрепится как рабочая техника, следующая волна hardening, похоже, затронет не только микрокод, но и обработку прерываний, планировщик и правила совместного размещения нагрузок в shared-средах. Детали доклада, описание демо и ссылку на исследование собрал The Register.

Поделиться: Telegram X LinkedIn