Se puede abusar de las tarjetas FPGA para ataques Rowhammer más rápidos y confiables


jackhammer.png

Imagen: ZDNet, Priyanka del Noun Challenge

En un nuevo trabajo de investigación publicado el último día de 2019, un equipo de académicos estadounidenses y alemanes ha demostrado que se puede abusar de las tarjetas de matriz de puertas programables en campo (FPGA) para lanzar ataques Rowhammer mejores y más rápidos.

La nueva investigación amplía el trabajo anterior en un vector de ataque conocido como Rowhammer.

Una breve historia de los ataques de Rowhammer

Los ataques de Rowhammer se detallaron por primera vez en 2014. El ataque explota una falla de diseño en las tarjetas de memoria modernas de hardware, más comúnmente conocidas como RAM.

En las tarjetas RAM modernas, los datos se almacenan dentro de las celdas de memoria, y todas las celdas de memoria están dispuestas en un patrón de cuadrícula. En 2014, los académicos descubrieron que al leer los datos almacenados en una fila de celdas de memoria repetidamente y a altas velocidades, podían crear una carga eléctrica que alteraría los datos almacenados en las filas de memoria cercanas.

Al coordinar operaciones de lectura repetidas, en una operación llamada «martilleo de filas», podrían usar las cargas eléctricas no deseadas para corromper los datos de RAM o manipular los datos del usuario de manera maliciosa.

Después de que se divulgó al público, los expertos de la industria consideraron que el ataque de Rowhammer period solo una amenaza teórica, pero que tenía el potencial de convertirse en un problema mayor más adelante.

Los expertos creían que si bien el ataque inicial de Rowhammer parecía ineficiente para alterar o corromper los datos, los académicos eventualmente encontrarían nuevas formas de lanzar ataques de Rowhammer y mejorar el daño que el ataque podría causar.

Los vendedores de RAM reaccionaron modificando los diseños de las tarjetas RAM e introduciendo mitigaciones de software para hacer frente al daño potencial que podría provenir de un futuro ataque potencial de Rowhammer.

Tal como se predijo inicialmente, en los últimos cinco años, los académicos se han expandido enormemente en el ataque inicial de Rowhammer. Encontraron formas de evitar las mitigaciones, expandieron la superficie de ataque a varios componentes y configuraciones de la computadora, e incluso encontraron una manera de usar Rowhammer para robar datos de los sistemas atacados, en lugar de simplemente alterarlos. A continuación se muestra un resumen de todo el trabajo realizado con los ataques de Rowhammer.

Nuevo ataque JackHammer

La última incorporación a esta lista es una nueva variación de ataque de Rowhammer llamada JackHammer, que permite a una parte maliciosa abusar de las tarjetas FPGA para lanzar ataques Rowhammer mejores y más rápidos.

Para aquellos que no están familiarizados con el término, FPGAs son tarjetas adicionales que se pueden agregar a un sistema informático (escritorio o servidor). Son componentes informáticos diseñados para optimizar el rendimiento al permitir que el usuario lo personalice según sus necesidades, y a veces se los denomina «aceleradores».

Los FPGA a menudo se usan con sistemas diseñados para ejecutar tareas muy específicas, como minería de criptomonedas, servidores website, sistemas de computación pesados, etcetera.

En los últimos años, los FPGA han llegado a entornos de computación en la nube donde ahora son una oferta común. Empresas como Nube Alibaba y Servicios web de Amazon (AWS) Proporcionar a los clientes instancias de servidor basadas en FPGA para que los clientes puedan optimizar el rendimiento para tareas específicas. Microsoft es también trabajando en la integración de tecnología basada en FPGA dentro de Azure.

Al ver que las arquitecturas FPGA-CPU se están volviendo más comunes, un equipo de investigadores del Instituto Politécnico Worcester en los EE. UU., La Universidad de Lübeck en Alemania e Intel, han investigado cómo los ataques de Rowhammer afectan esta nueva configuración de la nube.

