八種常見的IC芯片解密方法與原理解析

發表時間:2020-12-26 10:37:22 人氣:3711

其實了解芯片解密方法之前先要知道什么是芯片解密,網絡上對芯片解密的定義很多,其實芯片解密就是通過半導體反向開發技術手段,將已加密的芯片變為不加密的芯片,進而使用編程器讀取程序出來。

芯片解密所要具備的條件是:

第一、你要有一定的知識,懂得如何將一個已加密的芯片變為不加密。

第二、必須有讀取程序的工具,可能有人就會說,無非就是一個編程器。沒錯,就是一個編程器,但并非所有的編程器是具備讀取的功能。這也就是為什么我們有時候為了解密一個芯片而會去開發一個可讀編程器的原因。那我們就講講,芯片解密常有的一些方法。



1、軟件攻擊

該技術通常使用處理器通信接口并利用協議、加密算法或這些算法中的安全漏洞來進行攻擊。軟件攻擊取得成功的一個典型事例是對早期ATMELAT89C系列單片機的攻擊。攻擊者利用了該系列單片機擦除操作時序設計上的漏洞,使用自編程序在擦除加密鎖定位后,停止下一步擦除片內程序存儲器數據的操作,從而使加過密的單片機變成沒加密的單片機,然后利用編程器讀出片內程序。

至于在其他加密方法的基礎上,可以研究出一些設備,配合一定的軟件,來做軟件攻擊。近期國內出現了一種凱基迪科技51芯片解密設備(成都一位高手搞出來的),這種解密器主要針對SyncMos.Winbond,在生產工藝上的漏洞,利用某些編程器定位插字節,通過一定的方法查找芯片中是否有連續空位,也就是說查找芯片中連續的FFFF字節,插入的字節能夠執行把片內的程序送到片外的指令,然后用解密的設備進行截獲,這樣芯片內部的程序就被解密完成了。

2、電子探測攻擊

該技術通常以高時間分辨率來監控處理器在正常操作時所有電源和接口連接的模擬特性,并通過監控它的電磁輻射特性來實施攻擊。因為單片機是一個活動的電子器件,當它執行不同的指令時,對應的電源功率消耗也相應變化。

這樣通過使用特殊的電子測量儀器和數學統計方法分析和檢測這些變化,即可獲取單片機中的特定關鍵信息。至于RF編程器可以直接讀出老的型號的加密MCU中的程序,就是采用這個原理。

3、過錯產生技術

該技術使用異常工作條件來使處理器出錯,然后提供額外的訪問來進行攻擊。使用最廣泛的過錯產生攻擊手段包括電壓沖擊和時鐘沖擊。低電壓和高電壓攻擊可用來禁止保護電路工作或強制處理器執行錯誤操作。時鐘瞬態跳變也許會復位保護電路而不會破壞受保護信息。電源和時鐘瞬態跳變可以在某些處理器中影響單條指令的解碼和執行。

4、探針技術

該技術是直接暴露芯片內部連線,然后觀察、操控、干擾單片機以達到攻擊目的。

5、紫外線攻擊方法

紫外線攻擊也稱為UV攻擊方法,就是利用紫外線照射芯片,讓加密的芯片變成了不加密的芯片,然后用編程器直接讀出程序。這種方法適合OTP的芯片,做單片機的工程師都知道OTP的芯片只能用紫外線才可以擦除。那么要擦出加密也是需要用到紫外線。

目前臺灣生產的大部分OTP芯片都是可以使用這種方法解密的,感興趣的可以試驗或到去下載一些技術資料。OTP芯片的封裝有陶瓷封裝的一半會有石英窗口,這種事可以直接用紫外線照射的,如果是用塑料封裝的,就需要先將芯片開蓋,將晶圓暴露以后才可以采用紫外光照射。由于這種芯片的加密性比較差,解密基本不需要任何成本,所以市場上這種芯片解密的價格非常便宜,比如SONIX的SN8P2511解密,飛凌單片機解密等價格就非常便宜。

6、利用芯片漏洞

很多芯片在設計的時候有加密的漏洞,這類芯片就可以利用漏洞來攻擊芯片讀出存儲器里的代碼,比如我們以前的文章里提到的利用芯片代碼的漏洞,如果能找到聯系的FF這樣的代碼就可以插入字節,來達到解密。

還有的是搜索代碼里是否含有某個特殊的字節,如果有這樣的字節,就可以利用這個字節來將程序導出。這類芯片解密以華邦、新茂的單片為例的比較多,如W78E516解密,N79E825解密等,ATMEL的51系列的AT89C51解密是利用代碼的字節漏洞來解密的。

另外有的芯片具有明顯的漏洞的,比如在加密后某個管腳再加電信號的時候,會使加密的芯片變成不加密的芯片,由于涉及到國內某家單片機廠家,名稱就不列出來了。目前市場上能看到的芯片解密器都是利用芯片或程序的漏洞來實現解密的。

不過外面能買到的解密其基本上是能解得型號很少,因為一般解密公司都不會將核心的東西對外公布或轉讓。而解密公司自己內部為了解密的方便,自己會使用自制的解密工具,如果致芯科技具有可以解密MS9S09AW32的解密器、能專門解密Lpc2119LPC2368等ARM的解密器,使用這樣的解密器解密速度快,客戶到公司基本上立等可取。

7、FIB恢復加密熔絲方法

這種方法適用于很多的具有熔絲加密的芯片,最具有代表性的芯片就是ti的msp430解密的方法,因為MSP430加密的時候要燒熔絲,那么只要能將熔絲恢復上,那就變成了不加密的芯片了,如MSP430F1101A解密、MSP430F149解密、MSP430F425解密等。

一般解密公司利用探針來實現,將熔絲位連上,也有的人因為自己沒有太多的解密設備,需要交由其它半導體線路修改的公司來修改線路,一般可以使用FIB(聚焦離子束)設備來將線路連接上,或是用專用的激光修改的設備將線路恢復。這些設備目前在國內的二手設備很多,也價格很便宜,一些有實力的解密公司都配置了自己的設備。這種方法由于需要設備和耗材,不是好的方法,但是很多芯片如果沒有更好的方法的時候,就需要這種方法來實現。

8、修改加密線路的方法

目前市場上的CPLD以及DSP芯片設計復雜,加密性能要高,采用上述方法是很難做到解密的,那么就需要對芯片結構作前面的分析,然后找到加密電路,然后利用芯片線路修改的設備將芯片的線路做一些修改,讓加密電路失效,讓加密的DSP或CPLD變成了不加密的芯片從而可以讀出代碼。如TMS320LF2407A解密,TMS320F28335解密、TMS320F2812解密就是采用這種方法。

了解了這些破解芯片的方法,相應的,我們在設計芯片時也要對這些漏洞盡量加以規避,使自己的芯片更加安全。對于新手來說,設計一款單片機不是容易的事,如果有現成的模塊可以使用將會大大節省時間和精力,技新網就有專門為電子工程師提供的電子設計模塊,并且全部使用立創商城的正品元器件,質量可靠、售后有保障,可以幫助大家快速搭建產品原型,縮短制作周期。


此文關鍵字: 芯片解密