GPUHammer: Перша успішна атака Rowhammer на відеопам'ять GDDR6

gpuhammer

Кілька днів тому команда дослідників оприлюднила інформацію про розробку перша атака Роухаммера що було успішно спрямовано до la Відеопам'ять GDDR6 графічного процесора, зокрема NVIDIA A6000.

Техніка, названий GPUHammer, дозволяє маніпулювати окремими бітами в DRAM графічного процесора, що різко знижує точність моделей машинного навчання, змінюючи лише один біт їхніх параметрів. Ці перемикання бітів дозволяють зловмисному користувачеві графічного процесора маніпулювати даними графічного процесора іншого користувача у спільних середовищах з часовими інтервалами.

До цих пір Застосування Rowhammer до відеопам'яті вважалося недоцільним через кілька технічних обмежень. Фізичне розташування комірок пам'яті в мікросхемах GDDR важко відобразити, затримки доступу до чотирьох разів менші, ніж у звичайній DRAM, а частоти оновлення значно вищі. До цього додаються запатентовані механізми захисту від передчасної втрати заряду, зворотне проектування яких вимагало спеціалізованого обладнання.

Щоб подолати ці перешкоди, Дослідники розробили новий метод зворотного проектування, спрямований на GDDR DRAMВикористовуючи низькорівневий код CUDA, вони виконали атаку за допомогою спеціальних оптимізацій, які посилили доступ до певних комірок пам'яті, створюючи умови, що сприяють маніпуляціям бітами. Ключ до успіху полягав у досягненні високоорганізованих паралельних обчислень, які діяли як підсилювач тиску на сусідні комірки.

Як працює атака?

Напад використовує фізичну слабкість DRAM, де інтенсивний доступ до рядка пам'яті (відомий як «забивання молотком») може викликати зміни в сусідніх рядкахХоча цю вразливість було виявлено у 2014 році та ретельно досліджено в пам'яті DDR процесора, її перенесення на графічні процесори досі було складним завданням через:

  • Висока затримка доступу до GDDR6 (до 4 разів вища, ніж у DDR4).
  • Складність фізичного розподілу пам'яті.
  • Наявність власних та погано задокументованих засобів пом'якшення ризиків, таких як TRR.

Rowhammer — це апаратна вразливість, через яку швидка активація одного рядка пам'яті призводить до перемикання бітів у сусідніх рядках. З 2014 року ця вразливість широко досліджується в процесорах та пам'яті на базі процесора, такій як DDR3, DDR4 та LPDDR4. Однак, оскільки критичні робочі навантаження штучного інтелекту та машинного навчання тепер виконуються на дискретних графічних процесорах у хмарі, оцінка вразливості пам'яті графічних процесорів до атак Rowhammer є критично важливою.

Незважаючи на ці перешкоди, Дослідникам вдалося застосувати зворотну інженерію про розподіл віртуальної/фізичної пам'яті в CUDA, Вони розробили метод ідентифікації конкретних банків пам'яті DRAM та оптимізований паралельний доступ з використанням кількох потоків та варпів, максимізуючи швидкість виконання без спричинення додаткової затримки.

Доказ концепції показав, як однобітове перетворення вагових коефіцієнтів моделі глибокої нейронної мережі (DNN), зокрема в експонентах FP16, може знизити точність моделей класифікації зображень top-1 на ImageNet з 80% до 0,1%. Цей висновок викликає тривогу для центрів обробки даних та хмарних сервісів, що виконують навантаження штучного інтелекту в спільних середовищах з графічними процесорами.

Пом'якшення та обмеження

NVIDIA підтвердила наявність вразливості та рекомендує ввімкнути підтримку ECC. (Код виправлення помилок) за допомогою команди nvidia-smi -e 1. Хоча Цей захід може виправити помилки однобітний, Це означає втрату продуктивності до 10%. та зменшення доступної пам'яті на 6,25%. Це також не захищає від майбутніх атак, що передбачають багаторазове перемикання бітів.

Ми підтвердили коливання розрядності Rowhammer на графічних процесорах NVIDIA A6000 з пам'яттю GDDR6. Інші графічні процесори GDDR6, такі як RTX 3080, не демонстрували коливань розрядності під час нашого тестування, можливо, через різницю між постачальником DRAM, характеристиками чіпа або умовами експлуатації, такими як температура. Ми також не спостерігали жодних коливань на графічному процесорі A100 з пам'яттю HBM.

Команда наголошує, що GPUHammer наразі перевірено лише на графічному процесорі A6000 з GDDR6., а не на таких моделях, як A100 (HBM) або RTX 3080. Однак, оскільки це розширювана атака, іншим дослідникам рекомендується повторити та розширити аналіз на різних архітектурах та моделях графічних процесорів.

Нарешті, якщо вам цікаво дізнатися більше про це, ви можете переглянути подробиці в наступне посилання.