資料介紹
MCU的安全等級正在逐步提升,一些公司甚至推出了安全主控,這是很好的現象,說明大家越來越重視嵌入式領域的信息安全和程序安全了。但對于很多特殊行業,比如消費類電子產品,低成本的通訊模塊、電源控制模塊等等,迫于成本壓力以及更新換代速度問題,都無法使用更安全的主控MCU,有很大一部分產品甚至還在使用51單片機。 大家可能都知道破解51單片機是很容易的,但為什么容易,又是如何來破解的,可能很多人就不大清楚了,我在這里結合網上一些前輩整理的資料,和自己的經驗,對MCU破解技術做個簡單分析。 大家不要把解密想的很復雜,他不像研發一款產品那樣,先確定客戶需求或者新產品主要功能,然后立項確定技術指標,分配軟硬件開發任務,基于硬件調試程序,然后驗證功能,測試bug,還要做環境試驗。行業里解密的方法有很多,每個人破解的思路也不一樣。但是大致分為幾種。 一. 軟件破解 利用軟件破解目標單片機的方法,利用這種方法,不會對目標MCU元器件造成物理損傷。主要是對WINBONGD,SYNCMOS單片機和GAL門陣列,這種利用軟件解密設備,按照一定的步驟操作,執行片內的程序送到片外的指令,然后用解密的設備進行截獲,這樣芯片內部的程序就被解密完成了(GAL采用邏輯猜測),就可以得到加密單片機中的程序。 二. 硬件破解 流程如下: 1、測試 使用高檔編程器等設備測試芯片是否正常,并把配置字保存。 2、開蓋 采用手工或專用開蓋設備進行開蓋處理,這里說的開蓋并不是說單片機或者其他MCU真有一個蓋。簡單解釋一下,MCU其實是一個大規模集成電路,它是由N個電路組合而成的,而晶圓就是搭載集成電路的載體。將晶圓進行封裝后,就形成了我們日常所用的IC芯片,封裝形式可以有多種,比如TSSOP28、QFN28等,大家可以自己去百度搜索,這里不再復述。 3、做電路修改 對不同芯片,提供對應的圖紙,讓廠家做電路修改,目的是讓MCU的存儲區變得可讀。有些MCU默認不允許讀出Flash或者E2PROM中的數據,因為有硬件電路做保護,而一旦切斷加密連線,程序就暴露可讀了。如圖2所示 (切割掉加密熔絲,這樣就可以直接讀出芯片內部程序) 4、讀程序 取回修改過的MCU,直接用編程器讀出程序,可以是HEX文件,或者BIN文件。 5、燒寫樣片給客戶 按照讀出的程序和配置,燒寫到目標MCU中,這樣就完成了MCU的破解。 至此,硬件破解法成功完成。 三. 軟硬兼施 采用軟件和硬件結合的方法,需要對芯片的內部結構非常的熟悉。 另外還有其他一些破解技術,例如電子探測攻擊、過錯產生技術等等,但是最終目的只有一個,就是能夠模仿出目標MCU的功能就可以了。 看到這里大家應該明白一個道理,破解MCU并不能做到把MCU中的程序原封不動的還原出來。目前的技術也做不到,至少國內應該做不到。針對以上情況,加密芯片應運而生,初期確實能很好的保護MCU的安全,但很快就被找到了漏洞。 我舉個實際破解的例子分析一下,大家就能夠明白了。 加密原理: MCU和加密芯片各存儲一條認證秘鑰,存儲同樣的加密算法; MCU產生隨機數發給加密芯片,后者用秘鑰加密后將密文返回,此時MCU解密后,比對明文是否和生成的隨機數相等。如果相等,程序正常運行;如果不相等,出錯處理。 因為盜版商沒有這條秘鑰,加密芯片與MCU交互的數據又是隨機變化的,無法找到規律,所以只能把加密芯片的程序破解了,再復制一片加密芯片才能讓MCU的程序跑起來。而加密芯片不同于通用MCU,它內部有很多安全機制,破解難度非常大。 這種加密方案看似非常安全,但其實還是有漏洞的。 破解方法: 首先按照第二種破解方法,獲取到MCU的HEX文件。此處省略N步,不再復述。 使用軟件進行HEX反編譯,反編譯軟件目前有很多。 在反編譯的程序中,找到對比點,比如圖3所示,CJNE語句可能就是這個對比點。因此只要把箭頭2那行語句刪除,然后重新把匯編語言下載到MCU中,破解工作就完成了。此時即使沒有加密芯片,MCU也能正常運行了。 其實原因很簡單。MCU是要對加密芯片的返回值進行判斷的,那么不讓他做判斷,這樣一來不管加密芯片返回值是什么,程序都能正常運行。 因此這種加密方案很快就被破解了。當然也不是這么絕對,因為有些MCU即使剖片也不能獲得里面的HEX或者BIN文件,所以這種破解方案也要看MCU的安全等級夠不夠高。但是足以說明一個問題,這種通過對比加密結果來實現加密的方案,安全等級還是不夠高,還是有破解漏洞的。 因為篇幅有限,本文只做解密技術的簡單介紹。所謂知己知彼,百戰百勝,唯有了解了破解技術,才能更有效的做加密防護。 (mbbeetchina)
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 時間服務器技術資料下載 9次下載
- EMI技術資料 76次下載
- 一文詳談波峰焊接工藝資料下載
- 用于電池供電世界中的USB技術資料下載
- 藍牙低功耗技術資料下載
- AMOLED的幾種常規技術資料下載
- 一文了解SiP封裝資料下載
- 一文概述嵌入式總線技術資料下載
- 物聯網的關鍵技術資料下載
- 老外揭秘:各種MCU的攻防技術資料下載
- 一文讀懂:LoRa模塊使用原理資料下載
- 一文讀懂SRAM和DRAM資料下載
- 藍牙文件推送技術資料下載
- 最簡單的直流電源防反接技術資料下載
- 一個MCU項目問題的硬件軟件分析資料下載
- 單片機為什么被認為是一門簡單的技術? 173次閱讀
- 關于ECU 和 MCU ,你了解多少? 2301次閱讀
- 一文讀懂車載MCU 3074次閱讀
- 一文詳解精密封裝技術 1514次閱讀
- 一個簡單的日志分析工具Wbread介紹 983次閱讀
- 一文解析MCU的發展 1203次閱讀
- 一文弄懂什么是協議分析儀 9341次閱讀
- 一文教你如何破解MCU 3666次閱讀
- 一文看懂汽車CAN總線技術原理 9.8w次閱讀
- 什么是MCU?MCU市場現狀分析 9967次閱讀
- 你知道MCU還可以簡單的功能增強嗎_如何增強? 1556次閱讀
- 3d打印簡單介紹及其原理分析_三種主流技術分析 6.2w次閱讀
- EDA技術的簡單介紹及特點分析 1.1w次閱讀
- 對MCU破解技術做個簡單分析 6193次閱讀
- adc0809中文資料下載 adc0809引腳圖封裝及應用電路 2w次閱讀
下載排行
本周
- 1TC358743XBG評估板參考手冊
- 1.36 MB | 330次下載 | 免費
- 2開關電源基礎知識
- 5.73 MB | 6次下載 | 免費
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設計
- 0.60 MB | 3次下載 | 免費
- 5基于FPGA的光纖通信系統的設計與實現
- 0.61 MB | 2次下載 | 免費
- 6基于FPGA的C8051F單片機開發板設計
- 0.70 MB | 2次下載 | 免費
- 751單片機窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費
- 8基于51單片機的RGB調色燈程序仿真
- 0.86 MB | 2次下載 | 免費
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 2555集成電路應用800例(新編版)
- 0.00 MB | 33564次下載 | 免費
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費
- 4開關電源設計實例指南
- 未知 | 21548次下載 | 免費
- 5電氣工程師手冊免費下載(新編第二版pdf電子書)
- 0.00 MB | 15349次下載 | 免費
- 6數字電路基礎pdf(下載)
- 未知 | 13750次下載 | 免費
- 7電子制作實例集錦 下載
- 未知 | 8113次下載 | 免費
- 8《LED驅動電路設計》 溫德爾著
- 0.00 MB | 6653次下載 | 免費
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費
- 2protel99se軟件下載(可英文版轉中文版)
- 78.1 MB | 537796次下載 | 免費
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費
- 6電路仿真軟件multisim 10.0免費下載
- 340992 | 191185次下載 | 免費
- 7十天學會AVR單片機與C語言視頻教程 下載
- 158M | 183278次下載 | 免費
- 8proe5.0野火版下載(中文版免費下載)
- 未知 | 138040次下載 | 免費
評論
查看更多