top of page
Search
circupete1974

Reversing ESP8266 Firmware (Part 6)



The MicroPython documentation is lacking in terms of describing the build process and how to configure modules to be frozen. I have learned how to do this by reading lots of forum posts and GitHub projects from other developers, and then I have created a GitHub project if my own that attempts to simplify the task of building the firmware specifically for the ESP8266 microcontroller: -esp8266-vagrant.




Reversing ESP8266 Firmware (Part 6)




We start by loading the firmware at the base address 0 and try to mark as much code as possible. To be able to properly mark the code in IDA, we need to learn the typical instruction sequences common to Xtensa firmware. To find out which instructions to use in the function prologs, we took a sample from GitHub: esp8266/Arduino: ESP8266 core for Arduino.


"Intro to Embedded Reverse Engineering for PC reversers" by Igor Skochinsky provides an overview of what is involved in reversing firmware, and in "Embedded Devices Security: Firmware Reverse Engineering" Jonas Zaddach and Andrei Costin outline a general methodology for reversing firmware beginning on slide 31. 2ff7e9595c


0 views0 comments

Recent Posts

See All

Comments


bottom of page