Атаки GDDRHammer и GeForge, искажающие память GPU для доступа ко всей памяти CPU

Новости мира unix. Хотите узнать секрет вечного счастья? Откройте страницу 246.
Ответить
acolyte
Аватара пользователя
Сообщения: 1252
Зарегистрирован: 20.08.2022

#

Атаки GDDRHammer и GeForge, искажающие память GPU для доступа ко всей памяти CPU
Дата публикации:Sat, 04 Apr 2026 12:54:37 +0300

Исследователи из нескольких университетов США и Австралии разработали две атаки класса Rowhammer - GDDRHammer и GeForge, позволяющие при выполнении непривилегированного ядра CUDA на GPU NVIDIA добиться искажения отдельных битов в чипах видеопамяти GDDR. В отличие от представленного в прошлом году метода GPUHammer, новые атаки не ограничиваются воздействием на данные, обрабатываемые в памяти GPU, а позволяют получить полный доступ ко всей основной памяти, относящейся к адресному пространству CPU. Исследователями продемонстрированы эксплоиты, предоставляющие root-доступ к основной системе при выполнении непривилегированного CUDA-ядра на GPU.
Обе атаки добиваются преждевременной потери заряда в определённых ячейках видеопамяти, к которым у атакующих нет прямого доступа, что приводит к изменению хранящихся в этих ячейках битов. Возможность чтения и записи в память, относящуюся к адресному пространству CPU, реализована путём вмешательства в работу аллокатора памяти GPU (cudaMalloc) для нарушения изоляции памяти GPU и отображения виртуальных адресов GPU в произвольные адреса физической памяти GPU или CPU.
Вмешательство осуществляется через искажение значений битов в видеопамяти, в которой хранятся таблицы страниц памяти GPU, отвечающие за трансляцию виртуальных адресов в физические. Отличия между атаками GDDRHammer и GeForge сводятся к тому, что метод GDDRHammer модифицирует таблицу страниц последнего уровня (PT - Last Level Page Table), а метод GeForge - каталог страниц последнего уровня (PD0 - Last Level Page Directory).
Среди прочего указанные таблицы трансляции адресов используются для организации прямого доступа GPU к памяти CPU, поэтому изменение адреса в таблице страниц GPU на физический адрес в основной оперативной памяти и выставление флага APERTURE, включающего режим маппинга памяти CPU, дают возможность читать и записывать данные c обращением к основной памяти через шину PCIe при отключённом IOMMU.
Изображение
Изображение
Успешные атаки продемонстрированы для высокопроизводительных профессиональных видеокарт NVIDIA RTX A6000 на базе микроархитектуры Ampere (стоимость новых карт начинается с $6850, а подержанных - с $4000) и бытовых моделей NVIDIA RTX 3060 ($250-300). Разработанная техника обхода защиты от Rowhammer в сочетании с задействованием предоставляемых в GPU средств распараллеливания операций позволила в 64 раза увеличить частоту возникновения искажения ячеек по сравнению с прошлыми атаками. В качестве временной меры для блокирования атак командой "nvidia-smi -e 1" может быть включён режим коррекции ошибок ECC (Error Correcting Codes), но он приводит к дополнительным накладным расходам и потенциально может быть обойдён, используя такие методы атак, как ECCploit и ECC.fail.
Атака RowHammer позволяет исказить содержимое отдельных битов памяти DRAM путём цикличного чтения данных из соседних ячеек памяти. Так как память DRAM представляет собой двухмерный массив ячеек, каждая из которых состоит из конденсатора и транзистора, выполнение непрерывного чтения одной и той же области памяти приводит к флуктуации напряжения и аномалиям, вызывающим небольшую потерю заряда соседних ячеек. Если интенсивность чтения большая, то соседняя ячейка может потерять достаточно большой объём заряда и очередной цикл регенерации не успеет восстановить её первоначальное состояние, что приведёт к изменению значения сохранённых в ячейке данных.
Метод атаки Rowhammer был предложен в 2014 году, после чего между исследователями безопасности и производителями оборудования началась игра в "кошки-мышки" - производители чипов памяти пытались блокировать уязвимость, а исследователи находили новые способы её обхода. Например, для защиты от RowHammer производители чипов добавили механизм TRR (Target Row Refresh), но оказалось, что он блокирует искажение ячеек лишь в частных случаях, но не защищает от всех возможных вариантов атаки. Методы атаки были разработаны для чипов DDR3, DDR4 и DDR5 на системах с процессорами Intel, AMD и ARM, а также для GDDR-памяти GPU NVIDIA. Помимо этого были найдены способы обхода коррекции ошибок ECC и предложены варианты совершения атаки по сети и через выполнение JavaScript-кода в браузере.

Новость позаимствована с opennet.ru
Ссылка на оригинал: https://www.opennet.ru/opennews/art.shtml?num=65141

Жизнь за Нер'зула!

Ответить