Centauri, un metodo basado en Rowhammer para generar fingerprints Ășnicos

vulnerabilidad

Si se explotan, estas fallas pueden permitir a los atacantes obtener acceso no autorizado a informaciĂłn confidencial o, en general, causar problemas

Hace poco, un grupo de investigadores de la Universidad de California en Davis analizĂł la posibilidad de utilizar Rowhammer (el mĂ©todo de corrupciĂłn de bits DRAM), para generar fingerprints Ășnicos.

Durante su anĂĄlisis mencionan que se percataron que la naturaleza de las distorsiones resultantes del ataque Rowhammer es Ășnica para cada instancia del chip DRAM y no cambia con el tiempo. Como resultado se desarrollĂł la tĂ©cnica Centauri, que permite identificar sistemas con una precisiĂłn promedio del 99,91%.

Para generar un identificador en Centauri basta con ejecutar el código durante unos segundos o minutos. A costa de una ligera disminución en la precisión (en 0,64), la identificación se puede realizar con una reducción del 95 % al rededor de 9.92 segundos. La mayor precisión se logra cuando se verifica durante unos tres minutos.

La identificaciĂłn se realiza en tres etapas:

  • Utilizando el mĂ©todo Blacksmith (variante RowHammer) para determinar la estrategia de protecciĂłn (TRR) utilizada en el chip contra la distorsiĂłn de las celdas de memoria
  • EjecuciĂłn de cĂłdigo que conduce a la apariciĂłn de distorsiones
  • DeterminaciĂłn de la posiciĂłn relativa y el nĂșmero de condensadores que han cambiado el valor de la carga.

El identificador se forma sobre la base de construir una distribuciĂłn empĂ­rica de la probabilidad de cambiar la carga de los capacitores en un bloque de memoria de 2 megabytes.

Para quienes desconocen de los ataques de la clase RowHammer, deben saber que estos permiten distorsionar el contenido de bits individuales de memoria mediante la lectura cĂ­clica de datos de celdas de memoria vecinas.

«Centauri es la primera tĂ©cnica para demostrar la extracciĂłn de fingerprints Ășnicos y estables a la mayor escala utilizando Rowhammer mientras se superan las limitaciones prĂĄcticas impuestas por el sistema operativo y por las mitigaciones de Rowhammer como TRR»

Dado que la memoria DRAM es una matriz bidimensional de celdas, cada una de las cuales consta de un condensador y un transistor, realizar una lectura continua de la misma årea de memoria da como resultado fluctuaciones de voltaje y anomalías que provocan una ligera pérdida de carga en las celdas vecinas. Si la intensidad de lectura es alta, entonces la celda vecina puede perder una cantidad suficientemente grande de carga y el siguiente ciclo de regeneración no tendrå tiempo de restaurar su estado original, lo que provocarå un cambio en el valor de los datos almacenados en la celda.

El proceso de fabricaciĂłn de chips es heterogĂ©neo, por lo que cada chip de memoria es Ășnico en su estructura fĂ­sica debido a las tolerancias que se producen. Tales desviaciones llevan al hecho de que la distribuciĂłn de probabilidad de la distorsiĂłn de bits causada por el ataque Rowhammer tambiĂ©n es Ășnica para cada mĂłdulo de memoria fabricado, que es lo que aprovecharon los creadores del mĂ©todo Centauri.

El mecanismo TRR (Target Row Refresh) utilizado por los fabricantes de memorias, que protege contra los ataques de Rowhammer al bloquear la distorsión de las celdas en las filas adyacentes, no afecta la precisión de la identificación por el método Centauri.

En el aspecto pråctico, el método se puede utilizar, por ejemplo, para detectar la sustitución de equipos o para identificar sistemas en los que una computadora finge ser varios dispositivos diferentes. Al mismo tiempo, es poco probable que el método vaya mås allå del alcance de la investigación académica, ya que cuando se usa, se observa un mayor desgaste de los chips de memoria y pueden ocurrir fallas de software debido a distorsiones en los contenidos de las celdas.

No se excluye que el método se pueda adaptar para que funcione en un navegador para identificar a los visitantes del sitio web, utilizando como base una implementación previamente preparada de Rowhammer en JavaScript.

El método ha sido probado en unos 98 módulos DRAM (6 juegos de chips idénticos de dos fabricantes). Los experimentos repetidos realizados dentro de los 10 días no revelaron una disminución en la precisión de la identificación.

Finalmente, si estĂĄs interesado en poder conocer mĂĄs al respecto, puedes consultar los detalles en el siguiente enlace.