El ataque Drive-by Rowhammer usa GPU para comprometer un teléfono Android

El ataque Drive-by Rowhammer usa GPU para comprometer un teléfono AndroidAgrandar John Karakatsanis / Flickr

En los últimos años, ha habido una evolución constante en Rowhammer, el ataque una vez en gran medida teórico que explota defectos físicos en los chips de memoria para alterar la seguridad de dispositivos en los que se ejecutan. El jueves, los investigadores están presentando el La demostración más práctica hasta la fecha del poder y el alcance de Rowhammer: un exploit que ejecuta remotamente código malicioso en teléfonos Android por aprovechando sus procesadores gráficos.

Otras lecturas

El hack de vanguardia brinda un estado de súper usuario al explotar DRAM Debilidad llamada GLitch, el exploit es el primero en mostrar que las GPU puede voltear bits individuales almacenados en la memoria dinámica de acceso aleatorio. El avance brinda a los atacantes una mayor flexibilidad sobre los anteriores técnicas que dependían únicamente de las CPU. También es el primero. Ataque de Rowhammer que usa JavaScript estándar para comprometer un teléfono inteligente, lo que significa que se puede ejecutar cuando los usuarios no hacen nada más que visitar un sitio web malicioso. Otra innovación clave: en promedio, GLitch tarda menos de dos minutos en comprometer un dispositivo, un mejora significativa sobre las hazañas anteriores de Rowhammer.

GLitch recibe su nombre y su capitalización idiosincrásica porque utiliza la interfaz de programación WebGL para representar gráficos en desencadenar una falla conocida en los chips de memoria DDR3 y DDR4. El termino Rowhammer fue acuñado porque los accesos de la clase exploit, o “martillos”: bloques de memoria específicos conocidos como filas dentro de un chip miles de veces por segundo. Los atacantes lo usan para alterar crucial piezas de datos cambiando los ceros a unos y viceversa. los la debilidad física es el resultado de dimensiones cada vez más pequeñas de la silicio. Con menos espacio entre cada celda DRAM, se convierte en cada vez más difícil evitar que una célula interactúe eléctricamente con sus vecinos

Como todos los ataques de Rowhammer que lo han precedido, el El exploit GLitch prueba de concepto no es lo suficientemente maduro como para plantear una amenaza inmediata para la mayoría de los usuarios finales. Debido a lo significativo cantidad de ingeniería inversa requerida y el advenimiento de Rowhammer mitigaciones en algunos teléfonos más nuevos, el PoC actualmente solo funciona en un Teléfono Nexus 5, que Google descontinuó en 2015. Con mejoras, sin embargo, el nuevo vector de ataque podría algún día proporcionar más forma sólida de comprometer una vulnerabilidad grave en ambas computadoras y teléfonos que pueden mitigarse pero que nunca pueden parchearse.

“Este es el primer trabajo que conozco que puede aprovechar GPU y ejecución remota de JavaScript para hacerse cargo de un control remoto máquina explotando el mecanismo de falla Rowhammer “, dijo Onur Mutlu, un investigador que escribió el artículo de 2014 que presentó Rowhammer como vulnerabilidad.

Él continuó:

Como resultado, creo que sus implicaciones son muy significativas: GPU se emplean en todos los sistemas móviles interesantes, y si la DRAM es vulnerable a Rowhammer, uno puede explotar esa GPU para hacerse cargo del sistema. El hecho de que el ataque es de extremo a extremo y no requiere el usuario para instalar una nueva aplicación a realizar la hace aún más significativo ya que la barrera para atacar es baja. Entonces, creo que esto El artículo presenta una demostración significativa y muy inteligente de cómo La vulnerabilidad Rowhammer puede conducir a otro ataque.

Adiós a las CPU

El avance de la investigación de GLitch es el descubrimiento de un nueva forma de explotar la vulnerabilidad Rowhammer. Para martillar filas, los exploits deben acceder repetidamente a fragmentos específicos de datos almacenados en DRAM en rápida sucesión. Este martilleo puede verse obstaculizado por el cachés de datos que se encuentran entre las CPU y los chips de memoria principales, porque los cachés almacenan datos a los que se accedió recientemente.

Otras lecturas

Exploit de DRAM “Bitflipping” para atacar PC: simplemente agregue JavaScriptA Exploit 2015 que utilizaba JavaScript para explotar Rowhammer en computadoras superó este obstáculo utilizando una técnica llamada desalojo de caché para eliminar datos de las cachés. El proceso aseguró que el objetivo se accedió a los datos en DRAM y no en la memoria caché. En 2016, un diferentes equipos de investigadores idearon una forma de rootear teléfonos Android mediante el uso de una aplicación almacenada localmente, llamada Drammer, que explotó Rowhammer. Pero el equipo no pudo implementar un desalojo Rowhammer en el sistema operativo móvil. El desalojo, los investigadores concluyó, parecía ser demasiado lento para activar cambios de bits en Android Los telefonos.

