Инженер Amazon Web Services (AWS) Павел Визоркевич обнаружил уязвимость в процессорах Intel. Описанная исследователем атака, получила название Snoop Assisted L1 Data Sampling (или просто Snoop) и идентификатор CVE-2020-0550. Список уязвимых перед этой проблемой процессоров можно найти здесь.
Новая атака эксплуатирует преимущества таких современных процессорных механизмов, как несколько уровней кэша, когерентность кэша и отслеживание шины (bus snooping, отсюда и происходит название атаки). Так, в настоящее время большинство процессоров используют несколько уровней кэша для хранения данных во время их обработки. Наиболее используемым уровнем является L1, который разделен на две части: одна выделена для обработки пользовательских данных (L1D), а вторая для обработки кода инструкций ЦП (L1I). В силу использования многоядерных архитектур и нескольких уровней кэша, данные зачастую хранятся одновременно в нескольких кэшах ЦП и даже в RAM.
Визоркевич обнаружил, что при определенных условиях вредоносный код может подключиться к операции отслеживания шины и спровоцировать возникновение ошибок, что в итоге приведет к утечке данных через когерентность кэша. При этом исследователь отмечает, что атаку крайне трудно реализовать на практике, и она в любом случае не позволит похитить большие объемы данных (в отличие от оригинальных уязвимостей Meltdown и Spectre).
Изучив проблему, разработчики Intel пришли к выводу, что против нее помогут исправления, выпущенные в еще августе 2018 года для уязвимости Foreshadow (L1TF). Также сообщается, что защититься поможет отключение функции Intel TSX (Transactional Synchronization Extensions), что сделает реализацию Snoop еще сложнее и маловероятнее.