¿Cómo se puede vulnerar un servidor industrial a través de su GPU sin dejar rastro? Un ataque tan complejo y en gran medida teórico suele aprovechar las vulnerabilidades del hardware. Ni siquiera se trata de fallos de diseño en el propio hardware, sino de peculiaridades en su funcionamiento —a veces a nivel físico—.Un artículo reciente de investigadores canadienses de la Universidad de Toronto describe GPUThor, un nuevo y más eficaz ataque de tipo “Rowhammer” que aprovecha precisamente este tipo de comportamiento del hardware en la memoria de vídeo.
Rowhammer y las tarjetas gráficas
GPUThor se basa en la idea detrás del ataque original a la RAM, propuesto por primera vez en 2014 en la investigación sobre Rowhammer. Rowhammer y todos los ataques de su tipo se basan en un hecho sencillo: las celdas de memoria no están totalmente aisladas unas de otras. Acceder repetidamente (martillear) a la misma fila de celdas puede, en determinadas condiciones, corromper los datos (es decir, invertir bits) en las filas vecinas. Una vez que se confirma que ese efecto es posible, solo queda encontrar la forma de utilizarlo como arma —por ejemplo, provocando una denegación de servicio o incluso ejecutando código arbitrario—.
Entonces, ¿qué tienen que ver los servidores y los aceleradores gráficos con todo esto? A medida que las tecnologías de inteligencia artificial han despegado, también lo ha hecho la demanda de hardware capaz de ejecutar un gran número de cálculos paralelos y similares. Y los aceleradores integrados en las tarjetas gráficas para videojuegos se adaptan perfectamente a este tipo de carga de trabajo. Esto convierte a los proveedores de servicios en la nube que alquilan aceleradores gráficos a todo el que los solicite en un objetivo atractivo para los ataques Rowhammer.
El escenario hipotético es el siguiente: un atacante compra acceso a un chip gráfico y lo utiliza para intentar comprometer toda la infraestructura del proveedor. Precisamente por eso, los ataques a la memoria de vídeo siguen siendo un tema de especial interés para los investigadores.
Cómo funciona el ataque GPUThor
En la primavera de este año se publicaron tres nuevos artículos, cada uno de los cuales describía un ataque diferente contra los aceleradores de Nvidia equipados con memoria GDDR6. Los tres arrojaron resultados bastante modestos: el mayor daño se produjo cuando el objetivo era una tarjeta gráfica de consumo, mientras que los ataques contra un acelerador industrial como el Nvidia A6000 resultaron ser mucho menos efectivos. Además, ninguno de los ataques funcionó con la protección de memoria ECC (código de corrección de errores) activada.
GPUThor también analiza la posibilidad de atacar los aceleradores Ampere más antiguos de Nvidia con memoria GDDR6: los investigadores estudiaron los modelos A4000, A4500, A5000 y A6000. Pero la efectividad del nuevo método, medida por la cantidad de celdas cuyos datos fueron alterados por la fuerza, es significativamente mayor. Los investigadores también argumentan que, en teoría, la técnica también podría aplicarse a aceleradores más nuevos.

Efectividad de GPUThor en comparación con los ataques anteriores. Fuente .
¿Cómo se lograron estos resultados? El mecanismo de defensa estándar contra los ataques Rowhammer se denomina Target Row Refresh (TRR), que los investigadores canadienses analizaron en mayor profundidad.
Resulta que, si el TRR detecta intentos de acceso repetidos, fuerza una actualización de las celdas vecinas, lo que dificulta o imposibilita la corrupción de los datos. Los atacantes suelen intentar burlar el TRR accediendo a las celdas de forma aleatoria, lo que confunde al sistema de defensa y reduce su eficacia. Los investigadores descubrieron que en las tarjetas Nvidia Ampere, el TRR solo se activa una vez cada 72 ciclos de actualización de la celda de memoria. Aprovechando este hallazgo, aplicaron un patrón de acceso irregular, atacando las celdas objetivo de forma mucho más agresiva que antes. El resultado: tomando como referencia el ataque GDDR original conocido como GPUHammer, GPUThor resulta ser entre 7 000 y 23 000 veces más eficaz.
Resultados y perspectivas
La combinación de este patrón de ataque más agresivo con otras mejoras generó entre 72 000 y 377 000 cambios de bits por gigabyte. Las variantes anteriores de Rowhammer alcanzaban, como mucho, unos pocos cientos. Esto permitió a los investigadores provocar errores de doble e incluso triple bit. El ECC corrige fácilmente un error de un solo bit, pero no uno de doble bit.
El nuevo método también pone de manifiesto el daño real que podría causar un ataque Rowhammer: el acceso repetido a la memoria de vídeo mediante GPUThor provoca una denegación de servicio. El acelerador se reinicia primero, perdiendo datos en el proceso, y a continuación avisa al administrador de que es necesario sustituirlo.
A pesar de estos impresionantes resultados de investigación, los ataques de GPUThor no tienen éxito. Por un lado, los investigadores no pudieron demostrar la ejecución de código arbitrario como consecuencia de la corrupción de datos, aunque afirman que esto es posible incluso con la ECC activada. Por otro lado, un ataque miles de veces más eficaz apunta a la posibilidad teórica de comprometer también los aceleradores más recientes, pero esto tampoco se ha demostrado por el momento.
Aun así, los investigadores canadienses han demostrado que los ataques Rowhammer contra las tarjetas gráficas aún tienen un potencial sin explotar. No sería de extrañar que futuras investigaciones pusieran de manifiesto ataques similares contra dispositivos mucho más avanzados que antes se consideraban altamente resistentes a ellos.
vulnerabilidades