
Hay descubrimientos que levantan cejas, y otros que directamente hacen sonar todas las alarmas. Lo que acaba de lograr un equipo de investigadores entra de lleno en la segunda categoría: por primera vez, un ataque Rowhammer ha conseguido alterar con éxito la memoria de vídeo GDDR6 de una GPU, y no una cualquiera, sino la potente NVIDIA A6000. ¿El nombre del ataque? GPUHammer. Y sí, suena tan contundente como los efectos que puede provocar.
¿Qué es Rowhammer y por qué importa tanto?
Para entender la magnitud del hallazgo, necesitamos retroceder unos años. Allá por 2014 se descubrió una vulnerabilidad en la DRAM convencional que causó un verdadero revuelo: Rowhammer. ¿En qué consiste? En términos simples, si accedes de forma muy intensiva y repetida a una misma fila de memoria, puedes inducir cambios en las filas vecinas. Es como golpear un clavo con tanta fuerza que se tambalean los que están al lado. Un solo bit alterado en el momento justo… y todo se desmorona.
Esta técnica fue estudiada a fondo en memorias DDR3, DDR4 y LPDDR4, todas asociadas a CPUs. Pero llevarla al terreno de las GPUs —y en concreto, a la memoria GDDR6— parecía imposible. ¿La razón? Una combinación de obstáculos técnicos:
-
La latencia de acceso es hasta cuatro veces mayor que en la DRAM de las CPUs.
-
Las frecuencias de refresco son más altas.
-
Las celdas de memoria están distribuidas de forma más compleja.
-
Y por si fuera poco, hay mecanismos propietarios de protección, como TRR, que nadie fuera del fabricante entiende del todo.
Todo esto pintaba un panorama claro: aplicar Rowhammer en una GPU era un sueño lejano... hasta ahora.
GPUHammer: martillando bits con precisión quirúrgica
Lo que han conseguido estos investigadores no es un simple truco. Es un trabajo meticuloso, fruto de ingeniería inversa, mucha creatividad y un dominio profundo de cómo funcionan las GPU por dentro.
Utilizando código CUDA de bajo nivel, desarrollaron una técnica que logra acceder repetidamente a ciertas celdas de memoria hasta ponerlas al límite. La clave estuvo en organizar una computación paralela extremadamente eficiente: múltiples hilos y warps trabajando como un martillo sincronizado, golpeando sin cesar. Y todo sin que el sistema se dé cuenta.
Además, pudieron mapear la relación entre la memoria virtual y la física —algo nada trivial en CUDA—, identificar los bancos de DRAM adecuados y diseñar accesos altamente optimizados para maximizar la presión sin penalizar el rendimiento.
El resultado: lograron invertir bits dentro de la memoria GDDR6 de forma controlada. Nada de pruebas en el aire. Esto funcionó en una GPU real, con consecuencias muy concretas.
Un solo bit puede arruinarlo todo
Uno de los aspectos más inquietantes de GPUHammer es su efecto sobre modelos de inteligencia artificial. En su prueba de concepto, los investigadores mostraron cómo una sola inversión de bit en los pesos de una red neuronal profunda (DNN) —concretamente en los exponentes FP16— puede llevar la precisión de un modelo de clasificación de imágenes del 80 % al 0,1 %.
Sí, has leído bien. Una precisión de nivel profesional convertida en un desastre absoluto… por un único bit. No hace falta imaginar demasiado para ver el riesgo: en entornos de computación compartida, un usuario malicioso podría afectar los resultados o datos de otro sin siquiera tocar su código.
En un mundo donde los modelos de IA se ejecutan cada vez más en GPUs compartidas en la nube, este tipo de ataque es una auténtica bomba de relojería.
¿Cómo podemos defendernos?
NVIDIA no tardó en responder. Confirmaron la vulnerabilidad y recomendaron habilitar el soporte ECC (Error-Correcting Code) usando el comando:
nvidia-smi -e 1
Esto puede corregir errores de un solo bit, lo cual es útil... pero no infalible. El ECC tiene un coste: hasta un 10 % menos de rendimiento y una reducción del 6,25 % en la memoria disponible. Además, no protege contra escenarios más complejos, donde varios bits cambian a la vez.
Y aquí viene otra revelación importante: GPUHammer solo se ha validado en la NVIDIA A6000 con GDDR6. Otras tarjetas, como la RTX 3080, no mostraron signos de vulnerabilidad, posiblemente por diferencias en el diseño del chip, el proveedor de DRAM o incluso las condiciones térmicas. Tampoco se observaron efectos en la A100, que utiliza memoria HBM.
Pero cuidado: que no se haya observado no significa que sea imposible. El ataque es extensible, y los propios investigadores animan a la comunidad a replicarlo en diferentes arquitecturas.
¿Y ahora qué?
Lo cierto es que GPUHammer deja muchas preguntas en el aire. ¿Cuántas otras GPUs podrían estar expuestas? ¿Se pueden diseñar contramedidas más eficientes que no sacrifiquen rendimiento? ¿Hasta qué punto puede un ataque de este tipo ser usado en entornos reales?
Una cosa está clara: la seguridad del hardware gráfico ya no puede darse por sentada. Este ataque nos recuerda que, más allá del software, los componentes físicos que usamos para entrenar y ejecutar modelos de IA también tienen grietas. Y algunas, como en este caso, son tan pequeñas como un bit… pero lo suficientemente profundas como para quebrar la confianza en todo un sistema.
GPUHammer no es solo un avance técnico; es una advertencia. Un aviso de que los sistemas que creemos robustos pueden fallar por los motivos más microscópicos. Un recordatorio de que, en un mundo cada vez más dependiente de la inteligencia artificial y la computación acelerada, la seguridad no puede dejar fuera al hardware.
Este ataque ha abierto una puerta que creíamos cerrada. Y ahora que está entreabierta, toca mirar de frente, con atención y sin pánico, lo que hay al otro lado.
Porque a veces, un pequeño martillo puede hacer temblar a un gigante.
Fuente: LinuxOS
Añadir comentario
Comentarios