GDDRHammer и GeForge: две нови атаки на Rowhammer срещу графични процесори

Ключови точки:
  • Изследователите разработват техники за усилване на атаките на Rowhammer върху GDDR6 памет, постигайки хиляди битови промени.
  • Атаките на GDDRHammer и GeForge манипулират разпределителя на паметта, за да поставят таблици на страници в уязвими сектори.
  • Промяната на малко в таблицата на страниците позволява на атакуващия да пренасочи указателите на паметта към структури, контролирани от атакуващия.
  • Чрез промяна на полето за отваряне на системата в записа на таблицата, графичният процесор получава директен достъп за четене и запис до физическата памет на хоста.
  • Уязвимостта засяга модели като RTX 3060 и RTX A6000, изискващи активирането на IOMMU като основна защитна мярка.

Атаки на Rowhammer за графични процесори

Изследователи по сигурността доказаха че Физическата уязвимост на Роухамър представлява сериозна заплаха за съвременни графични процесори, включващи две пълни вериги за атака, наречени GeForce и GDDRHammerЗа разлика от предварителните изследвания, които едва успяха да предизвикат минимално количество битови промени, за да влошат извода на невронните мрежи, тези нови видове атаки постигат абсолютен компромис на системно ниво.

Когато изпълнявате стандартен, непривилегирован код на NVIDIA GPU, a Нападателят може да повреди вътрешните структури на паметта на устройството, за да получи произволен достъп за четене и запис. в цялата физическа памет на хост процесора. Тази кръстосана манипулация позволява на атакуващия да ескалира привилегиите и да получи конзола на суперпотребител в основната операционна система.

Избягване на смекчаващи мерки и модели

Успехът на тези атаки зависи от безпрецедентни техники. за заобикаляне на мерките за намаляване на обновяването на целевия ред (TRR), внедрени в GDDR6 паметта. Изследването на GeForge въвежда нееднородни модели, които обхващат множество интервали на актуализиране, променяйки интензивността и реда на активирането на редовете памет, за да се избегне хардуерно откриване.

За да се приложат карти на физически адреси, получени чрез офлайн профилиране, към динамични разпределения на паметта, Те разработиха техника за закотвяне на страници, която използва нелинейно присвояване. от физическите адреси до L2 кеш наборите.

Едновременно, Екипът на GDDRHammer откри, че редовете DRAM памет на графични карти Те следват немонотонна геометрична подредбаТова им позволи да конструират високоефективни двустранни модели, въпреки че физическите адреси изглеждаха отдалечени. Чрез присвояване на отделни задачи от банките памет на различни стрийминг мултипроцесори и частично синхронизиране на изпълнението, те успяха да увеличат максимално производителността на активирането, като същевременно заобиколиха безопасното семплиране.

Тези подходи доведоха до огромни резултати; Методът GeForge е индуцирал 1,171-битови промени в потребителска RTX 3060 и 202 в професионална RTX A6000., докато GDDRHammer достигна средно 1,032 промени на гигабайт, което представлява 64-кратно увеличение спрямо предишни опити.

Манипулиране на таблици на страници и изпращане на съобщения до паметта

За да се превърнат тези електрически смущения в оръжие, Атакуващите са насочени към йерархичните таблици на страници, управлявани от модула за управление на паметта на графичния процесор.Тъй като контролерът обикновено разпределя тези структури в защитени или непредсказуеми региони, експлойтите разчитат на техники за масажиране на паметта, за да принудят поставянето на записите в таблицата на страниците на физически места, за които нападателят знае, че са уязвими.

Атаката GDDRHammer използва съпоставяния на споделена памет, за да запълни алокатора, скъсявайки разстоянието между регионите на таблицата на страниците и контролираната от потребителя памет. GeForge се фокусира специално върху повреда на записи в директорията „Страници“ 0 (PD0).

Чрез внимателно разпределяне и освобождаване на фрагменти от унифицирана виртуална памет (Unified Virtual Memory), атакуващият насочва създаването на нови PD0 структури директно към специфична 4-килобайтова подстраница. Веднъж позициониран, процесът променя малко в рамките на физическия адресен указател на записа, пренасочвайки го към фалшива таблица на страниците, изцяло контролирана от злонамерения код.

Ескалация на привилегиите чрез PCIe шината

El Контролът върху таблицата на страниците на графичната карта се превръща директно в контрол над централния процесор на компютъра.Записите в таблицата на страниците на NVIDIA съдържат специфично начално поле, което определя дали свързаният физически адрес се намира в локалната памет на устройството или в паметта на хост системата. Чрез промяна на това поле във фалшифицирания запис, всяка операция по-късно четене или писане Данните, генерирани от графичния процесор, се пренасочват през PCIe шината директно към физическата RAM памет. на домакина.

Този директен достъп до паметта заобикаля собствения блок за управление на паметта на процесора и защитите от запис и копиране на операционната система. В практическата си демонстрация, изследователите Те използваха тази възможност, за да презапишат сегмента от кода на стандартната библиотека на C директно в паметта на хоста. По-конкретно, те инжектираха машинен код във функцията за затваряне на лог файлове, който впоследствие беше изпълнен от легитимна програма с повишени привилегии, незабавно предоставяйки на нападателя абсолютен достъп до системата.

Разпространение на хардуера и мерки за смекчаване

LaОбширните тестове потвърдиха, че тази уязвимост е широко разпространена в съвременния хардуер.Проучването на GDDRHammer оцени 25 графични карти от висок клас, като установи, че 16 от 17-те модела RTX A6000, базирани на архитектурата Ampere, са податливи на тези атаки. Въпреки че паметта с код за коригиране на грешки (ECC) може да намали надеждността на атаката чрез коригиране на еднобитови грешки, тази функция е деактивирана по подразбиране на много карти за работни станции поради намаляване на производителността и напълно липсва в моделите за масовия пазар.

Най-ефективната незабавна защита срещу компрометиране на хоста е приложение на устройство за управление на входно-изходната памет (IOMMU). Когато е активирана, IOMMU ограничава директния достъп на графичния процесор до изрично оторизирани рамки на страници на хоста, неутрализирайки фалшивото отворено мапиране. И двата изследователски екипа обаче отбелязват, че IOMMU често е деактивирана по подразбиране в търговските Linux системи поради причини, свързани със съвместимостта, което прави значителен брой машини уязвими за този вектор на атака.

И накрая, ако се интересувате да научите повече за него, можете да се консултирате с подробностите в следваща връзка.