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

Исследователи обнаружили эту уязвимость во время криптографических операций на чипах Apple, особенно в процессе шифрования файлов. Проблема связана с особенностями архитектуры чипа, что затрудняет ее исправление.

По словам группы исследователей, упомянутых в ArsTechnica, уязвимость связана с работой префетчера данных, зависящего от памяти (DMP). Этот механизм предполагает, к каким данным в памяти может обратиться код в ближайшем будущем. В результате такой работы префетчера некоторые данные могут стать уязвимыми для атак.

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

Угрозы от атаки GoFetch

Атака GoFetch представляет серьезную угрозу для безопасности криптографических ключей в микросхемах Apple, используя уязвимость механизма DMP. Этот метод позволяет злоумышленникам манипулировать данными таким образом, чтобы они были восприняты как адреса памяти. В ходе атаки исследователи обнаружили, что данные могут быть "замаскированы" под указатели, заставляя DMP загружать эти данные в кэш, где злоумышленный код может их прочитать.

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

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

Исследователи создали тестовое приложение, которое смогло извлечь 2048-битный ключ RSA менее чем за час и 2048-битный ключ Диффи-Хеллмана за два часа. Для получения ключа Dilithium-2 потребовалось десять часов извлечения данных, не включая время на дополнительную обработку.

Вызовы для разработчиков

Устранение атаки GoFetch представляет значительные трудности из-за того, что уязвимость является встроенной частью архитектуры чипов Apple. Это означает, что разработчикам криптографического программного обеспечения придется вносить изменения в свои продукты для обхода этой проблемы. Однако любые попытки устранения уязвимости могут привести к увеличению вычислительной нагрузки, что отрицательно скажется на общей производительности. Компания Apple отказалась от комментариев по этому вопросу, хотя исследователи утверждают, что уведомили компанию об уязвимости еще в декабре 2023 года.

Подобные уязвимости в чипах уже вызывали серьезные опасения в прошлом, как, например, с уязвимостями Meltdown и Spectre в 2018 году. Они затронули широкий спектр устройств, включая практически все устройства на базе архитектуры X86, выпущенные с 1997 года, а также устройства Mac и iOS. Эти уязвимости заставили производителей вносить изменения в операционные системы и программное обеспечение для обеспечения безопасности пользователей.