作为Flash芯片内容提取系列的第一部分,本文将介绍如何拆焊Flash芯片,设计及制作相应的分线板。
该系列将详细讲解及实践对嵌入式设备的非易失性存储的简单有效攻击手段。这些攻击包括:
(1)读取存储芯片内容;
(2)修改芯片内容;
(3)监视对存储芯片的读取操作并远程修改(中间人攻击)。
想想,当你拆开一个嵌入式产品,却被挡在Flash之外,好奇的你一定想对它一探究竟吧!那么,下面我们就开始!
拆焊Flash芯片
为了读取Flash芯片的内容,有以下两个基本途径:
(1)直接将导线连接到芯片的引脚;
(2)把芯片拆下来,插到另一块板子上。
下面介绍的Flash为BGA(球形栅格阵列)封装——无外露引脚。因此,只能选择拆焊的方法。
图:目标芯片
拆焊法的优点:
(1)可避免对电路板上其他器件造成影响;
(2)可以很容易看到芯片底部的布线;
(3)可用其他芯片或微控制器代替原芯片。
一些不便之处:
(1)电路在缺少完整器件的情况下无法运行;
(2)在拆卸过程中,一些邻近器件可能被损坏;
(3)如果操作不恰当,Flash本身可能毁坏。
OK,拆焊是吧?你看,下图所示的热风枪简直就是神器。只要将芯片周围加热,便可以很容易地拿下芯片:
图:热风枪拆焊
这种办法简单、快速只是可能伤及无辜——焊掉邻近的元件,所以,务必小心翼翼。
下图显示芯片拆下后PCB的布线。观察图片,猜想底部的两列引脚为空引脚,因为他们压根就没接入电路。