Уязвимость GoFetch затрагивает процессоры Apple M1, M2 и M3

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

Исследователи обнаружили во всех яблочных процессорах серии M уязвимость GoFetch, связанную с устройством предварительной выборки данных, зависящим от памяти (DMP). Если коротко, то механизм загружает содержимое памяти в кэш до того, как оно понадобится для работы и позволяет улучшить производительность, вот только этим может воспользоваться злоумышленник, так как проблема заключается в том, что DMP иногда путает содержимое и загружает в память процессора неправильные данные, которые могут быть необходимыми для шифрования и создания криптографических ключей.

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