Retbleed вернулся. И стал опаснее, чем в 2022-м

Хакеры нашли новые лазейки в глубинах архитектуры и теперь могут извлекать данные с пугающей скоростью.


63t21vzwj773pet798jxqwrnblovzipz.jpg


Исследователи из Google представили усовершенствованный способ эксплуатации уязвимости Retbleed, позволяющей считывать произвольные данные из памяти любого процесса на затронутых системах. Этот дефект затрагивает процессоры AMD архитектур Zen и Zen 2 и использует механизмы спекулятивного исполнения — технологию, применяемую в современных ЦПУ для повышения скорости работы.

Изначально проблема была подробно описана командой ETH Zürich в 2022 году, однако новая реализация демонстрирует куда более опасные возможности. Эксплуатация строится на манипуляциях предсказателем переходов и применении скрытых каналов передачи данных через кеш процессора по методу Flush+Reload. В отличие от многих аппаратных уязвимостей, Retbleed невозможно устранить обновлениями микрокода — требуются ресурсоёмкие программные обходные решения.

В ходе демонстрации авторы добились скорости утечки данных порядка 13 КБ/с при высокой точности, чего достаточно для практических атак: от получения списка всех работающих процессов и виртуальных машин на сервере до извлечения критически важных данных, включая криптографические ключи. При этом атака способна выполняться из изолированных и лишённых привилегий сред, например, песочницы браузера Chrome, что подчёркивает её серьёзность.

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

Разработчики эксплойта преодолели ключевые ограничения прежнего подхода, внедрив спекулятивное Return Oriented Programming (ROP) для создания оптимальных «гаджетов раскрытия», которых нет в стандартном коде ядра. Также были усовершенствованы приёмы обучения предсказателя переходов и обхода технологии KASLR (Kernel Address Space Layout Randomization).

Из существующих мер защиты jmp2ret снижает производительность на 5–6 %, а более жёсткий вариант IBPB (Indirect Branch Prediction Barrier) способен замедлить выполнение некоторых задач на 55–60 %, что делает его трудноприменимым в высоконагруженных системах.

Работа показывает, что даже давно известные уязвимости могут быть переосмыслены и использованы в более разрушительных сценариях. Владельцам систем на базе затронутых процессоров AMD, особенно в сфере облачных вычислений, придётся искать баланс между безопасностью и производительностью, а также учитывать, что атаки на архитектурном уровне требуют постоянного контроля и разработки более эффективных мер защиты.