hardware internet tech

Reverse-Engineering Xiaomi IoT Firmware

IoT gadgets infrequently ever do exactly what they’re marketed. They’ll nearly all the time absorb extra space than they wish to – on most sensible of that, their processor and reminiscence by myself will have to be sufficient to run a large number of different duties whilst no longer essentially compromising the duty they had been constructed to do.

That’s partly the incentive for rooting any instrument, however for Xiaomi gadgets, it’s somewhat extra amusing – this is to mention, it’s somewhat bit tougher while you’re opposite engineering its firmware from scratch.

Similar to his different DEF CON 26 communicate on enhancing ARM Cortex-M firmware, [Dennis Giese] returns with a walkthrough of reverse-engineer Xiaomi IoT gadgets. He begins off speaking in regards to the Xiaomi ecosystem and the drawbacks of reusing firmware throughout all of the other gadgets hooked up to the similar cloud community ahead of leaping into the walkthrough for gaining access to the gadgets.

Targeting the Aquara Smart IP Camera, you first determine the serial port after bricking the instrument (a essential step for connecting to the filesystem). Since the JFFS2 filesystem at the MCU (Zigbee NXP JN5169) wasn’t correctly wiped clean, a good quantity of credentials is leaked, which is basically sufficient for rooting the instrument by means of telnet. Once you change telnetd with SSH, trade the basis password, and alter the digicam device, you’ve were given a changed sensible digicam!

For a distinct instrument, a WiFi community speaker, even the instrument teardown was once needless. No enter validation was once discovered at the firmware replace over HTTP – no signatures, with the guidelines packed into an XML structure. This makes it even more uncomplicated to easily overwrite the firmware OTA.

Finally, for a vacuum cleansing robotic, somewhat extra circuitry was once had to root the instrument. In the standard approach, the MMC knowledge strains are shortcut, led to the gadget to fall into FEL mode. Using a USB connector and a load and execute instrument, the MMC flash is dumped. The symbol can then be changed and rewritten to flash reminiscence.

As it seems, for most of the gadgets you don’t even wish to hotel to bricking the instrument with the intention to achieve root get entry to. While Xiaomi’s inevitably patched up many of the vulnerabilities for the reason that communicate, there’s invariably nonetheless extra available in the market.