Desde Linux Darkcrizt  

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.

Leave A Comment

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