Подписанная прошивка должна быть последней линией обороны видеокарты, но для Navi31 эту линию удалось временно выключить. Автор проекта Wake and Break опубликовал эксплойт для AMD Radeon RX 7900, который вмешивается в работу Platform Security Processor и заставляет GPU принимать компоненты прошивки без действительной подписи производителя.
Целью стал PSP, защищённый процессор внутри GPU, который участвует в безопасной загрузке и проверяет доверенные компоненты. Wake and Break отключает проверку подписи для нескольких типов IP-прошивки, включая SMU, SDMA, MEC, IMU и RLC. Благодаря этому карта может загрузить изменённый код управления питанием, частотами и другими низкоуровневыми функциями.
Эксплойт не прошивает SPI-память и не оставляет постоянных изменений. Патч помещается в память PSP, после чего видеокарта проходит тёплый перезапуск уже с изменённой логикой проверки. Полное отключение питания стирает патч, и штатная защита снова отклоняет неподписанные образы. Именно временный характер вмешательства дал проекту название Wake and Break.
Автор подтвердил работу на двух Radeon RX 7900 XTX с разными сборками прошивки. В тесте штатная карта отвергала образ с повреждённой подписью, после применения патча принимала его, а после холодного включения снова блокировала. Для ещё двух известных сборок Navi31 подготовлены профили, но на реальном оборудовании их пока не проверяли.
Механизм использует две штатные доверенные программы AMD. Одна запускает цепочку, которая позволяет записать данные в память PSP, после чего небольшой ARM-патч попадает в резидентную копию загрузчика. При следующем тёплом запуске изменённый код отключает проверку подписи. Похожий обход защиты AMD ранее демонстрировал EntrySign, но уже для микрокода центральных процессоров.
Для запуска нужен Linux-хост и доступ к видеокарте через AMD-драйвер проекта tinygrad по PCIe либо через USB-мост. Поэтому опубликованный код не описывает удалённый взлом обычного игрового ПК. Демонстрация показывает обход аппаратной границы доверия при локальном контроле над системой и открывает путь для собственных низкоуровневых прошивок.
Практический эффект пока ограничен лабораторными тестами. Возможность менять прошивку потенциально позволяет экспериментировать с ограничениями мощности, частотами и поведением отдельных блоков GPU, но автор не заявляет о гарантированном росте производительности. Неудачный тёплый запуск карты, подключённой напрямую по PCIe, способен полностью зависнуть хост до принудительного отключения питания.
