Ataques RowHammer en GPU: GPUBreach, GDDRHammer y GeForge abren una nueva superficie de ataque

CyberSecureFox

Las últimas investigaciones académicas en ciberseguridad han demostrado que las GPU de alto rendimiento con memoria GDDR6 son vulnerables a una nueva generación de ataques RowHammer en GPU. Estos ataques, bautizados como GPUBreach, GDDRHammer y GeForge, no solo permiten corromper datos en la memoria de vídeo, sino que pueden conducir a una escalada de privilegios completa hasta el control del sistema host.

Qué es RowHammer y por qué ahora afecta de lleno a las GPU

RowHammer es un fallo de fiabilidad en memorias DRAM que se explota mediante el martilleo (accesos repetidos y muy rápidos) a una misma fila de memoria. Este patrón provoca interferencias eléctricas que generan cambios de bits (bit-flips) en filas adyacentes. El resultado es una violación directa del principio de aislamiento de memoria, pilar básico de los sistemas operativos modernos y de las arquitecturas de virtualización.

Durante años se asumió que las GPU modernas y mecanismos como ECC o las rutinas de refresco de memoria hacían poco realistas estos ataques. Sin embargo, trabajos previos como GPUHammer ya evidenciaron un ataque RowHammer práctico contra GPU NVIDIA con GDDR6, capaz de degradar la precisión de modelos de aprendizaje automático hasta en un 80 %. Las nuevas investigaciones dan un paso más: convierten la corrupción de bits en un vector directo de compromiso de seguridad.

GPUBreach: de fallos en GDDR6 a privilegios de root en el host

Manipulación de las tablas de páginas de la GPU mediante RowHammer

El ataque GPUBreach demuestra que es posible inducir fallos de bits dirigidos en memoria GDDR6 para alterar estructuras críticas de gestión de memoria, en concreto las tablas de páginas de la GPU. De este modo, un proceso con bajos privilegios puede obtener acceso arbitrario de lectura y escritura a la memoria de la GPU.

La clave está en apuntar a las page table entries (PTE), responsables de definir qué regiones de memoria pertenecen a cada contexto de ejecución en la GPU. Al modificar ciertos bits de estas entradas, el atacante puede reasignar páginas de memoria y ampliar silenciosamente sus permisos, rompiendo el modelo de aislamiento previsto por el driver.

Elusión del IOMMU y escalada de privilegios al espacio del kernel

Un aspecto especialmente crítico de GPUBreach es que funciona incluso con el IOMMU activado, un componente hardware diseñado para aislar dispositivos y mitigar ataques DMA. Aprovechando las PTE corrompidas, la GPU emite operaciones de acceso directo a memoria (DMA) hacia zonas de RAM del host que el IOMMU considera legítimas, como los búferes del propio driver de NVIDIA.

Al corromper el estado interno de confianza del driver, los investigadores consiguen provocar errores de gestión de memoria en el kernel y derivarlos en un primitivo de escritura arbitraria en el espacio del núcleo. Esta cadena de explotación permite escalar privilegios hasta root y obtener una shell con permisos de kernel, transformando una simple tarea en GPU en un compromiso total del sistema.

Robo de claves criptográficas y sabotaje de modelos de IA

Además de la escalada de privilegios, GPUBreach puede emplearse para extraer claves criptográficas confidenciales, por ejemplo de librerías aceleradas por GPU como NVIDIA cuPQC. También permite modificar de forma selectiva los parámetros de modelos de IA en ejecución, degradando su precisión o introduciendo sesgos. El impacto alcanza así a la confidencialidad y la integridad de los datos y modelos en entornos con aceleración hardware.

Impacto en nubes de IA, GPU compartidas y entornos HPC

Estas vulnerabilidades tienen implicaciones directas para servicios de IA en la nube, plataformas de GPU multiusuario e infraestructuras HPC. En estos escenarios, un mismo acelerador físico se comparte entre múltiples clientes, por lo que la separación lógica de recursos es crítica.

Si un atacante obtiene acceso a una GPU compartida (por ejemplo, mediante el alquiler de un instance con GPU en un proveedor cloud), un ataque exitoso tipo GPUBreach, GDDRHammer o GeForge puede permitirle:

  • leer o modificar datos y modelos de otros inquilinos alojados en la misma GPU;
  • obtener acceso a regiones de memoria del host, incluidas zonas que contienen claves de cifrado y secretos de infraestructura;
  • escalar el ataque hacia nodos de control, sistemas de orquestación y otros componentes críticos de la plataforma.

Diferencias entre GPUBreach, GDDRHammer y GeForge

Las tres técnicas se basan en corromper las tablas de páginas de la GPU mediante RowHammer en GDDR6, pero difieren en su alcance y requisitos.

GDDRHammer se centra en modificar el campo aperture de las PTE de la GPU, de manera que un kernel CUDA sin privilegios pueda leer y escribir en toda la memoria del host. Proporciona un potente primitivo de acceso a memoria, aunque no siempre deriva en una escalada total a root.

GeForge ataca el último nivel del directorio de páginas (PD0) para subvertir el mapeo de direcciones y conseguir acceso arbitrario a memoria tanto de la GPU como del host. Su principal limitación es la necesidad de que el IOMMU esté desactivado, lo que reduce su viabilidad en entornos endurecidos.

GPUBreach se posiciona como el escenario más grave porque: (i) opera con IOMMU activado, explotando la confianza depositada en el driver; (ii) proporciona escalada completa de privilegios en CPU además del control de memoria; y (iii) combina en un único vector robo de secretos, sabotaje de modelos de IA y toma de control del sistema.

Medidas de mitigación y retos de defensa en GPU modernas

Una respuesta inmediata es activar ECC en las GPU que lo soporten. No obstante, estudios previos como ECCploit y ECC.fail han evidenciado que ECC no es una defensa absoluta frente a RowHammer: cuando se inducen múltiples fallos de bits en una misma palabra de memoria, los esquemas de corrección pueden quedar sobrepasados e incluso introducir corrupción silenciosa.

En GPU de escritorio y portátiles, donde ECC suele no estar disponible, actualmente no existen mecanismos de protección robustos contra este tipo de ataques. En centros de datos y nubes públicas, las organizaciones deberían considerar estrategias adicionales:

  • limitar el uso compartido de GPU entre inquilinos con distintos niveles de confianza y reforzar la segregación de cargas de trabajo;
  • mantener un ciclo riguroso de actualización de drivers y firmware de GPU, aplicando de forma temprana los parches de seguridad del fabricante;
  • implantar monitorización de patrones anómalos de acceso a memoria, capaz de detectar comportamientos compatibles con RowHammer;
  • incorporar verificaciones adicionales de integridad sobre estructuras críticas como tablas de páginas y metadatos de asignación de memoria.

La aparición de GPUBreach, GDDRHammer y GeForge confirma que las GPU han dejado de ser meros aceleradores para convertirse en una pieza central del modelo de amenaza. Las organizaciones que utilizan GPU para IA, criptografía o cómputo intensivo deberían revisar ya sus arquitecturas, actualizar sus modelos de riesgo e impulsar pruebas de seguridad específicas sobre sus clústeres de aceleración. Anticiparse a esta nueva clase de ataques RowHammer en GPU reducirá significativamente la probabilidad de que la próxima brecha de seguridad entre por la puerta de un coprocesador gráfico mal protegido.

Deja un comentario

Este sitio usa Akismet para reducir el spam. Aprende cómo se procesan los datos de tus comentarios.