GhostRace – новая уязвимость при утечке данных затрагивает современные процессоры

Teacher

Professional
Messages
2,670
Reaction score
775
Points
113
core.jpg


Группа исследователей обнаружила новую атаку при утечке данных, влияющую на современные архитектуры процессоров, поддерживающие спекулятивное выполнение.

Получившая название GhostRace (CVE-2024-2193), она является разновидностью уязвимости процессора при временном выполнении, известной как Spectre v1 (CVE-2017-5753). Этот подход сочетает в себе спекулятивное выполнение и условия гонки.

"Все распространенные примитивы синхронизации, реализованные с использованием условных ветвей, могут быть микроархитектурно обойдены по спекулятивным путям с помощью атаки с неверным предсказанием ветвей, превращая все критические области, свободные от архитектурной гонки, в условия спекулятивной гонки (SRC), позволяя злоумышленникам сливать информацию от цели", - сказали исследователи.

Выводы исследовательской группы по системной безопасности IBM Research Europe и VUSec, последняя из которых раскрыла еще одну атаку по побочному каналу под названием SLAM, нацеленную на современные процессоры в декабре 2023 года.

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

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

"Атаки Spectre побуждают жертву к спекулятивному выполнению операций, которые не могли бы выполняться при строго последовательной обработке инструкций программы в определенном порядке, и которые передают конфиденциальную информацию жертвы по скрытому каналу злоумышленнику", - отметили исследователи, стоящие за атакой Spectre в январе 2018 года.

Что делает GhostRace примечательным, так это то, что он позволяет злоумышленнику, не прошедшему проверку подлинности, извлекать произвольные данные из процессора, используя условия гонки для доступа к предполагаемым путям исполняемого кода, используя так называемую спекулятивную атаку с одновременным последующим использованием (SCUAF).

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

"По характеристикам и стратегии использования уязвимость SRC похожа на классическое состояние гонки", - объяснил Координационный центр CERT (CERT / CC) в рекомендательном письме.

"Однако она отличается тем, что злоумышленник использует указанное состояние гонки на временно выполняемом пути, исходящем из ветви с ошибочными предположениями (аналогично Spectre v1), нацеливаясь на пикантный фрагмент кода или гаджет, который в конечном итоге раскрывает информацию злоумышленнику ".

Конечным результатом является то, что она позволяет злоумышленнику, имеющему доступ к ресурсам процессора, получить доступ к произвольным конфиденциальным данным из памяти хоста.

"Любое программное обеспечение, например, операционная система, гипервизор и т.д., реализующее примитивы синхронизации через условные ветви без какой-либо инструкции сериализации на этом пути и работающее на любой микроархитектуре (например, x86, ARM, RISC-V и т.д.), которое позволяет выполнять условные ветви умозрительно, уязвимо для SRC", - сказал VUSec.

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

"Из предосторожности команда безопасности Xen представила исправления для повышения надежности, включая добавление нового механизма LOCK_HARDEN на x86, аналогичного существующему BRANCH_HARDEN", - сказал Xen.

"LOCK_HARDEN отключен по умолчанию из-за неопределенности наличия уязвимости в Xen и неопределенности влияния на производительность. Тем не менее, мы ожидаем проведения дополнительных исследований в этой области и считаем разумным принять меры по смягчению последствий".
 
Top