<meter id="pryje"><nav id="pryje"><delect id="pryje"></delect></nav></meter>
          <label id="pryje"></label>

          新聞中心

          EEPW首頁 > 嵌入式系統(tǒng) > 設(shè)計(jì)應(yīng)用 > 嵌入式系統(tǒng)安全性對(duì)攻擊狀況和防衛(wèi)策略的概述和分析

          嵌入式系統(tǒng)安全性對(duì)攻擊狀況和防衛(wèi)策略的概述和分析

          作者: 時(shí)間:2013-11-06 來源:網(wǎng)絡(luò) 收藏

            由于增加一個(gè)VM的開銷是很低的,用VM自己已經(jīng)完成引導(dǎo)的、處于掛起狀態(tài)的“候補(bǔ)”操作系統(tǒng)來生成”候補(bǔ)”VM是可能的。那么,當(dāng)一個(gè)處理域被DoS所危及時(shí),一直在自己的執(zhí)行環(huán)境中運(yùn)行的系統(tǒng)健康度監(jiān)督程序,可以將被危及的VM的執(zhí)行掛起,將激活的程序轉(zhuǎn)移到候補(bǔ)的VM,并繼續(xù)執(zhí)行。這種方法在受到攻擊的情況下維持更長的計(jì)算機(jī)正常運(yùn)行時(shí)間。

            由于VM一般來說必須從CPU時(shí)間和可用內(nèi)存的角度來公開地界定,VM所需要的資源在DoS面前僅呈現(xiàn)一個(gè)很小的“攻擊面”,在一些情況下,可以通過限制收到的消息數(shù)量來進(jìn)一步限制弱點(diǎn)的發(fā)展,從而避免飽和攻擊。

            將認(rèn)證機(jī)制擴(kuò)展到虛擬計(jì)算機(jī)上可以使安全導(dǎo)入機(jī)制變得更健全。硬件引導(dǎo)完成后,安全引導(dǎo)機(jī)制標(biāo)記第一個(gè)VM。第一個(gè)虛擬機(jī)可以執(zhí)行第二個(gè)層次的安全引導(dǎo),通過額外標(biāo)記和經(jīng)過驗(yàn)證的VMs來擴(kuò)展“信任鏈”,直到系統(tǒng)飽和以及所有物理、虛擬計(jì)算機(jī)序列導(dǎo)入完成。

            就所有系統(tǒng)的基礎(chǔ)部分而言,需要分析其優(yōu)點(diǎn)和缺點(diǎn)。系統(tǒng)管理程序提供了一個(gè)高水平的安全性和執(zhí)行環(huán)境之間的隔離。但是,當(dāng)數(shù)據(jù)必須在環(huán)境之間共享時(shí),會(huì)發(fā)生什么情況呢?很多系統(tǒng)管理程序通過生成通信渠道或是共用執(zhí)行環(huán)境中的存儲(chǔ)器區(qū)域來處理這個(gè)問題。這隨之又造成了第二個(gè)層次上的弱點(diǎn),所以應(yīng)該確定這些通道不會(huì)被惡意軟件利用來將數(shù)據(jù)從安全的/可信任的區(qū)域轉(zhuǎn)移到不安全/不可信任的區(qū)域。在這些種類的環(huán)境中,可以運(yùn)用分層的方法。例如,可以納入一個(gè)激勵(lì)/響應(yīng)機(jī)制,來實(shí)現(xiàn)數(shù)據(jù)通過共用存儲(chǔ)器在各執(zhí)行環(huán)境之間的轉(zhuǎn)移。當(dāng)這種機(jī)制就位時(shí),不可信區(qū)域的安全就會(huì)到危脅,危險(xiǎn)就會(huì)侵入共用存儲(chǔ)器區(qū)域,但它仍不能從可信區(qū)獲得數(shù)據(jù)。舉對(duì)Web瀏覽器的例子來說,攻擊者可能會(huì)獲得進(jìn)入存儲(chǔ)器共享區(qū)的許可,但它們不能侵入激勵(lì)/響應(yīng)機(jī)制,因此,敏感數(shù)據(jù)就不會(huì)從安全區(qū)轉(zhuǎn)移到共用存儲(chǔ)器區(qū)。

            另一個(gè)系統(tǒng)級(jí)問題會(huì)影響虛擬化的運(yùn)用的地方,是系統(tǒng)管理程序的響應(yīng)時(shí)間。如果響應(yīng)時(shí)間使實(shí)時(shí)操作系統(tǒng)(RTOS)不能在系統(tǒng)管理程序?qū)哟芜m當(dāng)?shù)剡\(yùn)行,那么RTOS一般就會(huì)在微核模式下運(yùn)行,并通過優(yōu)先指令直接接觸系統(tǒng)硬件。這就形成了,或更準(zhǔn)確地說,遺留了一個(gè)可通過對(duì)RTOS的破壞來擊破的弱點(diǎn)。

            與設(shè)計(jì)的許多其他方面一樣,少就是多。系統(tǒng)管理程序所占用的區(qū)域越小,需要去防范的的攻擊面積就越小,而且對(duì)超級(jí)調(diào)用(hypercall)的服務(wù)響應(yīng)時(shí)間就越短。一個(gè)小的覆蓋區(qū)允許系統(tǒng)管理程序根映像被保存在芯片上,從而減小外界對(duì)存儲(chǔ)器總線的探測和代碼細(xì)節(jié)的暴露。

          ARM的TrustZone技術(shù)

            是一種將軟件和硬件相結(jié)合為消費(fèi)者產(chǎn)品提供安全保護(hù)的技術(shù)9,10,11。在硬件方面,特殊的具有“安全意識(shí)”的存儲(chǔ)器包裹層(wrapper),系統(tǒng)總線,調(diào)試端口,及中斷控制器都被集成到了SOC中。另外,TrustZone為CPU結(jié)構(gòu)和核心增加了一個(gè)新的安全監(jiān)控模式。

            在軟件方面,一個(gè)從受信任的邏輯提供的安全監(jiān)控器,在新的安全監(jiān)控模式下運(yùn)行,并擔(dān)當(dāng)安全與不安全狀態(tài)之間的看門監(jiān)控任務(wù)。當(dāng)操作系統(tǒng)調(diào)用TrustZone指令(安全監(jiān)控中斷或SMI)時(shí),安全監(jiān)控器受到了控制,與此同時(shí),處理器獲得了額外層次的特權(quán)以運(yùn)行受到信任的代碼,并通過嵌入已知有安全意識(shí)的外設(shè)的安全審核位或“S-位”,來控制對(duì)受到信任的資源的訪問。對(duì)安全存儲(chǔ)器的訪問是通過使用MMU和TLB中的安全位標(biāo)記符和“S-位標(biāo)記符”來控制的。這些標(biāo)志被用來將存儲(chǔ)器劃分為安全區(qū)和不安全區(qū)。安全監(jiān)控器通過將中斷分為安全和不安全兩類,來進(jìn)一步增強(qiáng)安全性,并實(shí)現(xiàn)斷開/連接調(diào)試端口的能力。

            TrustZone技術(shù),已被用來保護(hù)在芯片上或不在芯片上的存儲(chǔ)器和外圍設(shè)備免受軟件攻擊。通過對(duì)系統(tǒng)的精心設(shè)計(jì),TrustZone可以額外地提供安全措施以抵抗一些硬件攻擊。例如,將可信的代碼放入SoC內(nèi)部存儲(chǔ)器,并保證置于外部存儲(chǔ)器的硬件表 walker列表不能指向內(nèi)部存儲(chǔ)器或敏感程序(TLB的再次寫入會(huì)失敗)。因此,有進(jìn)入外部存儲(chǔ)器的許可并不能提供進(jìn)入敏感資源的許可。

            TrustZone為操作系統(tǒng)在無安全狀態(tài)下的運(yùn)行提供了二進(jìn)制兼容性。如果操作系統(tǒng)需要與安全區(qū)域的應(yīng)用程序進(jìn)行交流,就必須寫擴(kuò)展名。同樣的,在無TrustZone的平臺(tái)上處于特權(quán)模式的一些可以被訪問的寄存器, 一旦在TrustZone.內(nèi)運(yùn)行時(shí),可以被強(qiáng)迫處于特權(quán)/不可信模式。

            然而,這種方法一個(gè)潛在的缺點(diǎn)是TrustZone僅提供兩種環(huán)境。一般的應(yīng)用程序需要三種或更多:一個(gè)操作系統(tǒng)核(如RTOS)、一個(gè)用于處理DRM或其它安全處理要求的安全內(nèi)核,以及“豐富的操作系統(tǒng)”—用于控制用戶的界面(一般包括Windows Mobile、Symbian、Linux等)。如圖5所示的小型終端交互操作平臺(tái)(STIP)應(yīng)用12是一類安全付款的方式。正如圖中所示的那樣,它被保護(hù)起來,免受任何在壁壘的“正?!币粋?cè)所發(fā)生的入侵行為影響,該壁壘是受控于安全監(jiān)測器。

            很多方案的一個(gè)關(guān)鍵目標(biāo)是減少材料單成本。許多OEM的發(fā)展動(dòng)力,則是確保了單獨(dú)的處理器有足夠的CPU馬力來容納大量功能。在理想情況下,一個(gè)CPU可以同時(shí)運(yùn)行無線工作棧、應(yīng)用操作系統(tǒng),及安全應(yīng)用軟件(DRM,還款應(yīng)用)。將無線工作棧置于特權(quán)安全模式下,則產(chǎn)生容易遭受在外部存儲(chǔ)器上發(fā)生的硬件攻擊的弱點(diǎn),并大大地增大了可信代碼基(TCB)的尺寸,其原因可以由如下的例子來說明:一個(gè)3G GSM堆棧普遍有幾兆大小,比普通的SOC內(nèi)部存儲(chǔ)器要大很多。這就使得設(shè)計(jì)只能在如下兩個(gè)方面進(jìn)行選擇:通過將GSM堆棧與應(yīng)用操作系統(tǒng)集成到一起,使得它能夠在正常模式下運(yùn)行,或是在第三種執(zhí)行環(huán)境中運(yùn)行它,這種特性是TrustZone所不具有的。

            所以TrustZone能夠很好地保護(hù)硬件,但是卻不能為很多系統(tǒng)級(jí)的應(yīng)用程序管理其安全區(qū)域。一個(gè)獨(dú)立的系統(tǒng)管理程序可以提供一定程度的、針對(duì)軟件攻擊的防護(hù)力,可以讓開發(fā)者生成多種執(zhí)行環(huán)境,但它在防范硬件攻擊方面只采取了很少的措施。不過,把這兩者組合起來,就可以產(chǎn)生一種對(duì)兩個(gè)領(lǐng)域來說都是最佳的選擇。

            正如圖6所示的那樣,一個(gè)以監(jiān)控模式運(yùn)行的系統(tǒng)管理程序,可以取代TrustZone安全監(jiān)控器以及圖5所示的安全內(nèi)核的位置。所有其他軟件組件都被推入用戶空間中,于是特權(quán)模式實(shí)際上并未被使用。


          圖5 TrustZone架構(gòu)概覽


          圖6 帶有系統(tǒng)管理程序的TrustZone

            這種方式的優(yōu)點(diǎn)是,具有運(yùn)行大量虛擬機(jī)的能力,其中一些有安全區(qū),另一些有不被保護(hù)的區(qū)域。所以,在這種方法中,GSM堆棧可以在它自己的域中運(yùn)行,但是當(dāng)它在用戶態(tài)模式下運(yùn)行時(shí),如果堆棧被攻擊,對(duì)黑客公開的資源僅限于那些在引導(dǎo)時(shí)就被賦予的資源。STIP應(yīng)用程序在有墻壁保護(hù)且安全的區(qū)域是安全的。

            系統(tǒng)管理程序精心地管理著對(duì)SOC內(nèi)部的硬件資源的訪問,以保證所有可信的數(shù)據(jù)和應(yīng)用程序仍存在于合適的安全區(qū)域。敏感資源受益于TrustZone所提供的硬件保護(hù),而對(duì)安全性來說不那么關(guān)鍵的虛擬機(jī),例如容納GSM堆棧的虛擬機(jī),可以在外部存儲(chǔ)器運(yùn)行。

          MIPS技術(shù)處理器

            MIPS為具有安全保護(hù)的應(yīng)用程序提供4KSd13內(nèi)核。這個(gè)核心包括應(yīng)用專用的擴(kuò)展——以改進(jìn)加密算法的執(zhí)行,隱藏處理器活動(dòng)、使之不至于受到能量信號(hào)特征分析和探測的手段,以及具有每頁讀/寫/執(zhí)行特權(quán)設(shè)置功能的安全MMU。

            這個(gè)核心除了具有安全保護(hù)功能外,獲得使用許可的人還可以增加額外的工具,比如獨(dú)有的芯片級(jí)序列號(hào)、加密處理器、隨機(jī)數(shù)發(fā)生器、USB防火墻以及安全引導(dǎo)加載機(jī)制。
          使用分層的方法以提高安全性,一個(gè)合理設(shè)計(jì)的系統(tǒng)管理程序可以利用內(nèi)核內(nèi)置的安全防護(hù)功能以及SOC設(shè)計(jì)者增加的特性,來增強(qiáng)整體系統(tǒng)的安全性。

            處理器的旁路轉(zhuǎn)換緩沖器(TLB)的設(shè)計(jì)是一個(gè)關(guān)鍵問題。MIPS處理器的TLB兼容了一個(gè)軟件替換策略。當(dāng)采取措施來保護(hù)MMU和關(guān)聯(lián)的TLB時(shí),執(zhí)行TLB重填的代碼和被該代碼所操作的數(shù)據(jù)都處于內(nèi)存之中,可能被流氓軟件所訪問。一個(gè)系統(tǒng)管理程序可以用來在TLB重填時(shí)執(zhí)行額外的檢查,以保護(hù)系統(tǒng)不受通過外部SDRAM進(jìn)行的硬件攻擊。

            另外,一些MIPS處理器提供了一個(gè)中間“超級(jí)用戶”模式,以使系統(tǒng)管理程序可以用其來執(zhí)行一個(gè)執(zhí)行虛擬內(nèi)核模式。這樣就減少了虛擬的開銷。

          Power/PowerPC處理器

            32位和64位兩種體系的PowerPC已經(jīng)在很寬范圍的產(chǎn)品中被廣泛應(yīng)用,包括通信處理器,通用設(shè)備,性能導(dǎo)向型游戲系統(tǒng)以及企業(yè)計(jì)算。

            PowerPC的衍生體一般會(huì)應(yīng)用于產(chǎn)品中,比如32位PowerPC405和440,它們使用一種軟件重填策略來保持TLB實(shí)體不斷更新。另外,有一種區(qū)域保護(hù)寄存器(ZPR),它允許TLB訪問控制被撤銷。這些特征產(chǎn)生了一些弱點(diǎn),這些薄弱環(huán)節(jié)可以通過組合操作系統(tǒng)的安全策略管理和虛擬技術(shù)來阻止流氓軟件的訪問。

            一些PowerPC的衍生體,比如索尼Playstation 3中所使用的多核單元寬帶引擎(BE),具有先進(jìn)的安全機(jī)制,它包括經(jīng)過加密的、得到標(biāo)記的安全引導(dǎo)機(jī)制和將執(zhí)行敏感任務(wù)的處理器在物理上單獨(dú)隔離開的功能。

          系統(tǒng)加固:多少才夠用?

            正如我們所述,有多少攻擊的方法,就有多少防御攻擊的技術(shù)。強(qiáng)勁的防御策略通常是依賴于一個(gè)“分層”防御,這個(gè)“分層”防御兼容了大量硬件和軟件技術(shù)。確定一個(gè)系統(tǒng)是否被充分地保護(hù)起來,是一件很復(fù)雜的事情。

            對(duì)于確定給定產(chǎn)品是否可以滿足給定應(yīng)用的安全需要的程度這一問題,有著正規(guī)的方法。對(duì)于安全分析來說,一個(gè)被廣泛接受的標(biāo)準(zhǔn)是信息技術(shù)安全評(píng)估的通用標(biāo)準(zhǔn)(簡稱通用標(biāo)注或CC14)。這是一個(gè)計(jì)算機(jī)安全方面的國際標(biāo)準(zhǔn)(國際標(biāo)準(zhǔn)化組織/國際電工委員會(huì)15408),它為廠商和客戶創(chuàng)造了一套系統(tǒng)框架,供廠商和客戶在該框架中運(yùn)行,該框架可以為用戶環(huán)境提供詳細(xì)的描述和隨之而來的威脅,以及分析和測試方法學(xué),以便決定給定的產(chǎn)品滿足環(huán)境的特定要求的程度。

            例如,德國BMI(Bundesamt für Sicherheit in der Informationstechnik)與歐洲智能卡協(xié)會(huì)(EUROSMART)合作,開發(fā)了一種保護(hù)狀況(PP),命名為智能卡IC平臺(tái)保護(hù)狀況(BSI-PP-0002),包括及其詳細(xì)的、與他們行業(yè)特別相關(guān)的攻擊狀況描述。希望提供產(chǎn)品來響應(yīng)這個(gè)特殊的保護(hù)狀況需要的公司,隨后選擇了一種評(píng)估保證級(jí)別(EAL),此級(jí)別從1級(jí)(最低)到7級(jí)(最高)。這些保證級(jí)別不是對(duì)應(yīng)于關(guān)于給定PP的保護(hù)程度,而是對(duì)應(yīng)于實(shí)驗(yàn)室所測結(jié)果與列舉的安全聲明的符合程度。測試實(shí)驗(yàn)室會(huì)將一系列的保證要求與所選擇的水平進(jìn)行聯(lián)系,進(jìn)行分析、測試,得出合格/與不合格的結(jié)論。

            我們提出一種更基本的度量方法,在開發(fā)階段的初期給設(shè)計(jì)打分。每個(gè)保護(hù)的措施和結(jié)構(gòu)的特征都會(huì)是一個(gè)得分點(diǎn)。那么,對(duì)不同種類基本分的調(diào)整,就要根據(jù)其安全要素(如:最大覆蓋面和最小受攻擊面)。

          網(wǎng)格(+80):可能調(diào)整±40
          TrustZone可信區(qū)(+80):可能調(diào)整±40
          安全導(dǎo)入(+80) :可能調(diào)整±40
          虛擬化 (+80): 可能調(diào)整±40

          安全操作系統(tǒng)

            DMA控制器(-80): 可能調(diào)整±40
          在分層的策略中,每一個(gè)組件對(duì)整個(gè)安全性的貢獻(xiàn)是可以相加的。一個(gè)組件,如操作系統(tǒng),有一個(gè)固有的“虛擬化”以盜用一個(gè)加分條款,80就被加到另一個(gè)組件固有的分?jǐn)?shù)上,比如安全導(dǎo)入機(jī)制的80分,加起來就是160分。現(xiàn)在,如果操作系統(tǒng)由于大量附加特征,呈現(xiàn)出一個(gè)大的攻擊表面,那么,這個(gè)組分的分?jǐn)?shù)就會(huì)降低一些,最多減少40分。

            加權(quán)分?jǐn)?shù)計(jì)算實(shí)例:挑選一個(gè)有MMU的SoC,MMU是系統(tǒng)管理程序?qū)Υ鎯?chǔ)器的控制所不能缺少的,和一個(gè)安全操作系統(tǒng)。選擇一個(gè)系統(tǒng)管理程序,它允許操作系統(tǒng)和應(yīng)用程序在“用戶空間”運(yùn)行,從而產(chǎn)生一個(gè)更安全的處理環(huán)境。系統(tǒng)管理程序(+80)呈現(xiàn)出一個(gè)小的攻擊表面,因此不會(huì)從它的安全分中減分。選擇一個(gè)安全操作系統(tǒng),比如SE Linux (+80),但是,在開發(fā)者加入大量代碼的同時(shí),也會(huì)生成一個(gè)大的攻擊表面(-40)。加權(quán)分?jǐn)?shù)就是:
          虛擬化:80
          安全操作系統(tǒng):80
          代碼尺寸減分:-40
          總安全分:160

            一些設(shè)計(jì)的組成,由于其本身特點(diǎn),在裝置的安全裝甲中形成了固有的裂痕,需要小心地處理。一個(gè)好的例子就是DMA控制器。有DMA控制器的系統(tǒng),考慮到其存在這樣一個(gè)弱點(diǎn),應(yīng)該從總分中減去80分,那么在那個(gè)分?jǐn)?shù)上,就明顯需要一個(gè)保護(hù)系統(tǒng)的機(jī)制。有DMA控制器的系統(tǒng)的調(diào)整范圍表明,這樣的系統(tǒng)可以被設(shè)計(jì)得更加安全,但是機(jī)制的性質(zhì)就是這樣,在成塊存取中以及從安全的觀點(diǎn)來說,它永遠(yuǎn)不可能達(dá)到100%的效率,這是不可避免的。

            這種方法的正式、細(xì)致、凝練允許了度量的產(chǎn)生,它允許設(shè)計(jì)者使用安全措施來滿足他們特定的需要。由于基準(zhǔn)提供了處理器在特定應(yīng)用中可能性能的粗略評(píng)估,所以安全分?jǐn)?shù)的產(chǎn)生也就提供了測量產(chǎn)品在抵御外來攻擊時(shí)可能性能的方式。

          結(jié)語

            現(xiàn)在應(yīng)該清楚的是,真正強(qiáng)健的不能單靠軟件來保證的。加密和迷惑僅能減緩黑客的進(jìn)攻。即使是高度防篡改的系統(tǒng),也會(huì)受到軟件硬件聯(lián)合的進(jìn)攻15的威脅,而且,對(duì)于任何攻擊者可以在物理上接觸的器件,都它至少需要安全的引導(dǎo)。

            另一方面,全硬件的解決方式很昂貴且不具有彈性的,由于這個(gè)原因,如果它們過于冗瑣,就會(huì)迫使設(shè)計(jì)者和最終使用者轉(zhuǎn)而采用節(jié)省時(shí)間的、規(guī)避性的方法,而這些方法是器件的安全防護(hù)架構(gòu)所無法預(yù)料到的。因此,最好的安全解決方案是基于以硬件為中心(如TrustZone)、軟件(如安全操作系統(tǒng))和虛擬技術(shù)相結(jié)合的平衡結(jié)合方式,以保護(hù)存儲(chǔ)區(qū)域,DMA控制器,或其他潛在的易受攻擊的因素。

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

          linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)

          linux相關(guān)文章:linux教程


          存儲(chǔ)器相關(guān)文章:存儲(chǔ)器原理



          上一頁 1 2 3 下一頁

          評(píng)論


          相關(guān)推薦

          技術(shù)專區(qū)

          關(guān)閉
          看屁屁www成人影院,亚洲人妻成人图片,亚洲精品成人午夜在线,日韩在线 欧美成人 (function(){ var bp = document.createElement('script'); var curProtocol = window.location.protocol.split(':')[0]; if (curProtocol === 'https') { bp.src = 'https://zz.bdstatic.com/linksubmit/push.js'; } else { bp.src = 'http://push.zhanzhang.baidu.com/push.js'; } var s = document.getElementsByTagName("script")[0]; s.parentNode.insertBefore(bp, s); })();