✔Атака TEE.fail обходит защиту конфиденциальных вычислений на процессорах Intel и AMD - «Новости»
Группа исследователей представила атаку TEE.Fail, которая позволяет извлекать ключи и другие секретные данные из защищенных областей процессоров Intel (SGX, TDX) и AMD (SEV-SNP). Эти области, называемые Trusted Execution Environments (TEE), изолированы от ОС и предназначены для безопасного выполнения кода и хранения криптографических ключей.
Специалисты из Технологического института Джорджии и Университета Пердью продемонстрировали, что современные реализации TEЕ не так надежны, как обещают их производители. Корень проблемы кроется в переходе на серверное железо с памятью DDR5, где ради производительности отказались от защиты целостности и механизма защиты от повторов, оставив только шифрование AES-XTS.
Для реализации атаки TEE.Fail требуется физический доступ к целевому оборудованию, а также привилегии уровня root для модификации драйвера ядра.
В целом TEE.fail похожа на недавно представленные атаки WireTap и Battering RAM, которые также были связаны с использованием интерпозера для захватом данных из памяти. Однако WireTap и Battering RAM работали только с памятью DDR4, тогда как TEE.fail нацелена на DDR5.
Фактически атака представляет собой перехват трафика на шине памяти DDR5. Для эксперимента исследователи собрали специальное устройство-интерпозер стоимостью менее тысячи долларов США и разместили его между модулем памяти и материнской платой, а также использовали собственный логический анализатор. Замедлив частоту памяти до 3200 MT/s, специалисты смогли считывать зашифрованные блоки данных, записываемые и читаемые TEE.
Также исследователи модифицировали драйвер SGX в ядре Linux, чтобы сопоставлять виртуальные и физические адреса, и заставили анклав многократно обращаться к одной и той же ячейке памяти. Это позволило установить, что шифрование AES-XTS детерминировано — один и тот же адрес всегда дает одинаковый шифротекст. Благодаря этому удалось построить таблицу соответствий и извлечь криптографические ключи.
В итоге экспертам удалось использовать восстановленный nonce и публичную подпись, и реконструировать приватные ключи подписи, что дало им возможность подделывать аттестации SGX и TDX и выдавать себя за настоящие TEE. Такой же подход они применили для извлечения ключей подписи из OpenSSL, работающего в виртуальной машине под защитой AMD SEV-SNP. Похожие методы сработали и против AMD SEV-SNP, даже при включении Ciphertext Hiding.
Кроме того, в ходе проведенных тестов исследователи смогли:
- подделать аттестацию TDX в Ethereum BuilderNet и получить доступ к конфиденциальным данным и ключам транзакций;
- фальсифицировать аттестацию Intel и Nvidia, чтобы запускать код вне TEE, который при этом выглядел легитимным;
- извлечь приватные ключи ECDH непосредственно из анклавов, восстановить сетевой мастер-ключ и полностью нарушить конфиденциальность.
Также они атаковали сервер на базе Xeon и получили Provisioning Certificate Key (PCK) — ключ, который используется для подтверждения подлинности устройства.
Исследователи уведомили о проблемах Intel в апреле, Nvidia — в июне, AMD — в августе. Все компании признали уязвимости и заявили, что работают над мерами смягчения. Позже AMD выпустила отдельный бюллетень, отметив, что не планирует выпускать патчи, поскольку атаки с физическим доступом выходят за рамки обычной модели угроз для их продуктов.






