文档介绍:芯片解密方法及攻略
芯片解密在网络上并不陌生,文章也很多,但是有实际技术价值的很少。芯片解密是个广义的概念,包括很多内容,是芯片逆向的范畴。我们在狭义上说的芯片解密就是将具有存储功能的芯片内的芯片读出来,因为一般的芯片的烧录了用户代码后就芯片解密方法及攻略
芯片解密在网络上并不陌生,文章也很多,但是有实际技术价值的很少。芯片解密是个广义的概念,包括很多内容,是芯片逆向的范畴。我们在狭义上说的芯片解密就是将具有存储功能的芯片内的芯片读出来,因为一般的芯片的烧录了用户代码后就可以加密,是不能直接读出来的,所以就有解密的说法。有很多公司也叫单片机解密,其实单片机只是这些需要解密的芯片中的一种,因为传统的单片机是指的MCU,而并没有包括比如ARM、CPLD、DSP等其它具有存储器的芯片。而目前芯片解密更多的是ARM解密、DSP解密、CPLD解密以及专用加密芯片的解密。比如北京致芯科技网站上推出的芯片解密业务基本上涵盖了各种芯片代码读出业务。以下就目前常见的单片机破解方法做一些介绍。
紫外线攻击方法
紫外线攻击也称为UV攻击方法,就是利用紫外线照射芯片,让加密的芯片变成了不加密的芯片,然后用编程器直接读出程序。这种方法适合OTP的芯片,做单片机的工程师都知道OTP的芯片只能用紫外线才可以擦除。那么要擦出加密也是需要用到紫外线。目前台湾生产的大部分OTP芯片都是可以使用这种方法解密的,感兴趣的可以试验或到去下载一些技术资料。OTP芯片的封装有陶瓷封装的一半会有石英窗口,这种事可以直接用紫外线照射的,如果是用塑料封装的,就需要先将芯片开盖,将晶圆暴露以后才可以采用紫外光照射。由于这种芯片的加密性比较差,解密基本不需要任何成本,所以市场上这种芯片解密的价格非常便宜,比如SONIX的SN8P2511解密,飞凌单片机解密等价格就非常便宜。
利用芯片漏洞
很多芯片在设计的时候有加密的漏洞,这类芯片就可以利用漏洞来攻击芯片读出存储器里的代码,比如我们以前的文章里提到的利用芯片代码的漏洞,如果能找到联系的FF这样的代码就可以插入字节,来达到解密。还有的是搜索代码里是否含有某个特殊的字节,如果有这样的字节,就可以利用这个字节来将程序导出。这类芯片解密以华邦、新茂的单片为例的比较多,如W78E516解密,N79E825解密等,ATMEL的51系列的AT89C51解密是利用代码的字节漏洞来解密的。另外有的芯片具有明显的漏洞的,比如在加密后某个管脚再加电信号的时候,会使加密的芯片变成不加密的芯片,由于涉及到国内某家单片机厂家,名称就不列出来了。目前市场上能看到的芯片解密器都是利用芯片或程序的漏洞来实现解密的。不过外面能买到的解密其基本上是能解得型号很少,因为一般解密公司都不会将核心的东西对外公布或转让。而解密公司自己内部为了解密的方便,自己会使用自制的解密工具,如果致芯科技具有可以解密MS9S09AW32的解密器、能专门解密LPC2119 LPC2368 等ARM的解密器,使用这样的解密器解密速度快,客户到公司基本上立等可取。
恢复加密熔丝方法
这种方法适用于很多的具有熔丝加密的芯片,最具有代表性的芯片就是TI的MSP43解密的方法,因为MSP430加密的时候要烧熔丝,那么只要能将熔丝恢复上,那就变成了不加密的芯片了,如MSP430F1101A 解密、MSP430F1