Исследователи из Швейцарской высшей технической школы Цюриха (ETH Zurich) обнаружили новый механизм атаки на процессоры Intel и AMD, включая Kaby Lake, Coffee Lake, Zen 1, Zen 1+, а также Zen 2. Он называется Retbleed и работает с помощью спекулятивного выполнения произвольного кода. Это даёт ему возможность красть пароли и конфиденциальные данные.
Спекулятивное выполнение — это метод оптимизации вычислений, который позволяет процессору выполнять операции до того, как станет известно, потребуются ли они для будущих задач. То есть происходит так называемое ветвление.
Принцип работы уязвимости выглядит так: если процессор определяет, что предсказание ветвления не оправдалось, то он откатывает операцию. Однако данные, обработанные при этом, остаются в кеше и буфере, и их можно прочитать.
То есть, если вирус, использующий уязвимость Retbleed, запускает команду на выполнение, то она завершается неудачей, а в кеш тем временем попадают остаточные файлы. Затем цикл повторяется до отключения системы.
При этом для удаления вируса придётся пожертвовать частью производительности системы, поскольку именно предсказание ветвления позволяет сделать современные CPU настолько быстрыми. Отмечается, что падение может составить порядка 28%.
В обеих компаниях уже заявили, что знают о проблеме, и пообещали скорое решение. При этом пока не сообщается о массовом применении этой уязвимости, однако отдельные случаи фиксировались. Также отметим, что проблема актуальна для Linux, поскольку в Windows уже есть методика борьбы с этим.
А вот в процессоре M1 есть брешь, которую невозможно закрыть программным путём.