Исследователи по безопасности представили атаку GPUBreach, которая использует битовые сбои в GDDR6-памяти видеокарт NVIDIA и уязвимости в драйвере для получения доступа к памяти центрального процессора и компрометации ядра операционной системы. В отличие от ранее описанных сценариев GDDRHammer и GeForge, новая техника сохраняет работоспособность даже при включённом IOMMU, который считался надёжным барьером между GPU и хост-системой.
Атака начинается с целенаправленного искажения таблиц страниц GPU за счёт управляемых ошибок в GDDR6. После этого непривилегированный вычислительный модуль CUDA получает произвольный доступ к памяти графического процессора на чтение и запись, что открывает путь к атакам на другие процессы и последующему повышению привилегий. Ключевым этапом является воздействие на аллокатор памяти GPU: повреждая структуры управления, злоумышленник добивается перенаправления доступа к памяти CPU и фактически разрушает границу безопасности между видеокартой и остальной системой.
GDDRHammer ранее рассматривался как способ получить доступ к памяти процессора без прямого повышения привилегий на стороне CPU, а GeForge позволял добиться эскалации прав лишь при отключённом IOMMU. GPUBreach сочетает подходы Rowhammer, адаптированные под архитектуру современных GPU NVIDIA, с недавно обнаруженными ошибками в драйвере, что позволяет перейти от контроля над GPU к захвату ядра ОС на стороне CPU. Авторы характеризуют GPUBreach как наиболее продвинутый из трёх опубликованных сценариев и предупреждают о рисках для систем, использующих совместный доступ к одному GPU в облачных и ИИ-нагрузках.
В ходе экспериментов исследователи протестировали 25 видеокарт NVIDIA на архитектурах Ampere и Ada Lovelace. Уязвимость проявилась не на всех устройствах, но на ряде моделей, включая GeForce RTX 3060 и профессиональную RTX 6000 Ada, были зафиксированы сотни битовых сбоев, достаточных для успешного проведения атаки. NVIDIA рекомендует включать System-Level ECC там, где это возможно, однако специалисты отмечают, что коррекция ошибок помогает лишь при части одиночных битовых сбоев и не является полным решением проблемы. Потребительские GeForce и мобильные GPU, как правило, вообще не имеют доступа к ECC, что повышает риски для массовых систем. Исследователи подчёркивают необходимость доработки механизмов защиты на уровне аппаратуры и программного обеспечения, а также ожидают выпуска обновлений драйверов, призванных закрыть обнаруженные уязвимости.