До недавнего времени воспользоваться уязвимостями семейства Spectre, связанными с механизмом спекулятивного исполнения в современных процессорах, можно было, только запуская вредоносное ПО на локальной машине. Другими словами, системы, на которых злоумышленник не может запустить какой-либо код, считались защищенными.
Исследователи безопасности из Технологического университета Граца, среди которых — один из первооткрывателей уязвимости Meltdown Даниэль Грюс (Daniel Gruss), обнаружили новый метод, позволяющий читать память удаленного компьютера без выполнения вредоносной программы на нем.
Метод атаки, получивший название NetSpectre, построен на первом варианте Spectre, но не требует запуска каких-либо программ, а работает за счет сетевой активности. На первый взгляд, это делает его очень опасным, но на практике угроза ограничена чрезвычайно медленной скоростью извлечения данных. Так, продемонстрированная исследователями атака по стороннему каналу на кеш-память (Evict+Reload) позволяет получить за час всего 15 бит. Использование нового стороннего канала, связанного c инструкциями AVX, обеспечивает скорость 60 бит в час. Исследователи успешно проверили работоспособность атаки в локальной сети и в Google Cloud — правда, в последнем случае скорость была еще ниже.
В марте исследователи предоставили результаты своей работы компании Intel, договорившись опубликовать их в конце июля, что и было сделано.
Остается добавить, что защититься от NetSpectre можно двумя способами: применением мер, закрывающих обычные уязвимости Spectre, и средствами против сетевых атак. Благо, трафик NetSpectre легко обнаружить, а при снижении интенсивности запросов атака теряет смысл, поскольку уменьшает и без того низкую скорость утечки.