Running Custom Code on a Google Home Mini (Part 2)

Posted on Tue 28 July 2020 in Projects • Tagged with Reverse Engineering, Linux, Exploit, Fuzzing

After the work detailed in part 1, altering the content of the NAND Flash of the Google Home Mini with ease is now possible.

Despite this very privileged access, because of Google’s secure boot implementation, running arbitrary code on the CPU of the device isn’t possible using simple and naive methods.

However, as we’ll see, there is still a way.

This post will detail how I achieved code execution. It will require fuzzing, understanding some Linux code and finally exploiting a kernel bug.

Of course, NandBug, the hardware tool previously introduced, will be used.

Continue reading

Reverse Engineering & Exploitation of a "Connected Alarm Clock"

Posted on Sun 10 September 2017 in Projects • Tagged with Reverse Engineering, Linux, Exploit

I received the Aura, a device advertised as a “Connected Alarm Clock”. This device in itself is quite cool and uses different sounds and color patterns to help the user fall asleep and wake him up during light stages of his sleep cycles.

Soon I was interested in doing some reverse engineering on it because:

  • It was fun.
  • I wanted to really own the device, I wanted to be able to run my own code on it.

This article describes my journey into the Aura, from firmware image grabbing to remote buffer overflow exploitation.

Continue reading