如果 flashrom 工具不支持 rom 芯片,那么没有它您可以通过哪些方式提取数据?

逆向工程 硬件
2021-07-01 04:08:51

我目前正在研究具有 MX25L1606E rom 芯片的 Netgear 路由器,我的目标是提取固件以进行逆向工程,但flashrom不支持它。所以问题是如何通过制作自己的程序或脚本来从 rom 读取数据。我已经尝试过 buspirate,但我不知道从该芯片读取数据的特定 SPI 模式设置是什么。

1个回答

首先,您想知道是否有人已经实现了读取该闪存模型所需的协议。您应该尝试搜索您最喜欢的引擎查询,例如 "'model' dump" 或 "dumping 'model' with buspirate" ,其中 'model' 是您的芯片名称。

如果你找不到任何东西,你将不得不自己做。

我刚刚搜索了“MX25L1606E 数据表”,我在第一个结果中找到了有关您的特定芯片的所有所需详细信息:数据表

在那里您会发现它使用 SPI 协议、支持的命令(READ、WRITE 等)以及其他可能很重要的命令。

现在您需要一个可以使用该协议的硬件。巴士海盗很棒并且有文档。您只需要阅读数据表即可发现使用的是哪种 SPI 模式。

您还可以重新利用 Arduino UNO 或 Arduino UNO 克隆板(或任何更强大的 Arduino 版本)。Arduino UNO 可以说 SPI。例如,我这样做是为了读取Nintendo DS 卡带SPI 闪存您想使用 Arduino 的 ICSP 引脚连接到您的内存,发送命令和接收数据,将其存储到 arduino 内存中,然后通过 Arduino 的串行连接将其发送到您的 PC。

请注意,Arduino (UNO) 板的可用内存很少,因此您需要以较小的块读取内存。