На этой неделе компания AMD опубликовала документ с подробным описанием уязвимости процессоров поколения Zen 3. Выяснилось, что один из элементов архитектуры оказался подвержен так называемым атакам по боковым каналам, яркими представителями которых стали уязвимости Spectre и Meltdown процессоров Intel. С процессорами AMD таких проблем не было, но теперь они появились и поразили новейшие CPU на архитектуре Zen 3. Что же произошло?
Как сообщили в AMD, один из важных элементов по ускорению работы процессоров на архитектуре Zen 3 является механизм предсказания Predictive Store Forwarding (PSF). Как нетрудно догадаться, это процесс спекулятивного исполнения инструкций, когда логика процессора пытается предугадать результат загрузки и заранее начинает исполнять инструкции, стоящие далеко в очереди. Обычно точность предсказания очень высока, поясняют в AMD, что даёт возможность существенно повысить производительность вычислений.
Тем не менее, поскольку данные обрабатываются с учётом предсказаний, остаётся вероятность ошибок. В таких случаях данные должны быть сброшены, но, как и в случае с атаками Spectre, вредоносный код открывает возможность получить несанкционированный доступ к промежуточным результатам расчётов даже в защищённой области памяти. В частности, как считают в AMD, атака на PSF во многом похожа на атаку Spectre V4 (Speculative Store Bypass).
Следует сказать, что специалистам компании неизвестны случаи атаки на процессоры Zen 3 с помощью уязвимости в PSF. Поэтому в AMD считают риск этой уязвимости низким. Большинству пользователей компания не рекомендует отключать функцию PSF, потому что это снизит производительность системы (не уточняется насколько), но в то же время компания работает над патчами, для удобного отключения Predictive Store Forwarding. Утверждается, что патч для Linux уже создан. Вероятно, готовятся патчи для Windows. Документ в формате PDF с подробным объяснением уязвимости и вариантов смягчения её опасности можно загрузить с сайта компании.