Совместная исследовательская группа, в которую вошли специалисты из Бельгийского католического университета Лёвена (KU Leuven) и института EURECOM, опубликовала подробную техническую исследовательскую работу, представляющую новую инновацию в области безопасности под названием «SecDMP». Это аппаратная система, специально разработанная для устранения уязвимостей безопасности, связанных с блоками предварительной выборки данных на основе памяти (Data Memory-Dependent Prefetchers или сокращенно DMP) в компьютерных процессорах.
Блоки предварительной выборки данных полагаются на прогнозирование данных, которые понадобятся процессору в будущем, и их предварительную выборку для повышения производительности. Однако этот тип архитектурной оптимизации открывает возможности для уязвимостей утечки конфиденциальной информации через побочные каналы (Side-Channels). Исследователи продемонстрировали на примере реализации первых открытых модулей DMP на процессоре с архитектурой RISC-V, что существующие средства защиты, пытающиеся сохранить эффективность производительности, не способны защитить целые категории таких утечек безопасности.
Что на практике меняет система SecDMP?
Новая система предлагает точную архитектурную классификацию утечек в блоках предварительной выборки и с предельной точностью классифицирует существующие и новые атаки. Решение «SecDMP» основано на фундаментальной идее, которая сводится к четкой маркировке конфиденциальных данных в памяти. Это гарантирует, что блоки предварительной выборки никогда не будут кодировать или обрабатывать эти секреты внутри микроархитектуры процессора, при этом полностью сохраняя производительность обычных данных без какого-либо негативного влияния.
Безопасность и восстановление защищенных стандартов
Исследователи математически и технически доказали, что система SecDMP не привносит никаких дополнительных утечек по сравнению с базовыми моделями, не имеющими блоков предварительной выборки. Что еще более важно, интеграция этого решения с существующими механизмами защиты от спекулятивного выполнения (Speculative Execution) восстанавливает полную безопасность микроархитектуры для кода, выполняющегося за постоянное время (Constant-Time Code), преодолевая предыдущие ограничения безопасности.
Результаты экспериментальной оценки
Практические и исполнительные тесты, проведенные исследовательской группой, подтвердили, что технология SecDMP успешно предотвращает все формы утечек, связанные с блоками предварительной выборки, при этом фиксируя чрезвычайно малые затраты аппаратных ресурсов и влияния на производительность, что прокладывает путь к разработке безопасных и устойчивых к атакам по побочным каналам процессоров в будущем.