The OpenNET Project / Index page

[ новости /+++ | форум | теги | ]

GPUHammer - вариант атаки Rowhammer на память GPU

14.07.2025 10:22

Исследователи из Университета Торонто представили первую атаку класса Rowhammer, применяемую для искажения содержимого видеопамяти. Возможность совершения атаки, приводящей к подстановке до 8 бит данных, продемонстрирована на дискретном GPU NVIDIA A6000 с видеопамятью GDDR6. В качестве практического примера показано как можно использовать подобное искажение для вмешательства в выполнение моделей машинного обучения и существенного (с 80% до 0.1%) снижения точности выдаваемых ими результатов при изменении значения всего одного бита.

До сих пор создание атак класса Rowhammer для видеопамяти было затруднено из-за сложности определения физической раскладки памяти в чипах GDDR, больших задержек при доступе к памяти (в 4 раза медленнее) и более высокой частоты обновления памяти. Кроме того, проведению исследований мешало задействование в чипах GDDR проприетарных механизмов защиты от манипуляций, приводящих к преждевременной потере заряда, для анализа которых требовалось создание специальных аппаратных тестовых стендов на базе FPGA.

Для изучения видеопамяти исследователями была создана новая техника обратного инжиниринга GDDR DRAM, а в самой атаке задействованы применяемые для организации параллельных вычислений оптимизации доступа к памяти, которые были использованы в качестве усилителей интенсивности доступа к отдельным ячейкам. Для проведения атаки на GPU NVIDIA использован низкоуровневый код CUDA.

В пользовательском коде CUDA не выполняется обращение по физическим адресам памяти, но в драйвере NVIDIA производилось отражение виртуальную памяти в одну и ту же физическую память, чем и воспользовались исследователи для вычисления смещения виртуальной памяти и определения раскладки банков памяти. Распознание обращений к разным банкам памяти было произведено через анализ задержек, которые отличались при доступе к одному или разными банкам памяти.

В системах, совместно использующих GPU, таких как серверы для выполнения моделей машинного обучения, атака позволяет одному пользователю изменить содержимое видеопамяти с данными другого пользователя. В качестве меры защиты компания NVIDIA рекомендует включить коды коррекции ошибок (ECC, Error Correction Codes) командой "nvidia-smi -e 1" или использовать серии видеокарт с поддержкой OD-ECC (On-Die ECC), такие как GeForce RTX 50, RTX PRO, GB200, B200, B100, H100, H200, H20 и GH200.

По данным исследователей включение ECC на системах с GPU A6000 приводит к снижению производительности выполнения моделей машинного обучения примерно на 10% и уменьшению объёма памяти на 6.25%. Инструментарий для проведения атаки и выполнения обратного инжиниринга низкоуровневой раскладки видеопамяти на системах с GPU NVIDIA опубликован на GitHub.

Атака RowHammer позволяет исказить содержимое отдельных битов памяти DRAM путём цикличного чтения данных из соседних ячеек памяти. Так как память DRAM представляет собой двухмерный массив ячеек, каждая из которых состоит из конденсатора и транзистора, выполнение непрерывного чтения одной и той же области памяти приводит к флуктуации напряжения и аномалиям, вызывающим небольшую потерю заряда соседних ячеек. Если интенсивность чтения большая, то соседняя ячейка может потерять достаточно большой объём заряда и очередной цикл регенерации не успеет восстановить её первоначальное состояние, что приведёт к изменению значения сохранённых в ячейке данных.

