Solución reto rhme fiesta del Riscure Hardware CTF 2016 con EM Fault Injection
Abstract
Vamos a ver como solucionar el reto Fiesta del Riscure Embedded Hardware CTF edición 2016 utilizando un método nuevo, Fault Injection electromagnético.
El reto tiene una historia detrás, y está específicamente diseñado para solucionarse a través de Fault Injection
Herramientas
Para solucionar el reto utilizaré únicamente mi inyector de fallos EM.
Reto y Solución
Cargamos el ejecutable .hex en un arduino Nano, y al observar la salida serial (19200 baudios) descubrimos que el dispositivo está bloqueado:
Acercamos nuestro inyector y procedemos a causar glitches:
Y en solo dos ráfagas obtengo la FLAG. En el primer intento la CPU se reinició, pero con solo un intento más obtuve la solución:
FLAG: Why_4m_I_her3?
Otras soluciones existentes
El reto ha sido solucionado anteriormente de dos formas. Una muy metódica (y larga, y complicada…) haciendo power glitch fault injection, por live0verflow:
Video ya mostrado en Hacking The 3DS parte IV.
Más tarde Jullio de la Flora lo solucionó cortocircuitando los pines del reloj del UNO, causando una señal de reloj anómala, de forma muy sencilla:
@LiveOverflow that's why the RHME2 FIesta challenge was worth only 100 points. ;D ahahaha it was a clock fault injection... pic.twitter.com/QOwjWNVhsl
— Julio Della Flora (@jcldf) March 6, 2020