В отличие от атак класса Spectre, утечка в AEPIC Leak происходит без применения методов восстановления по сторонним каналам — сведения о конфиденциальных данных передаются напрямую через получение содержимого регистров, отражённых в странице памяти MMIO (memory-mapped I/O). В общем виде атака позволяет определить данные, передаваемые между кэшами второго и последнего уровней, включая содержимое регистров и результаты операций чтения из памяти, которые до этого обрабатывались на том же ядре CPU.
Так как для осуществления атаки необходимо наличие доступа к физическим страницам APIC MMIO, т.е. требуются привилегии администратора, метод ограничен атакой на анклавы SGX, к которым администратор не имеет прямого доступа. Исследователями разработан инструментарий, позволяющий в течение нескольких секунд определить хранимые в SGX ключи AES-NI и RSA, а также аттестационные ключи Intel SGX и параметры генератора псевдослучайных чисел. Код для проведения атаки опубликован на GitHub.
Компания Intel заявила о подготовке исправления в форме обновления микрокода, в котором реализована поддержка чистки буферов и добавлены дополнительные меры для защиты данных анклавов. Также подготовлен новый выпуск SDK для Intel SGX с изменениями, предотвращающими утечки данных. Разработчикам операционных систем и гипервизоров рекомендовано использовать вместо устаревшего режима xAPIC, режим x2APIC, в котором для доступа к регистрам APIC вместо MMIO используются MSR-регистры.
Источник: http://www.opennet.ru/opennews/art.shtml?num=57623