RM新时代网站-首页

0
  • 聊天消息
  • 系統(tǒng)消息
  • 評(píng)論與回復(fù)
登錄后你可以
  • 下載海量資料
  • 學(xué)習(xí)在線課程
  • 觀看技術(shù)視頻
  • 寫(xiě)文章/發(fā)帖/加入社區(qū)
會(huì)員中心
創(chuàng)作中心

完善資料讓更多小伙伴認(rèn)識(shí)你,還能領(lǐng)取20積分哦,立即完善>

3天內(nèi)不再提示

對(duì)MCU破解技術(shù)做個(gè)簡(jiǎn)單分析

h1654155971.7688 ? 2017-12-26 09:16 ? 次閱讀

MCU的安全等級(jí)正在逐步提升,一些公司甚至推出了安全主控,這是很好的現(xiàn)象,說(shuō)明大家越來(lái)越重視嵌入式領(lǐng)域的信息安全和程序安全了。但對(duì)于很多特殊行業(yè),比如消費(fèi)類(lèi)電子產(chǎn)品,低成本的通訊模塊、電源控制模塊等等,迫于成本壓力以及更新?lián)Q代速度問(wèn)題,都無(wú)法使用更安全的主控MCU,有很大一部分產(chǎn)品甚至還在使用51單片機(jī)。

大家可能都知道破解51單片機(jī)是很容易的,但為什么容易,又是如何來(lái)破解的,可能很多人就不大清楚了,我在這里結(jié)合網(wǎng)上一些前輩整理的資料,和自己的經(jīng)驗(yàn),對(duì)MCU破解技術(shù)做個(gè)簡(jiǎn)單分析。

大家不要把解密想的很復(fù)雜,他不像研發(fā)一款產(chǎn)品那樣,先確定客戶需求或者新產(chǎn)品主要功能,然后立項(xiàng)確定技術(shù)指標(biāo),分配軟硬件開(kāi)發(fā)任務(wù),基于硬件調(diào)試程序,然后驗(yàn)證功能,測(cè)試bug,還要做環(huán)境試驗(yàn)。行業(yè)里解密的方法有很多,每個(gè)人破解的思路也不一樣。但是大致分為幾種。

1

軟件破解

利用軟件破解目標(biāo)單片機(jī)的方法,利用這種方法,不會(huì)對(duì)目標(biāo)MCU元器件造成物理?yè)p傷。主要是對(duì)WINBONGD,SYNCMOS單片機(jī)和GAL門(mén)陣列,這種利用軟件解密設(shè)備,按照一定的步驟操作,執(zhí)行片內(nèi)的程序送到片外的指令,然后用解密的設(shè)備進(jìn)行截獲,這樣芯片內(nèi)部的程序就被解密完成了(GAL采用邏輯猜測(cè)),就可以得到加密單片機(jī)中的程序。

2

硬件破解

流程如下:

1、測(cè)試

使用高檔編程器等設(shè)備測(cè)試芯片是否正常,并把配置字保存。

2、開(kāi)蓋

采用手工或?qū)S瞄_(kāi)蓋設(shè)備進(jìn)行開(kāi)蓋處理,這里說(shuō)的開(kāi)蓋并不是說(shuō)單片機(jī)或者其他MCU真有一個(gè)蓋。簡(jiǎn)單解釋一下,MCU其實(shí)是一個(gè)大規(guī)模集成電路,它是由N個(gè)電路組合而成的,而晶圓就是搭載集成電路的載體。將晶圓進(jìn)行封裝后,就形成了我們?nèi)粘K玫?a target="_blank">IC芯片,封裝形式可以有多種,比如TSSOP28、QFN28等,大家可以自己去百度搜索,這里不再?gòu)?fù)述。

3、做電路修改

對(duì)不同芯片,提供對(duì)應(yīng)的圖紙,讓廠家做電路修改,目的是讓MCU的存儲(chǔ)區(qū)變得可讀。有些MCU默認(rèn)不允許讀出Flash或者E2PROM中的數(shù)據(jù),因?yàn)橛杏布娐纷霰Wo(hù),而一旦切斷加密連線,程序就暴露可讀了。如圖2所示

4、讀程序

取回修改過(guò)的MCU,直接用編程器讀出程序,可以是HEX文件,或者BIN文件。

5、燒寫(xiě)樣片給客戶

按照讀出的程序和配置,燒寫(xiě)到目標(biāo)MCU中,這樣就完成了MCU的破解。 至此,硬件破解法成功完成。

3

軟硬兼施

采用軟件和硬件結(jié)合的方法,需要對(duì)芯片的內(nèi)部結(jié)構(gòu)非常的熟悉。

另外還有其他一些破解技術(shù),例如電子探測(cè)攻擊、過(guò)錯(cuò)產(chǎn)生技術(shù)等等,但是最終目的只有一個(gè),就是能夠模仿出目標(biāo)MCU的功能就可以了。

看到這里大家應(yīng)該明白一個(gè)道理,破解MCU并不能做到把MCU中的程序原封不動(dòng)的還原出來(lái)。目前的技術(shù)也做不到,至少國(guó)內(nèi)應(yīng)該做不到。針對(duì)以上情況,加密芯片應(yīng)運(yùn)而生,初期確實(shí)能很好的保護(hù)MCU的安全,但很快就被找到了漏洞。

我舉個(gè)實(shí)際破解的例子分析一下,大家就能夠明白了。

加密原理:

MCU和加密芯片各存儲(chǔ)一條認(rèn)證秘鑰,存儲(chǔ)同樣的加密算法;

MCU產(chǎn)生隨機(jī)數(shù)發(fā)給加密芯片,后者用秘鑰加密后將密文返回,此時(shí)MCU解密后,比對(duì)明文是否和生成的隨機(jī)數(shù)相等。如果相等,程序正常運(yùn)行;如果不相等,出錯(cuò)處理。

因?yàn)楸I版商沒(méi)有這條秘鑰,加密芯片與MCU交互的數(shù)據(jù)又是隨機(jī)變化的,無(wú)法找到規(guī)律,所以只能把加密芯片的程序破解了,再?gòu)?fù)制一片加密芯片才能讓MCU的程序跑起來(lái)。而加密芯片不同于通用MCU,它內(nèi)部有很多安全機(jī)制,破解難度非常大。

這種加密方案看似非常安全,但其實(shí)還是有漏洞的。

破解方法:

首先按照第二種破解方法,獲取到MCU的HEX文件。此處省略N步,不再?gòu)?fù)述。

使用軟件進(jìn)行HEX反編譯,反編譯軟件目前有很多。

在反編譯的程序中,找到對(duì)比點(diǎn),比如圖3所示,CJNE語(yǔ)句可能就是這個(gè)對(duì)比點(diǎn)。因此只要把箭頭2那行語(yǔ)句刪除,然后重新把匯編語(yǔ)言下載到MCU中,破解工作就完成了。此時(shí)即使沒(méi)有加密芯片,MCU也能正常運(yùn)行了。

對(duì)MCU破解技術(shù)做個(gè)簡(jiǎn)單分析

其實(shí)原因很簡(jiǎn)單。MCU是要對(duì)加密芯片的返回值進(jìn)行判斷的,那么不讓他做判斷,這樣一來(lái)不管加密芯片返回值是什么,程序都能正常運(yùn)行。

因此這種加密方案很快就被破解了。當(dāng)然也不是這么絕對(duì),因?yàn)橛行㎝CU即使剖片也不能獲得里面的HEX或者BIN文件,所以這種破解方案也要看MCU的安全等級(jí)夠不夠高。但是足以說(shuō)明一個(gè)問(wèn)題,這種通過(guò)對(duì)比加密結(jié)果來(lái)實(shí)現(xiàn)加密的方案,安全等級(jí)還是不夠高,還是有破解漏洞的。

