El robot puede extraer los datos de los chips RAM con tecnología escalofriante • The Register
Los ataques de arranque en frío, en los que los chips de memoria se pueden enfriar y los datos, incluidas las claves de cifrado, se robaron, se demostraron en 2008, pero se automatizaron.
Ese tipo original de ataque ha sido mejorado y automatizado en la forma de una máquina de robo de memoria que puede ser tuya por alrededor de $ 2,000, con un poco de manipulación eléctrica autoguiada.
El viernes, en la conferencia de ingeniería inversa REcon en Canadá, Ang Cui, fundador y director ejecutivo de Red Balloon Security, presentará una charla titulada "Ice Ice Baby: Coppin' RAM With DIY Cryo-Mechanical Robot".
La presentación se centra en un robot de extracción de contenido RAM criomecánico que Cui y sus colegas Grant Skipper y Yuanzhe Wu desarrollaron para recopilar datos descifrados de los módulos de memoria DDR3. La razón para hacerlo es que los fabricantes de hardware han dificultado la ingeniería inversa de sus dispositivos, al deshabilitar las interfaces de depuración JTAG y los circuitos UART, y mediante el uso de paquetes de matriz de rejilla de bola (BGA) y firmware encriptado.
"Estamos viendo lo que yo llamo acabado de productos, donde los fabricantes están eliminando muchas interfaces de depuración", dijo Cui a The Register en una entrevista. "No necesariamente aumenta la seguridad del producto, pero hace que la introspección del dispositivo y la ingeniería inversa del dispositivo sean mucho más difíciles. Es una especie de pérdida de tiempo sortear algunas de estas cosas de hardware.
"Así que decidimos cambiar esa dinámica tomando una ruta diferente", dijo Cui. "En lugar de intentar inyectar fallas, lo que hicimos en el pasado, o hacer ingeniería inversa muy invasiva mediante ablación con láser, construimos este robot sorprendentemente preciso y muy asequible que literalmente congela un chip RAM en el dispositivo a la vez. ."
"Luego, sacamos la memoria física del dispositivo cuando queremos leer el contenido de la RAM física; la metemos de golpe en nuestro pequeño dispositivo FPGA. Básicamente, es solo leer la memoria física tomándola del dispositivo y luego colocándola físicamente en el lector. Y en realidad ha funcionado sorprendentemente bien", explicó Cui.
"Muchas veces en el gestor de arranque, verá claves de descifrado. También verá el código del gestor de arranque, que muchas veces, si tiene firmware cifrado en flash y tiene una ROM de arranque que es segura incluso un poco, puede tener dificultades incluso para obtener acceso para leer el código Pero con este enfoque, obtiene el código, obtiene todos los datos, obtiene la pila, obtiene el montón, obtiene toda la memoria física ”, relató.
El ataque de arranque en frío original, dijo Cui, consistía en congelar la memoria de una computadora portátil al invertir una lata de aire comprimido para enfriar la DRAM de la computadora. Cuando los chips de memoria se pueden reducir a alrededor de -50 °C, los datos representados en ellos se pueden congelar temporalmente, de modo que persisten durante varios minutos, incluso cuando se apaga.
"Pero si miras los dispositivos integrados, no tienen RAM modular", dijo Cui. "Todo está soldado. También trabajamos en una serie de controladores de memoria muy personalizados. Utilizamos este enfoque para hacer el trabajo de divulgación de vulnerabilidades de Siemens a principios de este año.
"Entonces, una vez que conseguimos que un chip de memoria saliera de manera confiable y luego leyera correctamente, tuvimos que hacer no uno sino cinco chips, porque todos están entrelazados. Y luego, tres de los chips están en un lado del tablero, y dos de ellos están en la parte inferior del tablero. Así que tuvimos que idear una manera de sacar mágicamente los cinco chips de memoria literalmente con la misma instrucción, lo cual es, ya sabes, hilarantemente complicado y realmente no es factible. "
"Se nos ocurrió este otro truco realmente genial en el que hacemos esto uno a la vez y buscamos no solo una ejecución determinista, sino que también observamos la emanación electromagnética del dispositivo para descubrir básicamente dónde está el dispositivo". pasando por períodos de operación vinculados a la CPU. Porque si estás vinculado a la CPU, ¿adivina qué no estás haciendo? No estás escribiendo desde la memoria ", recordó.
"Entonces, en lugar de necesitar decenas de nanosegundos de resolución de tiempo al retirar el chip de memoria, obtuvimos períodos de decenas de milisegundos en los que podemos hacer esto. Y así fue como extrajimos cinco chips de memoria al mismo tiempo, y luego reconstruyó la memoria para el cargador de arranque, el código y los datos, y obtuvo visibilidad del dispositivo".
Y decenas de milisegundos, dijo Cui, son suficientes para que una máquina de control numérico por computadora (CNC), adquirida por alrededor de $ 500 de AliExpress y modificada, realice la manipulación necesaria del chip.
El robot, una máquina CNC conectada a un lector de memoria construido con una matriz de puertas programables en campo (FPGA) y un controlador basado en un módulo ESP32 que ejecuta MicroPython, simplifica la técnica de ataque de arranque en frío, haciéndola menos onerosa.
Cui dijo que el robot consta de un CNC al que se le han quitado componentes imprecisos, como los motores y el actuador del eje X. Lo que hace posible el ataque, dijo, es algo llamado enchufe de prueba IC de elastómero conductor.
En contraste con los enchufes de prueba típicos que tienen forma de almeja y tienen clavijas de metal, el enchufe de prueba de elastómero tiene la consistencia de ositos de goma duros y está impreso con clavijas conductoras.
La flexibilidad del zócalo hizo posible que un pistón empujara los chips de memoria en su lugar con hardware barato, sin dañar la placa de circuito ni los chips de memoria. Y estos enchufes, que costaban cientos de dólares cada uno hace una década, ahora se pueden conseguir por algo así como $30 en Taobao.
Al incorporar un sistema de lectura de memoria basado en FPGA, no es necesario obtener la ejecución del código a través de un gestor de arranque personalizado para volcar el contenido de la DRAM. El robot también simplifica el proceso de ataque mediante la transferencia física de chips DRAM entre el dispositivo de destino y el sistema de lectura.
Cui y sus colegas demostraron su robot en un PLC SIMATIC S7-1500 de Siemens, desde el cual pudieron recuperar el contenido de archivos binarios de firmware cifrados. También llevaron a cabo un ataque igualmente exitoso en DDR3 DRAM en una serie CISCO IP Phone 8800 para acceder a la memoria ARM TrustZone en tiempo de ejecución.
Creen que su técnica es aplicable a DDR4 y DDR5 más sofisticados si se utiliza una plataforma de lectura de memoria basada en FPGA más costosa (alrededor de $ 10,000), un costo que esperan que disminuya con el tiempo.
Los ataques de arranque en frío se pueden contrarrestar con el cifrado de la memoria física, dijo Cui.
"En las CPU modernas, y también en las consolas de juegos, en realidad ya están usando memoria cifrada completa", explicó Cui. "Eso anularía este enfoque, porque incluso si pudiéramos extraer la memoria física, aún necesitaríamos tener la clave física, que está en otro lugar del dispositivo".
“Pero cuanto más importante es una cosa para el mundo, menos seguridad tiene”, dijo. "Entonces, ¿adivinen qué tiene [cifrado de memoria]? XBox lo tiene. PS5 lo tiene. ¿Adivinen qué no? Cada CPU PLC [controlador lógico programable] en el planeta de manera efectiva. Muchas de las infraestructuras críticas incorporan cosas de las que dependemos, casi ninguno de ellos está abordando este tipo de ataque". ®
Envíanos noticias
Obtén nuestro