santtos0x1/spi-flash-dumper
GitHub: santtos0x1/spi-flash-dumper
基于ESP32通过位bang方式实现SPI接口的Flash芯片读取和固件提取工具,支持JEDEC识别和串口CLI交互。
Stars: 1 | Forks: 0
# ESP Flash 转储工具
基于 ESP32 的 SPI Flash 转储和分析工具,采用位bang方式实现 SPI 接口,并提供串口 CLI 用于 Flash 读取、JEDEC 识别和固件提取。
## 概述
本项目不依赖 ESP32 硬件 SPI 外设,而是实现了软件驱动的 SPI 接口(**位bang**),可完全控制 GPIO 时序和通信行为。这种方法使该工具能够灵活地与各种外部 SPI Flash 芯片和底层硬件目标进行交互。
该工具通过 `idf.py monitor` 提供串口命令行界面,允许使用简单命令直接与 Flash 设备交互,包括读取内存、转储固件内容以及获取 JEDEC 制造商信息。
### ✨ 功能
- 软件实现的 SPI(位bang)
- 交互式串口 CLI
- SPI Flash 内存读取
- 完整固件转储(通过 CLI)
- JEDEC 制造商识别
- 可配置的 GPIO 引脚映射
- 专为固件分析和逆向工程工作流程设计
### 📖 示例命令
```
read 0x03 0x000100
```
从特定 Flash 内存地址读取数据。
```
getman 0x9F
```
获取 JEDEC 制造商信息。
```
dumpf 0x03 0x200000
```
转储完整 Flash 内存内容。
### 目的
本项目作为底层学习和研究工具而创建,专注于:
- 理解 SPI 通信内部机制
- 固件提取技术
- 嵌入式系统开发
- 硬件逆向工程
- 手动协议实现
标签:Bit-banging, ESP32, JEDEC识别, SPI Flash, SPI通信, 云资产清单, 固件分析, 固件提取, 固件逆向, 客户端加密, 嵌入式系统, 微控制器, 物联网安全, 硬件安全, 硬件调试, 逆向工程, 闪存转储