基于MCU的設(shè)計(jì)可以通過(guò)將算法編碼到設(shè)備中來(lái)輕松添加專用和差異化功能。舊算法或全新方法的新變化可以使成功的產(chǎn)品與失敗之間產(chǎn)生差異。不幸的是,使用MCU還可以打開您的設(shè)計(jì)以逆向工程,競(jìng)爭(zhēng)對(duì)手會(huì)竊取您的辛勤工作并從您的創(chuàng)新中獲益。當(dāng)然,律師可以參與并可能進(jìn)行報(bào)復(fù),但通常只有在損害發(fā)生后才能進(jìn)行。更好的方法是保護(hù)您的設(shè)計(jì)免受常見(jiàn)的硬件篡改入侵,這些入侵用于訪問(wèn)您的代碼并竊取您寶貴的IP。
本文將介紹硬件“黑客”用于訪問(wèn)貴重設(shè)計(jì)IP的一些常用方法。新的MCU包括幾個(gè)關(guān)鍵功能,可用于設(shè)置一些困難的障礙,以防止硬件篡改。這些防篡改設(shè)計(jì)技術(shù)可以成為MCU設(shè)計(jì)人員技術(shù)“訣竅”的重要組成部分。
片上防篡改:管理員模式
最新創(chuàng)新之一在MCU中已經(jīng)包含了多年來(lái)在標(biāo)準(zhǔn)CPU中使用的功能。最早的防篡改功能之一,將用戶操作模式與管理員操作模式分離(管理員模式通常與CPU中的操作系統(tǒng)模式相關(guān))已經(jīng)出現(xiàn)在MCU設(shè)備中。此功能允許監(jiān)督軟件對(duì)受保護(hù)資源進(jìn)行特權(quán)訪問(wèn),同時(shí)限制或取消對(duì)較低權(quán)限用戶程序的訪問(wèn)。這使得黑客通過(guò)用戶軟件代碼錯(cuò)誤獲得對(duì)系統(tǒng)的控制變得更加困難。即使可以使用用戶錯(cuò)誤來(lái)獲得對(duì)MCU的控制,它仍然會(huì)停留在用戶模式,而無(wú)法訪問(wèn)與配置,編程,調(diào)試和系統(tǒng)控制相關(guān)的最重要的系統(tǒng)元素。
作為一個(gè)說(shuō)明性示例,飛思卡爾Kinetis K60 MCU系列支持管理員和用戶模式。這允許系統(tǒng)保持對(duì)配置外圍設(shè)備,訪問(wèn)受保護(hù)的存儲(chǔ)器空間,限制系統(tǒng)代碼的重新編程以及限制對(duì)用于保護(hù)用戶數(shù)據(jù)的加密功能的訪問(wèn)的控制。許多關(guān)鍵的MCU系統(tǒng)資源需要一種監(jiān)控模式來(lái)訪問(wèn)配置寄存器。例如,多功能時(shí)鐘發(fā)生器(MCG)將對(duì)所有相關(guān)控制寄存器的寫訪問(wèn)限制為管理員模式(圖1)。這消除了未經(jīng)授權(quán)篡改時(shí)鐘設(shè)置的可能性,時(shí)鐘設(shè)置是硬件黑客試圖禁用系統(tǒng)操作的潛在攻擊向量。此外,管理程序模式可防止用戶代碼無(wú)意中訪問(wèn)系統(tǒng)資源,然后可能為攻擊者提供方便的“后門”,以獲取對(duì)其他受保護(hù)資源的訪問(wèn)權(quán)。
圖1:飛思卡爾Kinetis K60 MCU多功能時(shí)鐘發(fā)生器具有僅限超級(jí)用戶對(duì)敏感控制寄存器的寫訪問(wèn)權(quán)限(由飛思卡爾提供)
許多其他外設(shè)和系統(tǒng)功能具有類似的訪問(wèn)保護(hù)。最敏感的元素,如閃存控制器,只能將對(duì)控制和數(shù)據(jù)寄存器的寫訪問(wèn)限制為管理員模式。閃存控制器中的高速緩沖存儲(chǔ)器甚至可以防止未經(jīng)授權(quán)的讀取,因此黑客無(wú)法“窺探”其他敏感數(shù)據(jù)。其他不太敏感的元件具有不太嚴(yán)格的訪問(wèn)要求,但即使CAN總線控制寄存器也可以防止未經(jīng)授權(quán)的寫入,因?yàn)槟幌M诳湍軌蚩刂颇嚨膭x車!
篡改 - 檢測(cè)功能
無(wú)論您在保護(hù)設(shè)計(jì)方面有多徹底,仍有可能發(fā)生篡改。篡改檢測(cè)的幾種方法是可能的并且通常易于實(shí)現(xiàn)。例如,為了檢測(cè)板級(jí)篡改事件(例如硬件探測(cè),提升信號(hào)跡線和電源改變),通常在印刷電路板上的內(nèi)部層中放置特殊的隱藏篡改檢測(cè)跡線。如果攻擊者試圖鉆電路板以訪問(wèn)關(guān)鍵信號(hào),則可以檢測(cè)到對(duì)隱藏軌跡的影響。另一種常見(jiàn)方法是使用機(jī)械篡改檢測(cè)蓋,可以檢測(cè)攻擊者試圖訪問(wèn)封閉設(shè)備。
大多數(shù)篡改檢測(cè)方法都可以生成篡改檢測(cè)信號(hào),然后由MCU決定采取行動(dòng) - 通常非常快,因此攻擊者幾乎沒(méi)有可用于惡作劇的時(shí)間。當(dāng)檢測(cè)到篡改事件時(shí),MCU可能采取的常見(jiàn)操作是快速記錄事件,然后重置系統(tǒng),關(guān)閉關(guān)鍵部分的電源,甚至清除敏感信息。記錄事件可以是逐步升級(jí)“懲罰”篡改生成的有用方法。如果篡改是一個(gè)反復(fù)發(fā)生的事件,那么應(yīng)用更嚴(yán)厲的響應(yīng)(可能是擦除代碼和敏感數(shù)據(jù))可能是謹(jǐn)慎的。如果這是第一次篡改事件,那么較不嚴(yán)重的響應(yīng)(可能只是系統(tǒng)重置)可能更合適。如果日志將用于確定升級(jí)過(guò)程,則捕獲篡改事件的時(shí)間戳非常重要。
某些MCU包括監(jiān)視事件輸入并生成用于記錄的時(shí)間戳的功能。例如,德州儀器(TI)MSP430FR5739 MCU具有實(shí)時(shí)時(shí)鐘外設(shè)(RTC)RTC_C,與其他RTC外設(shè)類似,如下面的圖2所示。但是,RTC_C具有額外的篡改檢測(cè)事件記錄功能。
圖2:德州儀器MSP430定時(shí)器/計(jì)數(shù)器資源(由德州儀器公司提供)
事件/篡改檢測(cè)時(shí)間戳可以監(jiān)視兩個(gè)MCU輸入,當(dāng)其中一個(gè)變?yōu)榛顒?dòng)狀態(tài)時(shí),會(huì)生成篡改事件。輸入可以來(lái)自用于檢測(cè)篡改保護(hù)蓋的移除的開關(guān),移除備用電池或任何數(shù)量的巧妙的隱藏篡改檢測(cè)方法。激活篡改事件時(shí)捕獲實(shí)時(shí)時(shí)鐘的值,它可以用作記錄活動(dòng)的一部分。此值可用于查看篡改事件是否以更高的頻率發(fā)生,以便可以應(yīng)用不斷升級(jí)的懲罰。
使用事件監(jiān)視器記錄器進(jìn)行篡改報(bào)告
為了簡(jiǎn)化捕獲和記錄篡改事件的過(guò)程,一些MCU為篡改事件檢測(cè)和時(shí)間添加了更多功能 - 郵票捕獲功能。例如,恩智浦LPC1800 MCU具有專用的事件監(jiān)視器/記錄器外圍設(shè)備,可快速捕獲,記錄和響應(yīng)篡改事件。如圖3中的框圖所示,恩智浦LPC1800最多可監(jiān)控三個(gè)篡改事件輸入,并可捕獲事件的時(shí)間戳。為第一個(gè)篡改事件和最后一個(gè)篡改事件存儲(chǔ)時(shí)間戳,以便于查看它們發(fā)生的時(shí)間段。整個(gè)外圍設(shè)備在備用電池電源域運(yùn)行,RTC也是如此,即使在電源被移除或斷電情況下發(fā)生事件也可以記錄事件 - 這是黑客使用的常用方法繞過(guò)基于機(jī)箱的篡改檢測(cè)方案。
圖3:恩智浦LPC1800 MCU系列事件監(jiān)控記錄儀方框圖(由恩智浦提供)
請(qǐng)注意,即使MCU處于低功耗狀態(tài),也可能會(huì)產(chǎn)生中斷或喚醒事件。這確保了篡改事件可以快速響應(yīng),因此黑客在應(yīng)用懲罰之前有最少的時(shí)間來(lái)攻擊系統(tǒng)。隨著安全性和篡改檢測(cè)和防護(hù)變得越來(lái)越重要,期望將更多功能添加到專用篡改外圍設(shè)備中,以便以更低的開銷保護(hù)設(shè)計(jì)。
參考設(shè)計(jì)向您展示
了解MCU設(shè)計(jì)的篡改檢測(cè)和預(yù)防功能的最有效方法之一是查看參考設(shè)計(jì)。許多MCU供應(yīng)商為其產(chǎn)品提供參考設(shè)計(jì),并且在某些情況下,它們說(shuō)明了高級(jí)功能,例如篡改檢測(cè)和預(yù)防。僅舉一個(gè)例子,Microchip的能量計(jì)參考設(shè)計(jì)非常接近基于PIC18F MCU的完整系統(tǒng)。部分設(shè)計(jì)包括多種篡改檢測(cè)功能,包括電源反轉(zhuǎn),頻率干擾,低電流,外部施加的磁場(chǎng)檢測(cè)以及篡改蓋移除檢測(cè)開關(guān)。下面的圖4顯示了系統(tǒng)和檢測(cè)到篡改事件時(shí)記錄的篡改代碼列表。
圖4:Microchip電表參考設(shè)計(jì)和防篡改功能(由Microchip提供)
硬件布局,原理圖和物料清單可用于充分利用Microchip在參考設(shè)計(jì)中投入的工作。該代碼也可用,可用作您自己的篡改檢測(cè)和日志記錄方案的起點(diǎn),用于基于Microchip PIC 18F MCU的設(shè)計(jì)。您還可以使用Digi-Key參考設(shè)計(jì)庫(kù)并搜索“Tamper”,以輕松生成具有篡改相關(guān)功能的參考設(shè)計(jì)列表。
結(jié)論
使用防篡改技術(shù)對(duì)于保護(hù)為基于MCU的系統(tǒng)創(chuàng)建的有價(jià)值的設(shè)計(jì)IP至關(guān)重要。現(xiàn)代MCU設(shè)備中提供了多種防篡改技術(shù),即使是最具攻擊性的硬件黑客,也可以有效阻止這些技術(shù)。
-
mcu
+關(guān)注
關(guān)注
146文章
17981瀏覽量
366805 -
飛思卡爾
+關(guān)注
關(guān)注
24文章
852瀏覽量
78970 -
cpu
+關(guān)注
關(guān)注
68文章
11080瀏覽量
217045
發(fā)布評(píng)論請(qǐng)先 登錄
酒店智能化都用到哪些芯片之高速互聯(lián)型MCU CH32V317
抗干擾防篡改:無(wú)線開關(guān)模塊的“雙保險(xiǎn)”設(shè)計(jì)實(shí)踐

PoE交換機(jī)在安防監(jiān)控系統(tǒng)中的關(guān)鍵作用
物聯(lián)網(wǎng)BLE技術(shù)助力防丟器方案PTR5618
紫荷科技:“五重防護(hù)”讓網(wǎng)頁(yè)防篡改有了“錦衣衛(wèi)”
RISC-V MCU技術(shù)
MCU在車載系統(tǒng)中的展望
愛(ài)普生RTC實(shí)時(shí)時(shí)鐘模塊在安防監(jiān)控設(shè)備領(lǐng)域的應(yīng)用

使用MSP MCU的系統(tǒng)級(jí)篡改保護(hù)

英銳恩科技引領(lǐng)微控制器MCU技術(shù)創(chuàng)新,賦能多元化應(yīng)用!
國(guó)產(chǎn)MCU有推薦嗎?最好是經(jīng)過(guò)市場(chǎng)驗(yàn)證的!
LoRa無(wú)線一鍵報(bào)警安防建設(shè)系統(tǒng)
光伏發(fā)電系統(tǒng)防孤島技術(shù)

評(píng)論