Otras lecturas

El uso de bitflips Rowhammer para rootear teléfonos Android ahora es una cosa Las GPU integradas en la mayoría de los teléfonos inteligentes, por el contrario, generalmente emplean cachés más pequeños. Además, los investigadores de GLitch encontraron que los dispositivos móviles Los cachés de GPU tienen comportamientos deterministas que contrastan fuertemente con Las políticas aleatorias implementadas en las CPU móviles. Estas características de GPU Haga que el desalojo de caché sea lo suficientemente eficiente y rápido como para activar cambios de bits en clases enteras de dispositivos que alguna vez se consideraron fuera de los límites.

En un trabajo de investigación titulado Grand Pwning Unit: Accelerating Los ataques de microarquitectura con la GPU, escribieron los investigadores:

A diferencia de los cachés de CPU que son grandes y se optimizan para un carga de trabajo de propósito general mediante la implementación aleatoria o políticas de reemplazo no deterministas, mostramos que los cachés de GPU son pequeño y seguir una política de reemplazo determinista. Esto permite un atacante para razonar sobre los aciertos o errores de caché con gran precisión, allanando el camino para ataques de canal lateral rápidos y confiables con poco ruido

Los ataques de Rowhammer dependen de canales laterales para mapear trozos grandes de memoria almacenada dentro de chips vulnerables. Para martillar quirúrgicamente el filas que almacenan bits específicos, los ataques de Rowhammer miden cuidadosamente el tiempo que toman ciertos accesos DRAM. Los canales laterales de sincronización permiten ataques para deducir información sobre la ubicación de los bits en el módulo. La velocidad y la claridad de los canales laterales basados ​​en GPU son clave para El éxito de GLitch.

Pwning Firefox

Los investigadores obtuvieron las capacidades superiores de Rowhammer de las GPU utilizando una técnica novedosa para realizar ingeniería inversa en el Snapdragon 800/801 sistema en un chip, que integra una CPU y GPU en el mismo pieza de silicio. Luego, los investigadores utilizaron las ideas para desarrollar un exploit para el Nexus 5, que usa Snapdragon SoC. los Los investigadores dijeron que su exploit funciona en otros dispositivos móviles que use el mismo Snapdragon SoC. También creen que otros modelos de SoC pueden ser explotado sometiéndolos al mismo reverso intensivo Ingenieria.

Cuando el PoC JavaScript de los investigadores se carga de forma remota en Firefox ejecutándose en un Nexus 5, ejecuta el código del atacante elección. Actualmente, el código se ejecuta con las mismas restricciones del sistema. como Firefox, lo que significa que podría usarse para robar cualquier contraseña, historial de navegación u otros datos que pertenecen al navegador pero no rootear el teléfono o acceder a los datos que pertenecen a la mayoría de las otras aplicaciones. Por encadenamiento de GLitch a Drammer o un nuevo desarrollo explotación de escalada de privilegios, sin embargo, esas restricciones podrían probablemente superado, una perspectiva que haría enraizamiento remoto factible.

Pietro Frigo, uno de los cuatro investigadores de la Universidad de Vrije. Amsterdam Systems and Network Security Group, autor de la artículo, le dijo a Ars que la mayor parte de la investigación de GLitch se realizó utilizando el Navegador Chrome, que es mucho más popular en Android que Firefox

“Si se pregunta si podemos activar cambios de bits en Chrome, el la respuesta es sí, podemos “, escribió Frigo en un correo electrónico. Eventualmente, él y sus colegas investigadores cambiaron a Firefox cuando desarrollaron el explotar.

“La razón por la que atacamos Firefox es que ya teníamos algunos conocimiento sobre sus componentes internos y había más documentación , así que fue más fácil para nosotros construir un exploit completo allí ” Frigo explicó. “En diferentes navegadores, tendrías diferentes técnicas para construir el exploit que lo haría más rápido / más lento más / menos práctico Pero, teóricamente, podrías explotar cualquier objetivo.”

Tanto Chrome como Firefox están en proceso de actualizarse a cerrar algunas de las funciones que hacen Rowhammer basado en GPU hazañas posibles. Tanto la versión 65 de Chrome como la versión 59 de Firefox, que se lanzaron en marzo, deshabilitaron una extensión WebGL llamada EXT_DISJOIN_TIMER_QUERY, que brindó a los atacantes una herramienta clave para construyendo un canal lateral basado en GPU. Ambas actualizaciones también parcialmente rediseñó algunas funciones de WebGL para que sea más difícil para los atacantes construir temporizadores personalizados utilizados en ataques de canal lateral.

