转储 NAND 闪存

逆向工程 硬件 闪光 固件分析
2021-06-22 18:49:27

我目前正在尝试转储作为嵌入式系统一部分的 NAND 闪存的内容。

芯片为QCA4531,NAND Flash为GD5F1GQ4RCYIG。该模块由 28 个引脚组成,每侧 14 个。NAND 闪存有 8 个触点,每侧 4 个。

我对此很陌生,但我已经做了一些研究工作,我认为我不再那么遥远了,但“最后”一步让我有些头疼。

我有点受限,因为我无法拆焊 NAND 闪存,所以我尝试在它仍然组装时访问它的内容。

我的想法是获取 Bus Pirate v4,将其连接到 NAND 闪存并通过 flashrom 读取内容。我知道在 DangerousPrototypes 论坛的虚拟机中使用总线海盗时 flashrom 有一些问题,但我还是尝试了它,但正如预期的那样,它并没有真正起作用。所以我试图获得一个 Windows 版本的 flashrom。不幸的是,它已经很旧了,但我想看看当我尝试读出 Flash 时会发生什么,我得到以下输出:

在物理地址 0x0 处找到芯片“通用未知 SPI 芯片 (RDID)”(0 KB,SPI)。此闪存部件的状态为 NOT WORKING for operation:PROBE READ ERASE WRITE

我现在有点困惑,有没有其他工具可以用来读取 Flash 或者我可以做什么来访问内容?

顺便说一句,既然闪存仍然焊接到嵌入式系统上,那么让系统保持复位状态很重要吗?我读了一些关于那个的东西,但在理解为什么这可能是一个问题之前我不想这样做。

1个回答

看来您有一个 SPI NAND 芯片,而不是 flashrom 专门针对的更常见的 SPI NOR。flashrom 中对 SPI NAND 的支持是相当新的,目前仅涵盖 Toshiba 和 Micron,甚至还没有合并到 master 分支中,因此您的构建不太可能拥有它。您可以尝试自行添加对 GigaDevice 的支持(例如,从数据表或此 OpenWrt 补丁)或联系 flashrom邮件列表IRC 频道,以确认是否有计划支持 GigaDevice NAND 部件并获得帮助使其工作。

关于闪存在机上时可能影响读取闪存的常见问题,请参见https://flashrom.org/ISP