Модули TPM (Trusted Platform Module) часто устанавливаются в системы, с помощью которых осуществляется обработка конфиденциальной информации. Одна из функций этих модулей — генерация и безопасное хранение ключей шифрования. Для этого на борту модуля имеется отдельный криптопроцессор.
Но, как выяснилось, использование TPM не дает стопроцентной гарантии от утечки данных.

Архитектура криптопроцессора TPM
Группа исследователей, в которую вошли представители Вустерского политехнического института, а также Любекского и Калифорнийского университетов, разработала метод атаки, позволяющий восстанавливать значения закрытых ключей, сохранённых в модуле TPM.
Атака получила название TPM-Fail — она затрагивает как программно-аппаратные решения Intel (CVE-2019-11090), так и модули, построенные на базе чипов STMicroelectronics ST33 (CVE-2019-16863). Исследовали выложили в публичный доступ прототип ПО для атаки, а также продемонстрировали возможность восстановления 256-битного закрытого ключа, который используется в ЭЦП-алгоритмах ECDSA и EC-Schnorr.

Модуль TPM, установленный на системную плату. Версия Infineon, уязвимости нет
В основе новой атаки лежит временной анализ операций в процессе генерирования цифровой подписи. Оценка задержек позволяет получить информацию об отдельных битах, но для успешного восстановления ключа необходимо довольно существенное время.
Это время оценивается в 4-20 минут (до 15 тысяч операций) в случае решения Intel и порядка 80 минут (до 40 тысяч операций) для аппаратных TPM на базе ST33, поскольку для временного анализа необходима генерация нескольких тысяч ЭЦП для уже известных атакующему данных.
STMicroelectronics признала ошибку и сообщает, что в новой редакции криптопроцессора работа алгоритма ECDSA более не даёт задержек, которые можно было бы проанализировать. Интересно, что в аналогичных чипах Infineon и Nuvoton данная уязвимость отсутствует изначально.

Результаты аудита SDK для создания защищённых приложений
Что касается решений Intel, то описываемая проблема затрагивает все процессоры, начиная с поколения Haswell — как мобильные и десктопные, так и серверные. Но компания также признаёт наличие уязвимости и уже в ноябрьском обновлении прошивок она была устранена наряду с 24 другими различными уязвимостями.
Дополнительно стоит отметить публикацию результатов аудита различных средств разработки приложений, работающих с кодом, выполняемых в изолированных анклавах. По результатам выявлено 35 уязвимостей, потенциально позволяющих извлечь из AES-ключи или даже запускать какой-либо вредоносный код. Как выяснилось, архитектура Intel SGX не является единственной уязвимой — потенциально под угрозой находится также и RISC-V Keystone.
Источник: