Процессор безопасности платформы AMD ( PSP ), официально известный как AMD Secure Technology , представляет собой доверенную подсистему среды выполнения, которая примерно с 2013 года включена в микропроцессоры AMD . [1] Согласно руководству разработчика AMD, подсистема «отвечает за создание, мониторинг и поддержание среды безопасности», а «ее функции включают управление процессом загрузки, инициализацию различных механизмов, связанных с безопасностью, а также мониторинг системы на предмет любой подозрительной активности или событий и реализацию соответствующего ответа». [2] Критики опасаются, что ее можно использовать в качестве бэкдора , и она представляет собой проблему безопасности. [3] [4] [5] AMD отклонила запросы на открытие исходного кода, работающего на PSP. [1]
Сам PSP представляет собой ядро ARM ( ARM Cortex-A5 ) с расширением TrustZone , которое вставляется в кристалл основного ЦП в качестве сопроцессора . PSP содержит встроенную прошивку, которая отвечает за проверку ПЗУ SPI и загрузку из него внешней прошивки. В 2019 году группа безопасности из Берлина обнаружила внешнюю прошивку в обычных файлах образа UEFI (код, который загружает операционную систему), что означало, что ее можно было легко проанализировать. Используя несколько написанных вручную инструментов на основе Python , они обнаружили, что внешняя прошивка из ПЗУ SPI содержала приложение, напоминающее целую микрооперационную систему. [6] [7] [8] Исследование флэш-микросхемы материнской платы ноутбука Lenovo ThinkPad A285 (хранит прошивку UEFI) показало, что само ядро PSP (как устройство) запускается до основного ЦП и что процесс загрузки его прошивки начинается непосредственно перед загрузкой базового UEFI. Они обнаружили, что прошивка запускается внутри того же пространства памяти системы, что и пользовательские приложения с неограниченным доступом к нему (включая MMIO ), что вызывает опасения по поводу безопасности данных. [6] [7] [8] Поскольку PSP — это чип, который решает, будут ли работать ядра x86 или нет [ необходима ссылка ] , он используется для реализации аппаратного понижения производительности, определенные ядра в системе могут быть сделаны постоянно недоступными во время производства. PSP также предоставляет генератор случайных чисел для инструкции RDRAND [9] и предоставляет службы TPM.
PSP является неотъемлемой частью процесса загрузки, без которого ядра x86 никогда не будут активированы.
В сентябре 2017 года исследователь безопасности Google Кфир Коэн сообщил об уязвимости подсистемы PSP AMD, которая могла позволить злоумышленнику получить доступ к паролям, сертификатам и другой конфиденциальной информации; ходили слухи, что исправление станет доступно поставщикам в декабре 2017 года. [10] [11]
В марте 2018 года израильская компания по безопасности ИТ сообщила о нескольких предположительно серьезных недостатках, связанных с PSP в процессорах AMD с архитектурой Zen ( EPYC , Ryzen , Ryzen Pro и Ryzen Mobile), которые могут позволить вредоносному ПО запуститься и получить доступ к конфиденциальной информации. [12] AMD объявила об обновлениях прошивки для устранения этих недостатков. [13] [14] Их обоснованность с технической точки зрения была подтверждена независимыми экспертами по безопасности, которые рассмотрели раскрытие информации, хотя высокие риски, заявленные CTS Labs, были отклонены, [15] что привело к утверждениям о том, что недостатки были опубликованы с целью манипулирования акциями . [16] [17]
Этот чип установлен на большинстве платформ AMD с 2013 года и ведет себя во многом так же, как и Intel Management Engine [...] Довольно резкое осознание того, что исходный код PSP не будет открыт, пришло во время обсуждения с высшим руководством AMD EPYC.
Этот встроенный AMD Secure Processor был раскритикован некоторыми как еще один возможный вектор атаки...