Descubrieron que cuando el código de ataque se inicia desde un FPGA configurado por el usuario, los ataques de Rowhammer son más eficientes para causar cambios de bits y lo hacen a una velocidad más rápida que si el ataque se iniciara utilizando código malicioso ejecutado dentro de la CPU, como es cómo funcionan todos los demás ataques de Rowhammer.

Esto se debe a que las tarjetas FPGA se conectan directamente al bus de un procesador, lo que brinda acceso directo y sin ataduras a la memoria caché de la CPU y la memoria RAM. Además, los FPGA no tienen que lidiar con el firmware y el software del sistema operativo, lo que le permite ejecutar código más rápido que una CPU ordinary.

El doble de rápido, cuatro veces más cambios de bits

«En un ataque de Rowhammer, un element significativo en la velocidad y eficacia de un ataque es la velocidad a la que se puede acceder repetidamente a la memoria», explica el equipo de investigación.

«En muchos sistemas, la CPU es lo suficientemente rápida como para causar algunos cambios de bits, pero la FPGA puede acceder repetidamente al sistema de memoria de su máquina host sustancialmente más rápido que la CPU de la máquina host».

En un experimento de prueba de concepto detallado en su artículo, el equipo de investigación lanzó un ataque clásico de Rowhammer basado en CPU y un nuevo ataque JackHammer basado en FPGA contra la implementación WolfCrypt RSA, parte de la Biblioteca WolfSSL, recuperando claves privadas utilizadas para proteger SSL conexiones

«Nuestros resultados indican que un FPGA malicioso puede funcionar dos veces más rápido que un ataque típico de Rowhammer desde la CPU en el mismo sistema y causa alrededor de cuatro veces más cambios de bits que el ataque de la CPU», dijo el equipo de investigación.

jackhammer-on-wolfssl.png "src =" https://zdnet3.cbsistatic.com/hub/i/2020/01/02/e1b751f1-87bf-44ff-b89a-b497ebba6a78/jackhammer-on-wolfssl.png

Imagen: Weissman et al.

Además, el equipo académico también descubrió que un ataque JackHammer es mucho más difícil de detectar debido a que el acceso directo de FPGA a los recursos del sistema no deja rastros en la CPU de las operaciones de acceso a memoria de FPGA. Como la mayoría de los sistemas de detección anti-Rowhammer están configurados a nivel de CPU, esto abre un nuevo punto ciego en la seguridad de la CPU y la nube.

Para sus pruebas, los académicos utilizaron un Intel Arria 10 GX FPGA sin embargo, esto no significa que los FPGA de Arria sean vulnerables.

Por diseño, los FPGA están destinados a «acelerar» los sistemas. El problema serious detrás de JackHammer es la confianza inherente depositada en los FPGA configurables por el usuario utilizados en entornos de nube, y la falta de controles de seguridad y protecciones diseñadas para el código de ejecución de FPGA.

«Desde una perspectiva de seguridad, un FPGA configurable por el usuario en un sistema en la nube debe tratarse con al menos tanto cuidado y precaución como un hilo de CPU controlado por el usuario, ya que puede explotar muchas de las mismas vulnerabilidades», dijeron los investigadores.

A través de su trabajo, al equipo de investigación le gustaría ver a los proveedores de la nube reaccionar y agregar protecciones adecuadas contra el código malicioso ejecutado dentro de FPGA en lugar de CPU.

El equipo de investigación enumeró varias mitigaciones que los proveedores de la nube podrían implementar para proteger las plataformas de computación en la nube contra JackHammer. Incluyen el uso de monitoreo de hardware, particionamiento de caché de CPU, fijación de caché de CPU, mayores tasas de actualización para memoria DRAM y más.

Para obtener más detalles sobre este nuevo vector de ataque FPGA, consulte el documento técnico del equipo de investigación titulado «JackHammer: Rowhammer eficiente en plataformas heterogéneas FPGA-CPU«.

WolfSSL 4.3., lanzado el 20 de diciembre, contiene una solución (CVE-2019-19962) para prevenir y mitigar los ataques de JackHammer.





Enlace a la noticia authentic