Blacksmith: un nuevo ataque de tipo RowHammer dirigido a chips DRAM y DDR4

Un grupo de investigadores de la Escuela Técnica Superior Suiza de Zúrich, la Universidad Libre de Ámsterdam y Qualcomm han publicado un nuevo método de ataque RowHammer que altera el contenido de bits individuales de la memoria dinámica de acceso aleatorio (DRAM).

El ataque recibió el nombre en código Blacksmith que se identificó como CVE-2021-42114 y que afecta a muchos chips DDR4, que están protegidos de los métodos previamente conocidos de la clase RowHammer, pero ante esta nueva variante se ven afectados por el problema.

Para quienes desconocen de la clase de ataque que es RowHammer, les puedo decir que este permiten distorsionar el contenido de bits individuales de memoria leyendo cíclicamente datos de celdas de memoria vecinas. Dado que la DRAM es una matriz bidimensional de celdas, cada una de las cuales consta de un capacitor y un transistor, realizar lecturas continuas en la misma área de memoria da como resultado fluctuaciones de voltaje y anomalías, lo que provoca una pequeña 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 próximo ciclo de regeneración no tendrá tiempo para restaurar su estado original, lo que conducirá a un cambio en el valor de los datos almacenados en la celda.

Para protegerse contra RowHammer, los fabricantes de chips propusieron un mecanismo TRR (Target Row Refresh), que protege contra la corrupción de celdas en filas adyacentes, pero como la protección se basaba en el principio de «seguridad por oscuridad», no resolvió el problema en la raíz, pero protegido solo de casos especiales conocidos, lo que facilitó la búsqueda de formas de eludir la protección. Por ejemplo, en mayo, Google propuso el método Half-Double, que no se vio afectado por la protección TRR, ya que el ataque afectó células que no estaban directamente adyacentes al objetivo.

El nuevo método de Blacksmith ofrece una forma diferente de eludir la protección TRR, basada en un tratamiento no homogéneo con frecuencias diferentes a dos o más cadenas agresoras para causar fugas de carga.

Para determinar el patrón de acceso a la memoria que conduce al calor de carga, se ha desarrollado un fuzzer especial, que selecciona automáticamente los parámetros de ataque para un chip en particular, variando el orden, la intensidad y la sistematización del acceso a las celdas.

Tal enfoque, que no está asociado con la exposición a las mismas celdas, hace que los métodos actuales de protección TRR sean ineficaces, que de una forma u otra se reducen a contar el número de llamadas repetidas a las celdas y, al alcanzar ciertos valores, iniciar la recarga. de celdas vecinas. En Blacksmith, el patrón de acceso se distribuye en varias celdas a la vez en diferentes lados del objetivo, lo que permite la fuga de carga sin alcanzar los valores de umbral.

El método resultó ser mucho más efectivo que los métodos propuestos anteriormente para eludir TRR: los investigadores lograron lograr una distorsión de bits en los 40 chips de memoria DDR4 diferentes comprados recientemente de Samsung, Micron, SK Hynix y un fabricante desconocido (el fabricante fue no especificado en 4 fichas). A modo de comparación, el método TRRespass propuesto previamente por los mismos investigadores resultó ser efectivo solo para 13 de los 42 chips probados en ese momento.

En términos generales, se supone que el método Blacksmith es aplicable al 94% de todos los chips DRAM del mercado, pero según los investigadores, algunos chips son más vulnerables y más fáciles de atacar que otros. El uso de códigos de corrección de errores (ECC) y la duplicación de la frecuencia de actualización en los chips no brinda una protección completa, pero complica la operación.

Es de destacar que el problema no se puede bloquear en chips ya lanzados y requiere la implementación de una nueva protección a nivel de hardware, por lo que el ataque seguirá siendo relevante durante muchos años.

Como ejemplos prácticos, los métodos de usar Blacksmith para cambiar el contenido de las entradas en la tabla de páginas de memoria (PTE, entrada de la tabla de páginas) para obtener privilegios del kernel, dañan la clave pública RSA-2048 almacenada en la memoria en OpenSSH (puede traer la clave pública en una máquina virtual ajena para que coincida con la clave privada del atacante para conectarse a la máquina virtual de la víctima) y omitir la verificación de autorización modificando la memoria del proceso sudo para obtener privilegios de root. Dependiendo del chip, cambiar un bit objetivo toma entre 3 segundos y varias horas para que se produzca el ataque.

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


Deja tu comentario

Tu dirección de correo electrónico no será publicada. Los campos obligatorios están marcados con *

*

*

  1. Responsable de los datos: AB Internet Networks 2008 SL
  2. Finalidad de los datos: Controlar el SPAM, gestión de comentarios.
  3. Legitimación: Tu consentimiento
  4. Comunicación de los datos: No se comunicarán los datos a terceros salvo por obligación legal.
  5. Almacenamiento de los datos: Base de datos alojada en Occentus Networks (UE)
  6. Derechos: En cualquier momento puedes limitar, recuperar y borrar tu información.