Ученые взломали безопасность процессоров AMD с помощью микрокомпьютера за 5 долларов
Механизм безопасности, который AMD использует для защиты памяти своих виртуальных машин, можно обойти с помощью одноплатного компьютера Raspberry Pi Pico стоимостью 5 долларов. Это обнаружила группа учёных из Бельгии, Германии и Великобритании, разработавшая схему атаки, получившую название BadRAM.
AMD разработала безопасную технологию зашифрованной виртуализации (СЭВ), который обеспечивает надежную среду выполнения (Доверенная среда выполнения — TEE). Подобные решения предлагают конкуренты: Software Guard Extensions (СГХ) и доверенные расширения домена (ТДКС) Intel, а также архитектуру конфиденциальных вычислений (КЦА) Арм. Эти технологии используются поставщиками облачных услуг и гарантируют, что администраторы, имеющие доступ к оборудованию центров обработки данных, не смогут копировать конфиденциальную информацию с виртуальных машин клиентов. Информация в памяти шифруется, что защищает клиентов облачной платформы от ненадежных поставщиков услуг и недобросовестных государственных чиновников.
Исследователи изучили новую версию одной из этих технологий — AMD SEV-SNP (Secure Nested Paging), которая добавляет защиту от атак перераспределения памяти на стороне гипервизора. Однако, как оказалось, у этой технологии есть свои недостатки.
Для обхода ограничений доступа к памяти TEE необходим одноплатный компьютер Raspberry Pi Pico, разъем DDR и аккумулятор на 9 В.
Атака BadRAM, предложенная исследователями, предполагает злоупотребление механизмами чипа SPD (Обнаружение последовательного присутствия), который отвечает за идентификацию модуля из системы. Манипулируя SPD, в физической памяти создаются псевдонимы, что позволяет проверять ее содержимое на наличие конфиденциальной информации.
Атака удваивает видимый размер установленных в системе модулей DIMM, обманывая контроллер памяти процессора, заставляя его использовать дополнительные биты адресации. В результате два физических адреса относятся к одному и тому же месту в памяти DRAM. Метод работает с памятью DDR4 и DDR5. Теоретически атака может быть осуществлена и без физического доступа к оборудованию, например через SSH, поскольку некоторые производители DRAM оставляют чип SPD разблокированным. Это было обнаружено на двух модулях Corsair DDR4. Чтобы провести атаку на DDR3, необходимо удалить или заменить SPD. Технология AMD SEV-SNP используется в Amazon AWS, Google Cloud и Microsoft Azure. Исследователи отмечают, что схема атаки BadRAM позволяет «добавлять необнаружимые бэкдоры в любую виртуальную машину, защищенную SEV».
Текущие технологии Intel SGX и TDX не подвержены этой уязвимости благодаря реализованным контрмерам, предотвращающим подкачку памяти. Уязвима только устаревшая версия SGX, которая больше не используется производителем. Arm CCA также защищен на уровне спецификации, но проверить это исследователям не удалось из-за отсутствия оборудования. Ученые представят в AMD схему атаки и образец кода 26 февраля 2024 года. Они намерены представить свои выводы в следующем году на симпозиуме IEEE по безопасности и конфиденциальности. Компания зарегистрировала уязвимости под номерами CVE-2024-21944 и AMD-SB-3015 — информацию о них она опубликовала вчера.
«AMD считает, что использование раскрытой уязвимости предполагает, что злоумышленник имеет физический доступ к системе, доступ к ядру операционной системы или у него установлен модифицированный вредоносный BIOS». AMD рекомендует использовать модули памяти с отключенной функцией Serial Presence Detect (SPD) и следовать рекомендациям по обеспечению физической безопасности системы. AMD также выпустила для клиентов обновления прошивки, которые устранят уязвимость».
компания сообщила The Register