Обнаруженная в 2018 году уязвимость Spectre заставила по-новому взглянуть на безопасность спекулятивных механизмов в архитектуре процессоров. Новый вид атак позволял извлекать из кеш-памяти пароли и другие конфиденциальные данные, которые без особой защиты хранились там как промежуточная информация. Сегодня процессоры в основном защищены от атак типа Spectre, но новая уязвимость вскрывает и эти защиты.
Специалисты по безопасности из Школы инженерии и прикладных наук Университета Вирджинии сообщили, что существует возможность извлекать инструкции из так называемого кеша микроопераций (micro-op cache). В таком кеше, который есть как в процессорах Intel, так и в процессорах AMD (в процессорах Intel этот кеш есть с 2011 года) сохраняются простейшие инструкции по ветке предсказания ветвлений. Исследователи выявили механизмы, которые позволяют извлечь эти данные и с их помощью получить конфиденциальную информацию.
Проблема в том, что уровень кеша микроинструкций намного ниже уровня, на котором работают уязвимости типа Spectre. Поэтому защита от уязвимостей Spectre не работает против новой уязвимости. Более того, поскольку новая уязвимость атакует более примитивный уровень в архитектурах процессоров, попытка её ослабить или закрыть самым серьёзным образом скажется на производительности процессоров как Intel, так и AMD.
Исследователи сообщили о своём открытии всем заинтересованным разработчикам процессорных архитектур. Но сами они сомневаются, что подобную уязвимость можно будет закрыть патчами без серьёзного ухудшения производительности вычислительных систем.