Skip to content

A loader and analyzer for ESP8266 firmware

Notifications You must be signed in to change notification settings

jspadaro/ghidra-esp8266

 
 

Folders and files

NameName
Last commit message
Last commit date

Latest commit

 

History

16 Commits
 
 
 
 
 
 

Repository files navigation

Ghidra-ESP8266

This is hank/ghidra-esp8266 updated for Ghidra 10.2.3. It also fixes some issues I had when trying to load a tuyasmart-based ESP8266 binary (TYWE1S)

I think it's mostly correct now. Major change was supporting the v2 (0xea magic) header.

Prerequisites

  • Tested with Ghidra 10.2.3
  • Requires Tensilica Xtensa plugin: https://github.com/Ebiroll/ghidra-xtensa
    • This fork appears more up-to-date than the original
    • The prebuilt zips are 3 years old as of this writing, you'll have to build yourself

Install Xtensa Support

  • This isn't this plugin, you need it

Easy Install - Pre-built Zip

Download Extension:

In Ghidra:

  • File -> Install Extensions
  • Click the + button, locate the zip file
  • Restart Ghidra and try it out

Build Yourself - Instructions

Some info from this issue

Install OpenJDK as you would for Ghidra itself, get Ghidra running.

Get updated gradle from gradle.org and run like this:

/opt/gradle/gradle-8.0.2/bin/gradle --stacktrace -PGHIDRA_INSTALL_DIR=../../../ghidra/ghidra_10.2.3_PUBLIC

Git clone the project into a new folder, change dir

git clone git@github.com:jspadaro/ghidra-esp8266.git
cd ghidra-esp8266/GhidraESP8266_2
gradle -PGHIDRA_INSTALL_DIR=/path_to.../ghidra_10.2.3_PUBLIC/

In Ghidra:

  • File -> Install Extensions
  • Click the + button, locate the zip file:
    • GhidraESP8266_2/dist/ghidra_10.0.2_PUBLIC_...ESP8266_2.zip
  • Restart Ghidra and try it out

Debug output can be viewed in Ghidra user log. Main window, button at bottom right.

Notes

About

A loader and analyzer for ESP8266 firmware

Resources

Stars

Watchers

Forks

Releases

No releases published

Packages

No packages published

Languages

  • Java 83.6%
  • CSS 12.3%
  • HTML 4.1%