Уязвимость в микрокоде AMD позволяет загружать произвольные инструкции.
Команда безопасности Google обнаружила уязвимость в микрокоде процессоров AMD, получившую название EntrySign (ID: AMD-SB-7033). Проблема затрагивает весь спектр процессоров на архитектуре Zen — от Zen 1 до новейшего Zen 5, включая как потребительские, так и серверные решения. Уязвимость позволяет пользователям с правами уровня ядра (ring 0) загружать неподписанные обновления микрокода, что может привести к исполнению произвольных команд внутри процессора.
Уязвимость кроется в некорректной реализации проверки цифровой подписи при загрузке микрокода. Современные процессоры поставляются с микрокодом, записанным в ПЗУ, который не может быть изменён. Однако производители могут загружать обновления микрокода на этапе загрузки операционной системы или BIOS/UEFI, чтобы исправить найденные уязвимости. Эти обновления действуют только в течение текущей сессии и исчезают после перезагрузки.
EntrySign использует слабость в хешировании, применяемом AMD для подписи микрокода, что позволяет обойти верификацию и загружать вредоносный микрокод. Особенно опасно это на серверных системах, где уязвимость может быть использована для обхода механизмов защищённого шифрования памяти SEV и SEV-SNP (ID: AMD-SB-3019), что потенциально открывает доступ к данным виртуальных машин.
В список затронутых процессоров теперь входят чипы Zen 5: Ryzen 9000 (Granite Ridge), EPYC 9005 (Turin), Ryzen AI 300 (Strix Halo, Strix Point, Krackan Point) и Ryzen 9000HX (Fire Range). Для материнских плат уже доступен микрокод AGESA ComboAM5PI 1.2.0.3c с исправлением — пользователям рекомендуется следить за выходом обновлений BIOS на сайте своего производителя. Однако патч, устраняющий связанную уязвимость SEV на серверных EPYC Turin, пока не выпущен и ожидается позднее в этом месяце.
Несмотря на то, что уязвимость требует привилегированного доступа и не сохраняется после перезагрузки, она может быть использована в научных или исследовательских целях. Например, на чемпионате RVSPOC 2025 участникам предстоит с помощью EntrySign запускать бинарные файлы для архитектуры RISC-V на железе AMD Zen, подменяя микрокод во время загрузки.