Sin embargo, a pesar de las mitigaciones puestas en Firefox 59, Frigo dijo la actualización no ha podido detener su exploit de prueba de concepto trabajando en la versión 59.0.2. Dijo que los cambios hacen que GLitch sea menos confiable porque el exploit ahora debe adivinar si la memoria objetivo Es contiguo o no.

En un comunicado, los funcionarios de Google escribieron:

Hemos trabajado con el equipo de Vrije Universiteit durante meses, y aunque esta vulnerabilidad no es una preocupación práctica para el abrumadora mayoría de usuarios, apreciamos cualquier esfuerzo para proteger ellos y avanzar en el campo de la investigación de seguridad, en general. Estamos no es consciente de una hazaña, pero la prueba de concepto de los investigadores sí mostrar que los navegadores WWeb pueden ser un vector para este estilo Rowhammer ataque. Mitigamos este vector remoto en Chrome el 13 de marzo y Estamos trabajando con otros navegadores para que puedan implementar similares protecciones

Los funcionarios de Mozilla emitieron la siguiente declaración:

El Centro Nacional de Ciberseguridad holandés nos alertó sobre esto problema. Al igual que Chrome m65, Firefox también está deshabilitado EXT_DISJOINT_TIMER_QUERY en nuestra versión de marzo de Firefox 59. Nosotros trabajó con el equipo de Chrome para cambiar la especificación de WebGL a dificultará que los atacantes construyan temporizadores personalizados. Estas los cambios se lanzarán con Firefox 60 el 9 de mayo. Continuaremos para monitorear cualquier actualización de los fabricantes de hardware para abordar el problema subyacente y hacer cambios en consecuencia.

Investigadores de Google, hablando con la condición de que no sean nombrados o citado, también dijo que muchos teléfonos Android se entregan con chips DDR que contienen mitigaciones diseñadas para evitar que los bits se volteen. Una mitigación conocida como actualización de fila de destino recarga las filas de memoria que muestran signos de abuso. Otro, conocido como corrección de errores. código, está diseñado para monitorear chips en busca de signos de cambios de bits y, cuando detectado, corríjalos rápidamente. No está claro qué modelos de Android tener implementada una o ambas protecciones, pero se sabe que el Nexus 5 explotado por GLitch no implementa ninguno de los dos.

Frigo dijo que sus compañeros de equipo aún no han estudiado las mitigaciones, pero espera que hagan los ataques de Rowhammer mucho más difíciles. Aún así, dijo que su equipo tiene pruebas de pequeños cambios producidos en Google Pixel phone, que puede incluir algunas de las mitigaciones (los flips no fueron el resultado de GLitch). El investigador también dijo que el No es probable que se incluyan mitigaciones en los teléfonos de gama baja.

El resultado

Por el momento, GLitch, como con la mayoría de los otros Rowhammer explota, representa poca amenaza inmediata para la mayoría de los teléfonos y computadoras usuarios. En comparación con ataques más mundanos que usan spam malicioso o sitios web comprometidos para propagar malware, las vulnerabilidades de Rowhammer son extremadamente costoso de desarrollar y poco confiable de usar. Con el excepción de las marcas de mayor valor dirigidas a exóticos hacks patrocinados por la nación, hay pocas posibilidades de que exploten GLitch siendo utilizado en la naturaleza.

Al mismo tiempo, la investigación de GLitch es inmensamente importante. porque demuestra un vector nunca antes visto para explotar un debilidad de hardware que nunca se puede reparar. No solo es la GPU método casi completamente pasado por alto, también es más efectivo que Métodos más conocidos que utilizan CPU.

Lo más importante de todo, GLitch ilumina lo previamente desconocido susceptibilidad de los teléfonos inteligentes y potencialmente otros tipos de dispositivos utilizados por miles de millones de personas en todo el mundo. Y para estos razones, el periódico del jueves y la página web que lo acompaña deben ser lectura obligatoria para cualquier persona que desarrolle hardware o software, particularmente aquellos que lo descartan como un tema demasiado esotérico para justifica una seria preocupación.

“Rowhammer en muchos sentidos ha sido ignorado por los vendedores escondidos detrás [de la afirmación] de que es difícil y generalmente requiere locales ejecución o deduplicación que ha sido eliminada de Windows por ahora “, dijo Anders Fogh, investigador principal de seguridad de GDATA Análisis avanzado que habló sobre Rowhammer en el Black Hat 2015 conferencia de seguridad. “Esta [investigación] debería poner algo muy necesario centrarse en el hecho de que lo que a menudo se ve solo como una fiabilidad a menudo es un problema grave de seguridad “.

Like this post? Please share to your friends:
Leave a Reply

;-) :| :x :twisted: :smile: :shock: :sad: :roll: :razz: :oops: :o :mrgreen: :lol: :idea: :grin: :evil: :cry: :cool: :arrow: :???: :?: :!: