資料介紹
隨著電子裝置擔(dān)負(fù)的責(zé)任越來(lái)越多,我們放入蜂窩式電話、媒體播放器、機(jī)頂盒以及其他電器的個(gè)人信息也越來(lái)越多。于是,嵌入式系統(tǒng)的安全性涵蓋了隱私信息保護(hù)的方方面面,從在商業(yè)終端(POS)上進(jìn)行的信用卡交易的真實(shí)性保護(hù),一直到私人語(yǔ)音郵件的防護(hù)。
在這篇調(diào)研報(bào)告中,我們將回顧最基本的攻擊狀況、系統(tǒng)弱點(diǎn),并討論最好的防衛(wèi)策略。我們從硬件、軟件及軟硬件混合的角度來(lái)分析系統(tǒng)的強(qiáng)化,比如安全引導(dǎo)、系統(tǒng)管理程序?qū)Υ鎯?chǔ)器的控制。
產(chǎn)品層次的正式安全認(rèn)證可以具體到某一特定的應(yīng)用,于是,詳情會(huì)被保存得相當(dāng)隱秘,這也就不難理解了。同樣的,我們也從安全的角度,提出能夠產(chǎn)生有用度量的方法,來(lái)決定SOC及系統(tǒng)組件的一般魯棒性和適用性。(注:魯棒性(robustness)就是系統(tǒng)的健壯性。它是在異常和危險(xiǎn)情況下系統(tǒng)生存的關(guān)鍵。比如說(shuō),計(jì)算機(jī)軟件在輸入錯(cuò)誤、磁盤(pán)故障、網(wǎng)絡(luò)過(guò)載或有意攻擊情況下,能否不死機(jī)、不崩潰,就是該軟件的魯棒性。)
攻擊狀況分析
知道我們所擔(dān)心的是什么,這是很重要的。它們的技巧是什么?它們的資源有幾種?威脅的類型千變?nèi)f化,從相對(duì)低強(qiáng)度的軟件攻擊—這種攻擊基于一些可在網(wǎng)上新聞組(如:alt.hacker或各種各樣的“warez”站點(diǎn))找到的軟件—一直到資金充足的工業(yè)間諜活動(dòng)。
攻擊狀況可合乎情理地劃分為如下幾類:
。一個(gè)聰明的外部人員:這個(gè)人很聰明但對(duì)系統(tǒng)的了解卻很有限。他已經(jīng)可以使用先進(jìn)程度中等的設(shè)備,并可以利用已知的弱點(diǎn)而不是制造新的弱點(diǎn)。
。一個(gè)充分了解系統(tǒng)的內(nèi)部人員:這個(gè)人受過(guò)專業(yè)技術(shù)教育并擁有技術(shù)方面的經(jīng)驗(yàn)。他對(duì)系統(tǒng)各個(gè)部件的了解程度不同,但是,由于其位置處于“防火墻之后”,他將會(huì)獲得具有高度損壞性的詳細(xì)資料。這種人可以利用高度專業(yè)化的工具和手段進(jìn)行分析。
。一個(gè)有資金支持的組織:一個(gè)組織將能夠組建具有技術(shù)互補(bǔ)性的專家隊(duì)伍。在那個(gè)對(duì)系統(tǒng)了解充分的內(nèi)部人可能在某些特定的領(lǐng)域具有專長(zhǎng),而該組織可以通過(guò)增加人手來(lái)填補(bǔ)這些領(lǐng)域內(nèi)的空白。他們將有機(jī)會(huì)使用先進(jìn)的分析工具和精密的儀器來(lái)更改組件。聚焦離子束(FIB)是一種復(fù)雜且昂貴設(shè)備的技術(shù),可以用來(lái)修改集成電路。這種設(shè)備遠(yuǎn)遠(yuǎn)超過(guò)大多數(shù)個(gè)人的使用需要,但是,那些破解有著重要價(jià)值的對(duì)象的安全防護(hù)措施的組織卻要利用該技術(shù)。
攻擊
攻擊者技術(shù)和能力不同,他們的方法也不同。我們從一些基本可以在分屬各種威脅程度的幾種攻擊方法開(kāi)始。
一類范圍很寬的軟件的攻擊,依賴于攻擊者在執(zhí)行環(huán)境中獲得足夠的特權(quán),以便能控制和獲取敏感的裝置及數(shù)據(jù)。例如,在iPhone軟件體系結(jié)構(gòu)的開(kāi)發(fā)過(guò)程中,諸如瀏覽器等部分就處于系統(tǒng)的優(yōu)先層面1。從系統(tǒng)集成的角度來(lái)說(shuō),這是有道理的。但是使得系統(tǒng)易遭攻擊,因?yàn)槿魏螘?huì)受到威脅的系統(tǒng)組成部分,可以具有最高權(quán)限級(jí)別,因此可以訪問(wèn)大量系統(tǒng)資源。
使用這種方法的最近的一個(gè)例子,由Charlie Miller等人在去年夏天公布于眾。通過(guò)將一個(gè)惡意的HTML文件指向電話的Safari網(wǎng)絡(luò)瀏覽器,可以控制對(duì)包含敏感信息的存儲(chǔ)區(qū)的訪問(wèn)。這會(huì)使電話的Safari網(wǎng)絡(luò)瀏覽器崩潰。
在實(shí)際應(yīng)用中,這種攻擊可以通過(guò)發(fā)含有鏈接的郵件,這樣一個(gè)簡(jiǎn)單的權(quán)宜之計(jì)來(lái)實(shí)現(xiàn)。其中,郵件中鏈接所指的是一個(gè)具有惡意HTML的服務(wù)器。如果接收者電擊那個(gè)鏈接,使用那個(gè)攻擊所轉(zhuǎn)化的安裝程序,接收者就很可能受到攻擊。
從安全的角度來(lái)說(shuō), DMA(直接存儲(chǔ)器存?。┐鎯?chǔ)器是一個(gè)令人頭疼的問(wèn)題。它們使用一種強(qiáng)大的機(jī)制來(lái)迅速而有效地轉(zhuǎn)移數(shù)據(jù),但是它們轉(zhuǎn)移數(shù)據(jù)的過(guò)程也是大多數(shù)系統(tǒng)所無(wú)法控制的。如果目標(biāo)裝置是有DMA能力的,一個(gè)惡意的應(yīng)用程序通過(guò)注入代碼和數(shù)據(jù)或獲取敏感信息,可以完全地搞垮一個(gè)系統(tǒng)。DMA控制器,由于它們可以很輕松地進(jìn)行繞過(guò)保護(hù)層和訪問(wèn)存儲(chǔ)器,因此在正在設(shè)計(jì)的SOC和系統(tǒng)中,必須對(duì)其進(jìn)行一系列詳細(xì)的審查。
有一種掠奪普遍使用的數(shù)據(jù)結(jié)構(gòu)的攻擊方法是緩存器溢出攻擊。這種攻擊普遍利用那些被用來(lái)存儲(chǔ)用戶向一個(gè)程序所提供的輸入的堆棧,比如說(shuō):姓名、住址、電話號(hào)碼和其他的典型表格性數(shù)據(jù)。在正常操作條件下,數(shù)據(jù)按照操作者的輸入順序,與返回存儲(chǔ)地址一起,存儲(chǔ)在堆棧里。
然而,在一些情況下,應(yīng)用軟件并不進(jìn)行適當(dāng)?shù)臋z查,來(lái)確定接受到的數(shù)據(jù)是否超出了所分配的緩沖存儲(chǔ)區(qū)域。向緩存中本該操作者輸入數(shù)據(jù)的區(qū)域,傳送尺寸過(guò)大的數(shù)據(jù),并伴以一段惡意的執(zhí)行代碼及一個(gè)用來(lái)覆蓋調(diào)用程序的返回地址的地址數(shù)據(jù)。那個(gè)特大的數(shù)據(jù)導(dǎo)致比堆棧配置空間更大空間的使用,造成緩存溢出。同時(shí),由于地址數(shù)據(jù)過(guò)多的返回地址指向攻擊者的惡意代碼,當(dāng)功能嘗試返回時(shí),就開(kāi)始執(zhí)行黑客在錯(cuò)誤返回地址所寫(xiě)的代碼。這種危害已經(jīng)達(dá)成,侵入者掌握了控制權(quán)。
一旦攻擊行動(dòng)成功地將執(zhí)行代碼放入它的域中,系統(tǒng)水平上的危險(xiǎn)度就依賴于賦予被劫持的進(jìn)程的授權(quán)水平。當(dāng)然,如果被危及的程序在系統(tǒng)中被許可控制的范圍并不寬,那么危害的程度就會(huì)相對(duì)減小。
由于這些種類數(shù)據(jù)結(jié)構(gòu)的廣泛使用,這是一種相當(dāng)普遍的攻擊方式。所以,在一些任何安全防護(hù)壁壘中,如:系統(tǒng)管理程序,安全內(nèi)核,應(yīng)該盡量少地使用緩存和堆棧,如果能夠完全避免使用它們,那就更好了。
正如我們所指出的,通過(guò)破襲正在運(yùn)行系統(tǒng)的組件,可以進(jìn)行大量的控制。然而,當(dāng)系統(tǒng)關(guān)閉時(shí),可以生成大量其它的惡意程序。在一些情況下,侵入者可以在存儲(chǔ)裝置上寫(xiě)入代碼,比如導(dǎo)入代碼。這就允許侵入者可以更改代碼,使驅(qū)動(dòng)程序在下次導(dǎo)入時(shí)按照攻擊者所希望的方式而不是它原來(lái)的設(shè)計(jì)所期望的方式工作。這種進(jìn)攻更有可能是由更高一個(gè)層次的黑客來(lái)執(zhí)行的,比如:“了解情況的內(nèi)部人員”。
在整個(gè)程序開(kāi)發(fā)過(guò)程中所使用的設(shè)計(jì)功能,通常是進(jìn)入系統(tǒng)的秘密途徑。聯(lián)合測(cè)試行動(dòng)組(JTAG)標(biāo)準(zhǔn)的端口是一個(gè)邊界掃描端口,可以連接到許多電路板級(jí)和芯片級(jí)的資源上,可以讓攻擊者獲得對(duì)幾乎任何一種敏感資源的控制,更改執(zhí)行流程或執(zhí)行代碼。
通常情況下,是否在交付產(chǎn)品時(shí)提供JTAG端口,是一個(gè)復(fù)雜而難以決斷的問(wèn)題,這是因?yàn)?,將其取消,就意味著在現(xiàn)場(chǎng)進(jìn)行的調(diào)試變得十分困難,但是,若是保留它,又會(huì)讓系統(tǒng)存在潛在的弱點(diǎn),而極易被擊破。這是一個(gè)很好的例子,它說(shuō)明,在設(shè)計(jì)過(guò)程中,把產(chǎn)品設(shè)計(jì)得盡可能開(kāi)放有用,而同時(shí)又要封閉可造成危害的途徑,這兩者是相互沖突的。
如果存在一條外部存儲(chǔ)總線,它為攻擊者提供了重要的機(jī)會(huì),并對(duì)安全設(shè)計(jì)來(lái)說(shuō)是一個(gè)重要的挑戰(zhàn)。如果攻擊者可以偵測(cè)外部存儲(chǔ)總線,那么他就有可能形成一個(gè)代碼序列,這個(gè)序列反加到原來(lái)的那些總線上后,可以誘騙系統(tǒng)泄漏一些內(nèi)部秘密。這就是我們之前所提到的“重放攻擊”(replay attack)。即使加密的SDRAM,也可由于復(fù)制或回放被選擇的存儲(chǔ)內(nèi)容,而受到這種類型的攻擊。
旁路轉(zhuǎn)換緩沖器(translation lookaside buffer,TLB)是一個(gè)高速緩沖存儲(chǔ)器,它將虛擬內(nèi)存地址轉(zhuǎn)換成物理地址。應(yīng)對(duì)對(duì)這個(gè)子系統(tǒng)進(jìn)行特別嚴(yán)格的審查,這是因?yàn)?,作為系統(tǒng)的一部分,不但對(duì)于系統(tǒng)性能來(lái)說(shuō)很重要,而且也是可被攻擊的弱點(diǎn)。從我們的目標(biāo)出發(fā),主要有兩大類:硬件填充,即集成一個(gè)稱作“硬件表walker”的裝置,以及軟件填充。
對(duì)于具有“硬件表walker”的系統(tǒng)而言,TLB再次填充是在出現(xiàn)TLB丟失時(shí)由硬件自動(dòng)完成的。如果攻擊者具有可以向存儲(chǔ)有MMU描述符表格的存儲(chǔ)器寫(xiě)入的權(quán)限,那么攻擊者就可以改變表內(nèi)的內(nèi)容,并寫(xiě)入錯(cuò)誤的轉(zhuǎn)換關(guān)系。這種行為會(huì)產(chǎn)生很多影響,比如產(chǎn)生一個(gè)對(duì)內(nèi)存或敏感裝置的映射。
一個(gè)稍微有些不同的策略適用于具有TLB的軟件填充策略的體系架構(gòu)。MMU和TLB是寄存器控制的,而且需要進(jìn)入優(yōu)先權(quán)才能訪問(wèn),但系統(tǒng)仍然存在弱點(diǎn),即執(zhí)行重填入的代碼和該代碼所操作的數(shù)據(jù)都保留在內(nèi)存中,因此容易被惡意的應(yīng)用程序所使用。
在密碼學(xué)中,“旁路攻擊”是基于從加密系統(tǒng)的物理實(shí)現(xiàn)方案所獲取的信息、而非基于理論算法缺陷的任何攻擊行為。眾所周知的攻擊包括定時(shí)攻擊2、功率測(cè)量、輻射監(jiān)測(cè)。在這些攻擊中,功率或輻射特征經(jīng)匯編后,與已知的系統(tǒng)行為相比較,以便找出行為的模式。一旦模式和相應(yīng)的內(nèi)部行為被確定,就可以設(shè)定故障誤注入的時(shí)機(jī)和位置,以使得系統(tǒng)按照需要出現(xiàn)異常。
而一些黑客滿足于他們從SOC封裝之外所了解的信息,為了實(shí)現(xiàn)一些高價(jià)值的目標(biāo)[如電子收款機(jī)系統(tǒng)(POS)終端],我們應(yīng)關(guān)注一個(gè)更現(xiàn)實(shí)的問(wèn)題,黑客們將會(huì)嘗試將嵌入式器件的封裝去除,來(lái)進(jìn)行信號(hào)探查和內(nèi)部存儲(chǔ)的分析。作為這個(gè)方法的第一步,攻擊者,很可能是一個(gè)團(tuán)伙中的一員,會(huì)通過(guò)加熱或酸腐蝕來(lái)融化芯片的外殼,以便能置入微探針。完成這一步后,器件開(kāi)始運(yùn)行,黑客嘗試分析模式并測(cè)定弱點(diǎn)。
在這篇調(diào)研報(bào)告中,我們將回顧最基本的攻擊狀況、系統(tǒng)弱點(diǎn),并討論最好的防衛(wèi)策略。我們從硬件、軟件及軟硬件混合的角度來(lái)分析系統(tǒng)的強(qiáng)化,比如安全引導(dǎo)、系統(tǒng)管理程序?qū)Υ鎯?chǔ)器的控制。
產(chǎn)品層次的正式安全認(rèn)證可以具體到某一特定的應(yīng)用,于是,詳情會(huì)被保存得相當(dāng)隱秘,這也就不難理解了。同樣的,我們也從安全的角度,提出能夠產(chǎn)生有用度量的方法,來(lái)決定SOC及系統(tǒng)組件的一般魯棒性和適用性。(注:魯棒性(robustness)就是系統(tǒng)的健壯性。它是在異常和危險(xiǎn)情況下系統(tǒng)生存的關(guān)鍵。比如說(shuō),計(jì)算機(jī)軟件在輸入錯(cuò)誤、磁盤(pán)故障、網(wǎng)絡(luò)過(guò)載或有意攻擊情況下,能否不死機(jī)、不崩潰,就是該軟件的魯棒性。)
攻擊狀況分析
知道我們所擔(dān)心的是什么,這是很重要的。它們的技巧是什么?它們的資源有幾種?威脅的類型千變?nèi)f化,從相對(duì)低強(qiáng)度的軟件攻擊—這種攻擊基于一些可在網(wǎng)上新聞組(如:alt.hacker或各種各樣的“warez”站點(diǎn))找到的軟件—一直到資金充足的工業(yè)間諜活動(dòng)。
攻擊狀況可合乎情理地劃分為如下幾類:
。一個(gè)聰明的外部人員:這個(gè)人很聰明但對(duì)系統(tǒng)的了解卻很有限。他已經(jīng)可以使用先進(jìn)程度中等的設(shè)備,并可以利用已知的弱點(diǎn)而不是制造新的弱點(diǎn)。
。一個(gè)充分了解系統(tǒng)的內(nèi)部人員:這個(gè)人受過(guò)專業(yè)技術(shù)教育并擁有技術(shù)方面的經(jīng)驗(yàn)。他對(duì)系統(tǒng)各個(gè)部件的了解程度不同,但是,由于其位置處于“防火墻之后”,他將會(huì)獲得具有高度損壞性的詳細(xì)資料。這種人可以利用高度專業(yè)化的工具和手段進(jìn)行分析。
。一個(gè)有資金支持的組織:一個(gè)組織將能夠組建具有技術(shù)互補(bǔ)性的專家隊(duì)伍。在那個(gè)對(duì)系統(tǒng)了解充分的內(nèi)部人可能在某些特定的領(lǐng)域具有專長(zhǎng),而該組織可以通過(guò)增加人手來(lái)填補(bǔ)這些領(lǐng)域內(nèi)的空白。他們將有機(jī)會(huì)使用先進(jìn)的分析工具和精密的儀器來(lái)更改組件。聚焦離子束(FIB)是一種復(fù)雜且昂貴設(shè)備的技術(shù),可以用來(lái)修改集成電路。這種設(shè)備遠(yuǎn)遠(yuǎn)超過(guò)大多數(shù)個(gè)人的使用需要,但是,那些破解有著重要價(jià)值的對(duì)象的安全防護(hù)措施的組織卻要利用該技術(shù)。
攻擊
攻擊者技術(shù)和能力不同,他們的方法也不同。我們從一些基本可以在分屬各種威脅程度的幾種攻擊方法開(kāi)始。
一類范圍很寬的軟件的攻擊,依賴于攻擊者在執(zhí)行環(huán)境中獲得足夠的特權(quán),以便能控制和獲取敏感的裝置及數(shù)據(jù)。例如,在iPhone軟件體系結(jié)構(gòu)的開(kāi)發(fā)過(guò)程中,諸如瀏覽器等部分就處于系統(tǒng)的優(yōu)先層面1。從系統(tǒng)集成的角度來(lái)說(shuō),這是有道理的。但是使得系統(tǒng)易遭攻擊,因?yàn)槿魏螘?huì)受到威脅的系統(tǒng)組成部分,可以具有最高權(quán)限級(jí)別,因此可以訪問(wèn)大量系統(tǒng)資源。
使用這種方法的最近的一個(gè)例子,由Charlie Miller等人在去年夏天公布于眾。通過(guò)將一個(gè)惡意的HTML文件指向電話的Safari網(wǎng)絡(luò)瀏覽器,可以控制對(duì)包含敏感信息的存儲(chǔ)區(qū)的訪問(wèn)。這會(huì)使電話的Safari網(wǎng)絡(luò)瀏覽器崩潰。
在實(shí)際應(yīng)用中,這種攻擊可以通過(guò)發(fā)含有鏈接的郵件,這樣一個(gè)簡(jiǎn)單的權(quán)宜之計(jì)來(lái)實(shí)現(xiàn)。其中,郵件中鏈接所指的是一個(gè)具有惡意HTML的服務(wù)器。如果接收者電擊那個(gè)鏈接,使用那個(gè)攻擊所轉(zhuǎn)化的安裝程序,接收者就很可能受到攻擊。
從安全的角度來(lái)說(shuō), DMA(直接存儲(chǔ)器存?。┐鎯?chǔ)器是一個(gè)令人頭疼的問(wèn)題。它們使用一種強(qiáng)大的機(jī)制來(lái)迅速而有效地轉(zhuǎn)移數(shù)據(jù),但是它們轉(zhuǎn)移數(shù)據(jù)的過(guò)程也是大多數(shù)系統(tǒng)所無(wú)法控制的。如果目標(biāo)裝置是有DMA能力的,一個(gè)惡意的應(yīng)用程序通過(guò)注入代碼和數(shù)據(jù)或獲取敏感信息,可以完全地搞垮一個(gè)系統(tǒng)。DMA控制器,由于它們可以很輕松地進(jìn)行繞過(guò)保護(hù)層和訪問(wèn)存儲(chǔ)器,因此在正在設(shè)計(jì)的SOC和系統(tǒng)中,必須對(duì)其進(jìn)行一系列詳細(xì)的審查。
有一種掠奪普遍使用的數(shù)據(jù)結(jié)構(gòu)的攻擊方法是緩存器溢出攻擊。這種攻擊普遍利用那些被用來(lái)存儲(chǔ)用戶向一個(gè)程序所提供的輸入的堆棧,比如說(shuō):姓名、住址、電話號(hào)碼和其他的典型表格性數(shù)據(jù)。在正常操作條件下,數(shù)據(jù)按照操作者的輸入順序,與返回存儲(chǔ)地址一起,存儲(chǔ)在堆棧里。
然而,在一些情況下,應(yīng)用軟件并不進(jìn)行適當(dāng)?shù)臋z查,來(lái)確定接受到的數(shù)據(jù)是否超出了所分配的緩沖存儲(chǔ)區(qū)域。向緩存中本該操作者輸入數(shù)據(jù)的區(qū)域,傳送尺寸過(guò)大的數(shù)據(jù),并伴以一段惡意的執(zhí)行代碼及一個(gè)用來(lái)覆蓋調(diào)用程序的返回地址的地址數(shù)據(jù)。那個(gè)特大的數(shù)據(jù)導(dǎo)致比堆棧配置空間更大空間的使用,造成緩存溢出。同時(shí),由于地址數(shù)據(jù)過(guò)多的返回地址指向攻擊者的惡意代碼,當(dāng)功能嘗試返回時(shí),就開(kāi)始執(zhí)行黑客在錯(cuò)誤返回地址所寫(xiě)的代碼。這種危害已經(jīng)達(dá)成,侵入者掌握了控制權(quán)。
一旦攻擊行動(dòng)成功地將執(zhí)行代碼放入它的域中,系統(tǒng)水平上的危險(xiǎn)度就依賴于賦予被劫持的進(jìn)程的授權(quán)水平。當(dāng)然,如果被危及的程序在系統(tǒng)中被許可控制的范圍并不寬,那么危害的程度就會(huì)相對(duì)減小。
由于這些種類數(shù)據(jù)結(jié)構(gòu)的廣泛使用,這是一種相當(dāng)普遍的攻擊方式。所以,在一些任何安全防護(hù)壁壘中,如:系統(tǒng)管理程序,安全內(nèi)核,應(yīng)該盡量少地使用緩存和堆棧,如果能夠完全避免使用它們,那就更好了。
正如我們所指出的,通過(guò)破襲正在運(yùn)行系統(tǒng)的組件,可以進(jìn)行大量的控制。然而,當(dāng)系統(tǒng)關(guān)閉時(shí),可以生成大量其它的惡意程序。在一些情況下,侵入者可以在存儲(chǔ)裝置上寫(xiě)入代碼,比如導(dǎo)入代碼。這就允許侵入者可以更改代碼,使驅(qū)動(dòng)程序在下次導(dǎo)入時(shí)按照攻擊者所希望的方式而不是它原來(lái)的設(shè)計(jì)所期望的方式工作。這種進(jìn)攻更有可能是由更高一個(gè)層次的黑客來(lái)執(zhí)行的,比如:“了解情況的內(nèi)部人員”。
在整個(gè)程序開(kāi)發(fā)過(guò)程中所使用的設(shè)計(jì)功能,通常是進(jìn)入系統(tǒng)的秘密途徑。聯(lián)合測(cè)試行動(dòng)組(JTAG)標(biāo)準(zhǔn)的端口是一個(gè)邊界掃描端口,可以連接到許多電路板級(jí)和芯片級(jí)的資源上,可以讓攻擊者獲得對(duì)幾乎任何一種敏感資源的控制,更改執(zhí)行流程或執(zhí)行代碼。
通常情況下,是否在交付產(chǎn)品時(shí)提供JTAG端口,是一個(gè)復(fù)雜而難以決斷的問(wèn)題,這是因?yàn)?,將其取消,就意味著在現(xiàn)場(chǎng)進(jìn)行的調(diào)試變得十分困難,但是,若是保留它,又會(huì)讓系統(tǒng)存在潛在的弱點(diǎn),而極易被擊破。這是一個(gè)很好的例子,它說(shuō)明,在設(shè)計(jì)過(guò)程中,把產(chǎn)品設(shè)計(jì)得盡可能開(kāi)放有用,而同時(shí)又要封閉可造成危害的途徑,這兩者是相互沖突的。
如果存在一條外部存儲(chǔ)總線,它為攻擊者提供了重要的機(jī)會(huì),并對(duì)安全設(shè)計(jì)來(lái)說(shuō)是一個(gè)重要的挑戰(zhàn)。如果攻擊者可以偵測(cè)外部存儲(chǔ)總線,那么他就有可能形成一個(gè)代碼序列,這個(gè)序列反加到原來(lái)的那些總線上后,可以誘騙系統(tǒng)泄漏一些內(nèi)部秘密。這就是我們之前所提到的“重放攻擊”(replay attack)。即使加密的SDRAM,也可由于復(fù)制或回放被選擇的存儲(chǔ)內(nèi)容,而受到這種類型的攻擊。
旁路轉(zhuǎn)換緩沖器(translation lookaside buffer,TLB)是一個(gè)高速緩沖存儲(chǔ)器,它將虛擬內(nèi)存地址轉(zhuǎn)換成物理地址。應(yīng)對(duì)對(duì)這個(gè)子系統(tǒng)進(jìn)行特別嚴(yán)格的審查,這是因?yàn)?,作為系統(tǒng)的一部分,不但對(duì)于系統(tǒng)性能來(lái)說(shuō)很重要,而且也是可被攻擊的弱點(diǎn)。從我們的目標(biāo)出發(fā),主要有兩大類:硬件填充,即集成一個(gè)稱作“硬件表walker”的裝置,以及軟件填充。
對(duì)于具有“硬件表walker”的系統(tǒng)而言,TLB再次填充是在出現(xiàn)TLB丟失時(shí)由硬件自動(dòng)完成的。如果攻擊者具有可以向存儲(chǔ)有MMU描述符表格的存儲(chǔ)器寫(xiě)入的權(quán)限,那么攻擊者就可以改變表內(nèi)的內(nèi)容,并寫(xiě)入錯(cuò)誤的轉(zhuǎn)換關(guān)系。這種行為會(huì)產(chǎn)生很多影響,比如產(chǎn)生一個(gè)對(duì)內(nèi)存或敏感裝置的映射。
一個(gè)稍微有些不同的策略適用于具有TLB的軟件填充策略的體系架構(gòu)。MMU和TLB是寄存器控制的,而且需要進(jìn)入優(yōu)先權(quán)才能訪問(wèn),但系統(tǒng)仍然存在弱點(diǎn),即執(zhí)行重填入的代碼和該代碼所操作的數(shù)據(jù)都保留在內(nèi)存中,因此容易被惡意的應(yīng)用程序所使用。
在密碼學(xué)中,“旁路攻擊”是基于從加密系統(tǒng)的物理實(shí)現(xiàn)方案所獲取的信息、而非基于理論算法缺陷的任何攻擊行為。眾所周知的攻擊包括定時(shí)攻擊2、功率測(cè)量、輻射監(jiān)測(cè)。在這些攻擊中,功率或輻射特征經(jīng)匯編后,與已知的系統(tǒng)行為相比較,以便找出行為的模式。一旦模式和相應(yīng)的內(nèi)部行為被確定,就可以設(shè)定故障誤注入的時(shí)機(jī)和位置,以使得系統(tǒng)按照需要出現(xiàn)異常。
而一些黑客滿足于他們從SOC封裝之外所了解的信息,為了實(shí)現(xiàn)一些高價(jià)值的目標(biāo)[如電子收款機(jī)系統(tǒng)(POS)終端],我們應(yīng)關(guān)注一個(gè)更現(xiàn)實(shí)的問(wèn)題,黑客們將會(huì)嘗試將嵌入式器件的封裝去除,來(lái)進(jìn)行信號(hào)探查和內(nèi)部存儲(chǔ)的分析。作為這個(gè)方法的第一步,攻擊者,很可能是一個(gè)團(tuán)伙中的一員,會(huì)通過(guò)加熱或酸腐蝕來(lái)融化芯片的外殼,以便能置入微探針。完成這一步后,器件開(kāi)始運(yùn)行,黑客嘗試分析模式并測(cè)定弱點(diǎn)。
下載該資料的人也在下載
下載該資料的人還在閱讀
更多 >
- 嵌入式軟件接口怎么測(cè)試,嵌入式系統(tǒng)接口測(cè)試策略.doc
- 嵌入式系統(tǒng)硬件可靠性分析 1次下載
- 基于嵌入式安全系統(tǒng)的網(wǎng)絡(luò)結(jié)構(gòu)分析 8次下載
- 關(guān)于嵌入式系統(tǒng)安全問(wèn)題探究 1次下載
- 嵌入式安全系統(tǒng)應(yīng)用分析 9次下載
- 批判性分析和聯(lián)網(wǎng)RFID系統(tǒng)安全性的比較研究 0次下載
- 嵌入式系統(tǒng)安全問(wèn)題 65次下載
- 嵌入式系統(tǒng)安全性分析 28次下載
- 軍用嵌入式操作系統(tǒng)安全性方案 42次下載
- 嵌入式系統(tǒng)安全性(中):對(duì)攻擊狀況和防衛(wèi)策略的概述和分析
- 嵌入式系統(tǒng)的安全性
- 基于IPSec和SSL的嵌入式網(wǎng)絡(luò)安全應(yīng)用研究
- 基于IPSec 的嵌入式網(wǎng)絡(luò)安全應(yīng)用研究
- 嵌入式軟件的安全可靠性控制
- 嵌入式Linux 實(shí)時(shí)性分析與實(shí)時(shí)性改進(jìn)
- 工業(yè)控制系統(tǒng)安全性分析與對(duì)策 828次閱讀
- 嵌入式系統(tǒng)的應(yīng)用實(shí)例 824次閱讀
- 監(jiān)控技術(shù)如何增強(qiáng)嵌入式系統(tǒng)的安全 471次閱讀
- 基于MCU、MPU或FPGA的嵌入式M2M系統(tǒng)安全解決方案 389次閱讀
- 使用MPU監(jiān)控創(chuàng)建安全可靠的嵌入式系統(tǒng) 使用MPU監(jiān)控的原因和好處 702次閱讀
- 不折不扣的安全性 536次閱讀
- 嵌入式Interet安全通信機(jī)制EISCM的應(yīng)用探討 1721次閱讀
- 物聯(lián)網(wǎng)硬件安全實(shí)現(xiàn)可靠加密的方法 4249次閱讀
- 基于Matlab/RTW實(shí)現(xiàn)實(shí)時(shí)仿真與嵌入式系統(tǒng)開(kāi)發(fā)設(shè)計(jì) 4541次閱讀
- 關(guān)于IPSec網(wǎng)絡(luò)安全協(xié)議在嵌入式系統(tǒng)中的應(yīng)用與實(shí)現(xiàn)詳解 1869次閱讀
- 基于SCADE模型的高安全性嵌入式軟件解決方案設(shè)計(jì) 2665次閱讀
- 嵌入式行業(yè)發(fā)展?fàn)顩r_嵌入式行業(yè)人才需求_嵌入式系統(tǒng)就業(yè)前景分析 2.3w次閱讀
- IoT時(shí)代嵌入式系統(tǒng)有你想的那么安全嗎? 1048次閱讀
- 嵌入式設(shè)計(jì)的那些安全性考慮事項(xiàng) 2872次閱讀
- 嵌入式系統(tǒng)安全問(wèn)題分析與保護(hù)措施 978次閱讀
下載排行
本周
- 1TC358743XBG評(píng)估板參考手冊(cè)
- 1.36 MB | 330次下載 | 免費(fèi)
- 2開(kāi)關(guān)電源基礎(chǔ)知識(shí)
- 5.73 MB | 6次下載 | 免費(fèi)
- 3100W短波放大電路圖
- 0.05 MB | 4次下載 | 3 積分
- 4嵌入式linux-聊天程序設(shè)計(jì)
- 0.60 MB | 3次下載 | 免費(fèi)
- 5基于FPGA的光纖通信系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)
- 0.61 MB | 2次下載 | 免費(fèi)
- 6基于FPGA的C8051F單片機(jī)開(kāi)發(fā)板設(shè)計(jì)
- 0.70 MB | 2次下載 | 免費(fèi)
- 751單片機(jī)窗簾控制器仿真程序
- 1.93 MB | 2次下載 | 免費(fèi)
- 8基于51單片機(jī)的RGB調(diào)色燈程序仿真
- 0.86 MB | 2次下載 | 免費(fèi)
本月
- 1OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 2555集成電路應(yīng)用800例(新編版)
- 0.00 MB | 33564次下載 | 免費(fèi)
- 3接口電路圖大全
- 未知 | 30323次下載 | 免費(fèi)
- 4開(kāi)關(guān)電源設(shè)計(jì)實(shí)例指南
- 未知 | 21548次下載 | 免費(fèi)
- 5電氣工程師手冊(cè)免費(fèi)下載(新編第二版pdf電子書(shū))
- 0.00 MB | 15349次下載 | 免費(fèi)
- 6數(shù)字電路基礎(chǔ)pdf(下載)
- 未知 | 13750次下載 | 免費(fèi)
- 7電子制作實(shí)例集錦 下載
- 未知 | 8113次下載 | 免費(fèi)
- 8《LED驅(qū)動(dòng)電路設(shè)計(jì)》 溫德?tīng)栔?/a>
- 0.00 MB | 6653次下載 | 免費(fèi)
總榜
- 1matlab軟件下載入口
- 未知 | 935054次下載 | 免費(fèi)
- 2protel99se軟件下載(可英文版轉(zhuǎn)中文版)
- 78.1 MB | 537796次下載 | 免費(fèi)
- 3MATLAB 7.1 下載 (含軟件介紹)
- 未知 | 420026次下載 | 免費(fèi)
- 4OrCAD10.5下載OrCAD10.5中文版軟件
- 0.00 MB | 234315次下載 | 免費(fèi)
- 5Altium DXP2002下載入口
- 未知 | 233046次下載 | 免費(fèi)
- 6電路仿真軟件multisim 10.0免費(fèi)下載
- 340992 | 191185次下載 | 免費(fèi)
- 7十天學(xué)會(huì)AVR單片機(jī)與C語(yǔ)言視頻教程 下載
- 158M | 183278次下載 | 免費(fèi)
- 8proe5.0野火版下載(中文版免費(fèi)下載)
- 未知 | 138040次下載 | 免費(fèi)
評(píng)論
查看更多