GPU Rowhammer на Ampere: когда GDDR бьет по host-памяти

Исследователи показали GPU Rowhammer на NVIDIA Ampere: bit flips в GDDR могут привести к компрометации host при отключенном IOMMU.

2026-05-12 GIGATAP Team #privacy
#GPU security#Rowhammer#NVIDIA

Новый результат исследования выводит fault-атаки в стиле Rowhammer на GPU на более практически значимый уровень: bit flips в GPU-памяти GDDR могут быть использованы для получения контроля над CPU memory и полной компрометации host-системы — по крайней мере при определенных условиях конфигурации.

В кратком изложении Schneier описаны две независимые исследовательские группы, которые продемонстрировали атаки на две карты NVIDIA поколения Ampere. Ключевой тезис здесь не просто в том, что «GPU memory можно повредить», а в том, что возникшую corruption можно превратить в «полный контроль над CPU memory», что ведет к полной компрометации host-машины.

Сразу важная оговорка: описанная атака требует, чтобы memory management на базе IOMMU был отключен. В посте отмечается, что это значение по умолчанию в BIOS settings. Эта деталь меняет практическую оценку риска: вопрос не только в том, уязвим ли GPU в абстрактном смысле, но и в том, насколько часто соответствующая platform isolation реально включена в production-средах.

Что известно из источника#

На основе информации, приведенной в исходном материале:

  • Две исследовательские группы работали независимо и продемонстрировали атаки.
  • Демонстрации были нацелены на две карты NVIDIA поколения Ampere.
  • Техника описывается как «GPU rowhammering», вызывающий bit flips в GDDR.
  • Эти bit flips можно использовать для получения полного контроля над CPU memory, что приводит к полной компрометации host.
  • Атака требует, чтобы IOMMU memory management был отключен; в посте говорится, что отключенное состояние является default BIOS configuration.
  • Цитируемый исследователь Andrew Kwong, соавтор одной из работ, формулирует более широкий вывод: Rowhammer хорошо изучен на CPU, а их работа показывает, что он также является серьезной угрозой для GPU.

Краткое изложение источника короткое и не содержит дополнительных деталей, которые обычно нужны для оценки риска: например, требует ли атака local code execution, какие privileges нужны для запуска hammering workload, какие конкретные models тестировались или какие mitigations существуют на уровне firmware/driver. Эти пробелы важны, и любые выводы за пределами пунктов выше следует считать недоказанными, пока вы не прочитаете исходные papers.

Почему это важно для эксплуатации#

Rowhammer — не новая тема. Здесь меняет картину пересечение границы между компонентами.

Классические обсуждения Rowhammer часто остаются внутри memory model одного компонента: «нагрузить DRAM, вызвать bit flips, повредить соседние данные». Из исходного материала следует, что faults в памяти, подключенной к GPU, могут быть повышены до corruption в CPU memory таким образом, что это дает полную компрометацию системы. Иными словами: GPU — это не просто accelerator; он становится путем к host.

Это важно, потому что доступ к GPU широко распространен и все чаще используется совместно:

  • Workstations и servers обычно запускают сложные GPU workloads, предоставленные третьими сторонами: plugins, models, pipelines.
  • Multi-tenant environments и shared infrastructure часто зависят от строгой I/O isolation, чтобы один workload не мог повлиять на другой.
  • Даже в single-tenant systems команды часто предполагают, что «GPU jobs достаточно sandboxed» по сравнению с прямым kernel-level access.

Деталь с IOMMU — ключевой операционный фактор. IOMMU является одной из основных линий защиты, ограничивающих то, что devices и device-facing drivers могут делать с host memory. Если соответствующие IOMMU protections отключены — и если это действительно распространено из-за defaults, — то security posture для «GPU workloads» начинает выглядеть ближе к «privileged device interaction with the host».

Это также напоминание о том, что проблемы «hardware-class» редко существуют только в hardware. Реальная exposure зависит от defaults, BIOS/UEFI configuration, kernel/driver settings и от того, насколько untrusted code контролирует workloads, способные интенсивно нагружать device.

Чего пока не стоит утверждать#

С учетом ограниченного excerpt есть несколько вещей, которые не следует предполагать:

  • Не следует считать, что затронуты все Ampere GPUs. Источник говорит о «двух картах поколения NVIDIA Ampere», но не обобщает выводы за пределы этих демонстраций.
  • Не следует предполагать remote exploitation. Excerpt не уточняет access model: local user, container, VM guest и т. д.
  • Не следует считать, что exploit уже есть «in the wild» или что атака сейчас активно используется. В источнике нет ничего, что это подтверждает.
  • Не следует предполагать наличие конкретной mitigation или, наоборот, ее отсутствие. Excerpt утверждает только зависимость от отключенного IOMMU.
  • Не следует считать, что default state одинаков на всех platforms. В посте говорится, что IOMMU отключен по умолчанию в BIOS settings, но BIOS defaults могут отличаться в зависимости от vendor, platform class и generation.

Правильное прочтение более узкое: исследователи продемонстрировали технику GPU Rowhammer с impact в виде host compromise в среде, где IOMMU protections не включены.

Практические проверки и выводы#

Практический takeaway для владельцев GPU-инфраструктуры: относитесь к отключенному IOMMU как к security misconfiguration, а не как к нейтральному performance/default setting. Если на host запускаются чужие, пользовательские или просто непроверенные GPU workloads, включенный и реально работающий IOMMU должен быть обязательным baseline-контролем.

Что стоит сделать в первую очередь:

  • Инвентаризируйте GPU hosts, особенно NVIDIA Ampere systems, ML/AI servers, render nodes, CI/CD runners, research workstations и любые shared GPU machines.
  • Проверьте BIOS/UEFI settings: включены ли IOMMU, Intel VT-d или AMD-Vi в зависимости от платформы.
  • Убедитесь, что ОС действительно использует IOMMU, а не просто видит включенную настройку в firmware. Для Linux проверьте boot logs и kernel parameters, связанные с DMAR, IOMMU и device isolation.
  • Зафиксируйте включенный IOMMU как policy requirement для систем, где GPU доступен контейнерам, пользователям, batch jobs, notebook-средам, ML pipelines или third-party code.
  • Не полагайтесь только на container boundaries в multi-tenant GPU-средах: контейнер не заменяет device isolation. Проверьте всю цепочку — firmware, kernel, NVIDIA driver, runtime, scheduler и настройки passthrough/MIG/virtualization, если они используются.
  • Ограничьте доступ недоверенных workloads к GPU на системах, где IOMMU не подтвержден или не может быть включен без регресса совместимости.
  • Обновляйте BIOS/UEFI, GPU firmware и drivers в соответствии с vendor guidance, но не считайте обновление заменой проверки IOMMU, пока advisory явно этого не утверждает.
  • Следите за полными papers и vendor advisories: именно там должны появиться точные affected models, prerequisites, exploitability details и рекомендуемые mitigations.

Главный вывод: риск определяется не только моделью GPU, но и тем, включена ли host-side isolation. Для практической защиты самый немедленный шаг — проверить и включить IOMMU на GPU hosts, особенно там, где GPU workloads не полностью доверенные. Если IOMMU выключен, GPU-задачи могут оказаться намного ближе к host memory, чем предполагает ваша threat model.