因?yàn)槠邢?,本期只做解密技術(shù)的簡(jiǎn)單介紹。所謂知己知彼,百戰(zhàn)百勝,唯有了解了破解技術(shù),才能更有效的做加密防護(hù)。

聲明:本文內(nèi)容及配圖由入駐作者撰寫(xiě)或者入駐合作網(wǎng)站授權(quán)轉(zhuǎn)載。文章觀點(diǎn)僅代表作者本人,不代表電子發(fā)燒友網(wǎng)立場(chǎng)。文章及其配圖僅供工程師學(xué)習(xí)之用,如有內(nèi)容侵權(quán)或者其他違規(guī)問(wèn)題,請(qǐng)聯(lián)系本站處理。 舉報(bào)投訴
  • mcu
    mcu
    +關(guān)注

    關(guān)注

    146

    文章

    17123

    瀏覽量

    350980
  • 破解
    +關(guān)注

    關(guān)注

    2

    文章

    23

    瀏覽量

    14257

原文標(biāo)題:三種破解MCU 技術(shù),就是這么簡(jiǎn)單!

文章出處:【微信號(hào):weixin21ic,微信公眾號(hào):21ic電子網(wǎng)】歡迎添加關(guān)注!文章轉(zhuǎn)載請(qǐng)注明出處。

