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

Teacher

Professional
Messages
2,674
Reputation
9
Reaction score
659
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