Метод атаки Rowhammer был предложен в 2014 году, после чего между исследователями безопасности и производителями оборудования началась игра в "кошки-мышки" - производители чипов памяти пытались блокировать уязвимость, а исследователи находили новые способы её обхода. Например, для защиты от RowHammer производители чипов добавили механизм TRR (Target Row Refresh), но оказалось, что он блокирует искажение ячеек лишь в частных случаях, но не защищает от всех возможных вариантов атаки. Методы атаки были разработаны для чипов DDR3, DDR4 и DDR5 на системах с процессорами Intel, AMD и ARM. Также были найдены способы обхода коррекции ошибок ECC и предложены варианты совершения атаки по сети и через выполнение JavaScript-кода в браузере.

  1. Главная ссылка к новости (https://nvidia.custhelp.com/ap...)
  2. OpenNews: FlippyRAM - дистрибутив для тестирования атаки Rowhammer
  3. OpenNews: ZenHammer - метод атаки для искажения содержимого памяти на платформах AMD Zen
  4. OpenNews: SnailLoad - атака по определению открываемых сайтов через анализ задержек доставки пакетов
  5. OpenNews: Mayhem - атака, искажающая биты в памяти для обхода аутентификации в sudo и OpenSSH
  6. OpenNews: Воссоздание RSA-ключей через анализ SSH-соединений к сбойным серверам
Лицензия: CC BY 3.0
Короткая ссылка: https://opennet.ru/63575-gpurowhammer
Ключевые слова: gpurowhammer, rowhammer, gpu, attack
При перепечатке указание ссылки на opennet.ru обязательно


Обсуждение (28) Ajax | 1 уровень | Линейный | +/- | Раскрыть всё | RSS
  • 1.1, Аноним (1), 11:07, 14/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +2 +/
    Атака из разряда сферический конь в вакууме
     
     
  • 2.10, Аноним (10), 11:48, 14/07/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    Когда-то ядерная бомба была сферическим конем в вакууме.
     
     
  • 3.30, tmpnick (ok), 14:31, 14/07/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     

  • 1.2, iPony128052 (?), 11:08, 14/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +3 +/
    "Ah ..., Here We Go Again" (c)

     

  • 1.3, Аноним (3), 11:15, 14/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Самое забавное, что все данные оставались в видеокарте после перезагрузки в другую ОС. Она там вообще не обнуляется что ли?
     
     
  • 2.8, Аноним (8), 11:41, 14/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Нет, не обнуляется. Как ты гига обнулять будешь то при каждом переключении контекста? Видеопамять - она общая, в одном окне ты жмёшь на глазок "показать пароль", а любое другое может стырить картинку и прогнать через OCR. В относительно новых картах MMU есть, в TeraScale вообще вся видеопамять доступна всем.
     
     
  • 3.11, Аноним (11), 11:49, 14/07/2025 [^] [^^] [^^^] [ответить]  
  • +2 +/
    > в одном окне ты жмёшь на глазок "показать пароль", а любое другое может стырить картинку

    Хм... Звучит как иксы.

     
     
  • 4.13, Аноним (8), 11:57, 14/07/2025 [^] [^^] [^^^] [ответить]  
  • –1 +/
    Не надо грязи, в иксах есть расширения для защиты. Проблема в том, что ни один софт их специально не поддерживает (кроме некоторых песочниц, а нужно - чтобы клиентский софт поддерживал). В результате возникают некоторые проблеы, когда я в firejail включаю изоляцию иксов через это расширение. Да, программы таки работают. Но начинают выглядеть как говно и управление работает как говно (а чтобы нормально заработало - программы нативно должны это поддерживать, а долбоящерам пофиг, им вейланд-вейланд-вейланд-старое-железо-дропнуть-надо, поэтому изоляцию пришлось выключить.
     
     
  • 5.14, Аноним (11), 12:03, 14/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Что за расширения? Нет икс неймспейс ли, который появился лишь в форке? Так он должен был появиться не буквально на днях, а лет 5-10 назад. В файрджейл изоляция иксов традиционно делается запуском еще одного сервера, ксефира. В вяленом же все работает из коробки, а как говно не выглядит.
     
     
  • 6.26, Аноним (8), 13:21, 14/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    firejail --x11=xorg

    Чтобы работало, XOrg должен быть настроен как запускаемый от не рута.

     
     
  • 7.27, nebularia (ok), 13:58, 14/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    А, это во вложенном окошке
     
     
  • 8.29, Аноним (29), 14:25, 14/07/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 3.20, Аноним (20), 12:36, 14/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Примерно так

    https://www.phoronix.com/news/AMD-Cleaner-Shader-GFX11.0.3

     
     
  • 4.22, Аноним (10), 12:41, 14/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Пора процессоры интегрировать в ГПУ, зачем они отделтные ума не приложу.
     
     
  • 5.28, Аноним (-), 14:24, 14/07/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 5.36, Аноним (-), 16:00, 14/07/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 2.23, Аноним (23), 13:07, 14/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    Я это заметил ещё лет 15 назад, когда перезагружался из линукс в виндовс и мелькала заставка нвидиа, которая шла с дровами к линукс.
     
     
  • 3.24, Аноним (3), 13:20, 14/07/2025 [^] [^^] [^^^] [ответить]  
  • +1 +/
    > Я это заметил ещё лет 15 назад, когда перезагружался из линукс в
    > виндовс и мелькала заставка нвидиа, которая шла с дровами к линукс.

    Вроде на uefi это повесили, только производители дружно забили. А так при старте иксов венда мелькала, да.

     
  • 2.35, Аноним (-), 15:30, 14/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    > Самое забавное, что все данные оставались в видеокарте после
    > перезагрузки в другую ОС. Она там вообще не обнуляется что ли?

    Оператива тоже видишь ли за просто сам факт сброса - не обнуляется. На основе этого есть атаки по тырингу ключей из памяти опосля сброса. И это причина по которой нормальное крипто - изничтожает ключ в памяти явно затерев его сразу после того как он перестал требоваться, чтобы минимизировать окно возможностей для таких вещей.

    В стародавние времена BIOS парились RAM test но - обычно только при cold boot, и по мере увеличения объема оперативы время этой операции почему-то всех задолбало и на все это забили.

     

  • 1.7, Аноним (8), 11:33, 14/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    А как же GLitch https://www.vusec.net/projects/glitch/ 2018 года, где через WebGL делали?
     
  • 1.9, Аноним (10), 11:47, 14/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +1 +/
    Ну все теперь известно как искусственный интеллект захватит галактику.
     
     
  • 2.15, Аноним (15), 12:08, 14/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Он уже поселился в твоей видеокарте. Теперь даже выключение компа тебя не спасёт.
     
     
  • 3.21, Аноним (10), 12:40, 14/07/2025 [^] [^^] [^^^] [ответить]  
  • +/
    Sad, but true.
     
  • 3.25, Аноним (-), 13:21, 14/07/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     
  • 3.33, Аноним (-), 15:08, 14/07/2025 Скрыто ботом-модератором     [к модератору]
  • +/
     

  • 1.16, Аноним (16), 12:17, 14/07/2025 [ответить] [﹢﹢﹢] [ · · · ]  
  • +/
    Интересно, как программная коррекция поможет проблемкмна шареной памяти? Разве что производительность -10% (т.е. +10% к расходам, когда оно по времени считается)
     
  • 1.34, Аноним (-), 15:08, 14/07/2025 Скрыто ботом-модератором [﹢﹢﹢] [ · · · ]     [к модератору]
  • +/
     

     Добавить комментарий
    Имя:
    E-Mail:
    Текст:



    Партнёры:
    PostgresPro
    Inferno Solutions
    Hosting by Hoster.ru
    Хостинг:

    Закладки на сайте
    Проследить за страницей
    Created 1996-2025 by Maxim Chirkov
    Добавить, Поддержать, Вебмастеру