收藏 人收藏

    評(píng)論

    相關(guān)推薦

    三種方法教你如何破解51單片機(jī)

    大家可能都知道破解51單片機(jī)是很容易的,但為什么容易,又是如何來(lái)破解的,可能很多人就不大清楚了,我在這里結(jié)合網(wǎng)上一些前輩整理的資料,和自己的經(jīng)驗(yàn),對(duì)MCU破解
    的頭像 發(fā)表于 11-26 09:03 ?8w次閱讀

    MCU解密全攻略 為何所有MCU都能被破解

    本文介紹了眾多微處理器MCU和智能卡破解的方法:包括已知的非侵入式攻擊,如功耗分析和噪聲干擾以及侵入式攻擊,如反向工程和微探測(cè)分析。并討論了眾多防護(hù)
    發(fā)表于 08-30 11:29 ?4.1w次閱讀
    <b class='flag-5'>MCU</b>解密全攻略 為何所有<b class='flag-5'>MCU</b>都能被<b class='flag-5'>破解</b>

    轉(zhuǎn):淺談MCU破解技術(shù)

    方案也要看MCU的 安全等級(jí)夠不夠高。但是足以說(shuō)明一個(gè)問(wèn)題,這種通過(guò)對(duì)比加密結(jié)果來(lái)實(shí)現(xiàn)加密的方案,安全等級(jí)還是不夠高,還是有破解漏洞的。因?yàn)槠邢?,本篇只做解?b class='flag-5'>技術(shù)簡(jiǎn)單介紹。所謂知
    發(fā)表于 08-23 10:14

    破解MCU,真的可以如此簡(jiǎn)單

    多種不同的功耗分析技術(shù)用在破解密碼算法上。整個(gè)分析過(guò)程是相對(duì)簡(jiǎn)單的,只需要標(biāo)準(zhǔn)的現(xiàn)有的廉價(jià)儀器設(shè)備。 功耗
    發(fā)表于 12-09 17:11

    MCU怎么應(yīng)對(duì)攻擊與破解?

    地區(qū)別開(kāi),故運(yùn)算部分能被推測(cè)出。處理器的不同單元在時(shí)鐘沿相關(guān)的不同時(shí)間里有獨(dú)有的開(kāi)關(guān)狀態(tài),能被高頻儀器分離出來(lái)。有多種不同的功耗分析技術(shù)用在破解密碼算法上。整個(gè)分析過(guò)程是相對(duì)
    發(fā)表于 12-21 18:12

    單片機(jī)解密方法知多少,如何做好加密防護(hù)應(yīng)對(duì)?

    很多人就不大清楚了,我在這里結(jié)合網(wǎng)上一些前輩整理的資料,和自己的經(jīng)驗(yàn),對(duì) MCU 破解技術(shù)做個(gè)簡(jiǎn)單分析
    發(fā)表于 12-10 11:52

    請(qǐng)問(wèn)破解MCU技術(shù)的方法有哪幾種?

    就不大清楚了,我在這里結(jié)合網(wǎng)上一些前輩整理的資料和自己的經(jīng)驗(yàn),對(duì)MCU破解技術(shù)做個(gè)簡(jiǎn)單分析。  
    發(fā)表于 11-25 06:12

    MCU破解技術(shù)分析

    MCU破解技術(shù)分析
    發(fā)表于 02-03 07:17

    MCU破解技術(shù)看了就知道

    簡(jiǎn)單分析MCU破解技術(shù)
    發(fā)表于 03-04 08:42

    彩虹加密狗破解技巧數(shù)據(jù)代碼分析

    彩虹加密狗破解技巧數(shù)據(jù)代碼分析以上是彩虹加密狗破解技巧數(shù)據(jù)代碼分析簡(jiǎn)單介紹,文章由(逆向開(kāi)發(fā)技術(shù)
    發(fā)表于 01-24 08:00 ?9次下載
    彩虹加密狗<b class='flag-5'>破解</b>技巧數(shù)據(jù)代碼<b class='flag-5'>分析</b>

    一文簡(jiǎn)單分析MCU技術(shù)資料下載

    電子發(fā)燒友網(wǎng)為你提供一文簡(jiǎn)單分析MCU破解技術(shù)資料下載的電子資料下載,更有其他相關(guān)的電路圖、源代碼、課件教程、中文資料、英文資料、參考設(shè)計(jì)、
    發(fā)表于 04-04 08:52 ?10次下載

    簡(jiǎn)單MCU加密方法,防破解、防抄襲、防山寨

    前言目前MCU程序破解非常容易,最簡(jiǎn)單粗暴的方法就是直接將MCU內(nèi)部flash整塊copy走,再copy下你的硬件和結(jié)構(gòu),這樣很快就能山寨出你的產(chǎn)品。這樣很不尊重你的勞動(dòng)成果,為了保護(hù)
    發(fā)表于 11-05 19:21 ?16次下載
    <b class='flag-5'>簡(jiǎn)單</b>的<b class='flag-5'>MCU</b>加密方法,防<b class='flag-5'>破解</b>、防抄襲、防山寨

    三種方法教你如何破解51單片機(jī)

    大家可能都知道破解51單片機(jī)是很容易的,但為什么容易,又是如何來(lái)破解的,可能很多人就不大清楚了。本文結(jié)合網(wǎng)上一些前輩整理的資料的經(jīng)驗(yàn)對(duì)MCU破解技術(shù)
    發(fā)表于 02-10 11:39 ?12次下載
    三種方法教你如何<b class='flag-5'>破解</b>51單片機(jī)

    MCU破解技術(shù)簡(jiǎn)單分析

    利用軟件破解目標(biāo)單片機(jī)的方法,利用這種方法,不會(huì)對(duì)目標(biāo)MCU元器件造成物理?yè)p傷。主要是對(duì)WINBONGD,SYNCMOS單片機(jī)和GAL門(mén)陣列,這種利用軟件解密設(shè)備,按照一定的步驟操作,執(zhí)行片內(nèi)的程序送到片外的指令
    的頭像 發(fā)表于 07-05 09:39 ?1283次閱讀

    快來(lái)看看你的MCU是怎么被破解

    大家可能都知道破解 51 單片機(jī)是很容易的,但為什么容易,又是如何來(lái)破解的,可能很多人就不大清楚了。其實(shí)對(duì)于MCU破解簡(jiǎn)單來(lái)講,它并不像
    發(fā)表于 05-16 11:10 ?5613次閱讀
    快來(lái)看看你的<b class='flag-5'>MCU</b>是怎么被<b class='flag-5'>破解</b>的
    RM新时代网站-首页