蔡慶玲, 詹宜巨,楊 健
(1.中山大學(xué)工學(xué)院, 廣東 廣州 510275;2. 廣東工業(yè)大學(xué)自動(dòng)化學(xué)院, 廣東 廣州 510006)
可信計(jì)算是目前信息安全領(lǐng)域的研究熱點(diǎn)[1-2]??尚哦攘渴强尚庞?jì)算的關(guān)鍵技術(shù)之一[3-4]。而目前可信度量的方法主要采用單一的軟件完整性檢驗(yàn)。其存在缺陷主要有[2,4-6]:軟件完整性檢驗(yàn)的計(jì)算量過(guò)大問(wèn)題;難以有效解決動(dòng)態(tài)環(huán)境下完整性檢驗(yàn)的實(shí)時(shí)更新問(wèn)題;難以實(shí)施動(dòng)態(tài)環(huán)境下完整性檢驗(yàn)計(jì)算端與驗(yàn)證端的同步問(wèn)題;對(duì)資源受限的設(shè)備如移動(dòng)終端細(xì)粒度完整性檢驗(yàn)實(shí)現(xiàn)的策略問(wèn)題。
為此,本文依據(jù)軟件安全保護(hù)原則提出一種綜合的可信度量的建模方案——隨機(jī)抽取劃分序列策略模型(Random Division Sequence Model,DR)[7]。
可信計(jì)算環(huán)境的建立依靠著可信根、可信鏈的建立和傳遞,可信鏈的建立和傳遞又離不開可信計(jì)算的關(guān)鍵技術(shù)——可信度量。目前可信度量的方法主要采用單一的軟件完整性檢驗(yàn),即將整個(gè)軟件進(jìn)行哈希摘要形成參考完整性值作為該軟件完整性檢測(cè)的安全依據(jù)。
可信計(jì)算環(huán)境又可分為靜態(tài)可信計(jì)算環(huán)境和動(dòng)態(tài)可信計(jì)算環(huán)境。其中靜態(tài)可信計(jì)算環(huán)境中,采用單一的軟件完整性檢驗(yàn)還可以勉強(qiáng)勝任,但在動(dòng)態(tài)可信計(jì)算環(huán)境下,隨著用戶開啟的應(yīng)用程序不同,系統(tǒng)完整性是動(dòng)態(tài)變化的。因而,必須實(shí)時(shí)地更新系統(tǒng)的完整性信息,如操作系統(tǒng)內(nèi)核、用戶動(dòng)態(tài)進(jìn)程,還要兼顧著各進(jìn)程的運(yùn)行參數(shù)、堆棧區(qū)及數(shù)據(jù)區(qū)域的完整性檢驗(yàn)。實(shí)時(shí)的、全面徹底的動(dòng)態(tài)完整性計(jì)算,雖然提高了計(jì)算平臺(tái)安全可信的可能性,但必然會(huì)導(dǎo)致系統(tǒng)整體性能的下降,這對(duì)資源有限的設(shè)備問(wèn)題就尤為突出。另一方面更因?yàn)閯?dòng)態(tài)環(huán)境下安全性已不僅僅依賴于執(zhí)行單一軟件的完整性檢驗(yàn),其情況極為復(fù)雜多變,如計(jì)算平臺(tái)常駐內(nèi)存代碼(如操作系統(tǒng)中的系統(tǒng)調(diào)用、服務(wù)器進(jìn)程等)僅在加載文件時(shí)進(jìn)行完整性度量,必然會(huì)造成完整性度量的盲區(qū),遺留安全隱患。此外還有程序的運(yùn)行參數(shù)、堆棧區(qū)及數(shù)據(jù)區(qū)域的不斷地更新等都無(wú)法作到完整性檢驗(yàn)的實(shí)時(shí)、全面徹底不留有漏洞。
由此可見,一方面,軟件完整性檢驗(yàn)的計(jì)算量大,尤其是動(dòng)態(tài)環(huán)境下完整性的復(fù)雜多變,其目標(biāo)完整性值需要實(shí)時(shí)更新,對(duì)資源受限的計(jì)算設(shè)備難以勝任。另一方面,傳統(tǒng)單一軟件完整性檢測(cè)方案,難以解決動(dòng)態(tài)環(huán)境中完整性檢驗(yàn)計(jì)算端與驗(yàn)證端的同步實(shí)施問(wèn)題。需要一種兼顧多方面安全需求低耗高效的、綜合性的可信度量策略及構(gòu)造方法,才能解決動(dòng)態(tài)環(huán)境中完整性檢驗(yàn)有效實(shí)施的多項(xiàng)難題。
目前,信息安全領(lǐng)域被廣泛認(rèn)可的原則主要有[7]:等級(jí)保護(hù)原則、適度安全原則、動(dòng)態(tài)安全原則及全過(guò)程安全原則。
等級(jí)保護(hù)原則: 對(duì)信息系統(tǒng)的安全特性進(jìn)行等級(jí)劃分,應(yīng)按標(biāo)準(zhǔn)進(jìn)行建設(shè)、管理和監(jiān)督。
適度安全原則: 信息系統(tǒng)安全措施的強(qiáng)度與該系統(tǒng)承擔(dān)的業(yè)務(wù)職能和系統(tǒng)的重要性緊密相關(guān)。采用適度安全原則,有效的控制浪費(fèi)和不足。
動(dòng)態(tài)安全原則: 網(wǎng)絡(luò)環(huán)境的動(dòng)態(tài)變化,攻擊手段的更新,安全解決方案也需隨之變化。安全框架應(yīng)隨威脅和網(wǎng)絡(luò)環(huán)境的變化而不斷調(diào)整。
全過(guò)程安全原則: 當(dāng)安全防護(hù)在任何一個(gè)環(huán)節(jié)出現(xiàn)漏洞,風(fēng)險(xiǎn)都將會(huì)在此點(diǎn)發(fā)生,并滲透到其它環(huán)節(jié)。故應(yīng)采用全過(guò)程安全原則對(duì)風(fēng)險(xiǎn)實(shí)施安全監(jiān)控。
設(shè)計(jì)思想:
計(jì)算端將軟件按照摘要?jiǎng)澐謫卧L(zhǎng)度l(本文哈希函數(shù)使用MD5,l選為512bits)進(jìn)行劃分,對(duì)每一個(gè)劃分進(jìn)行哈希摘要,計(jì)算端和驗(yàn)證端共同保存作為驗(yàn)證RIMi值序列(見圖2)。可信度計(jì)算驗(yàn)證時(shí),驗(yàn)證端按照模型DR抽取相應(yīng)的若干劃分進(jìn)行摘要計(jì)算和驗(yàn)證。
圖1 隨機(jī)數(shù)R為1的位表示將被抽取的劃分序列
Fig.1 1 bit of random number R indicates that the sequence will be extracted
圖2 軟件P的基本劃分序列LRFig.2 The basic division sequence LR for the software P
軟件P模型:
軟件P模型表示為:元組P(L,Kr,Ke,Kc,LR),其中LR=(RIM1, RIM2, …, RIMn)
L:為待檢測(cè)的軟件長(zhǎng)度;
Kr:為該軟件安全度需求系數(shù);
Ke:為該軟件安全度評(píng)估系數(shù);
Kc:為執(zhí)行該軟件所需資源開銷系數(shù);
RIMi:為劃分i的完整性驗(yàn)證參考值。其中RIMn長(zhǎng)度 隨機(jī)抽取劃分序列策略模型: 隨機(jī)抽取劃分序列策略模型表示為:元組DR(R,Kr,Ke,Kc,LD), 其中LD=(L1, …,Li, …,Ln-1,Ln) R:高熵隨機(jī)數(shù),用于確定摘要所抽取的劃分(見圖1); l:摘要?jiǎng)澐只締卧L(zhǎng)度; Kr=N時(shí),表明該軟件每一個(gè)劃分都必須進(jìn)行完整性檢驗(yàn); Kr=0時(shí),表明該軟件都不需要進(jìn)行完整性檢驗(yàn)。 Ke:軟件安全度評(píng)估系數(shù),依據(jù)該軟件執(zhí)行的評(píng)估結(jié)果動(dòng)態(tài)調(diào)整,0≤Ke≤N。 Ke=N時(shí),表明該軟件每一個(gè)劃分都具有可信安全性; Ke=0時(shí),表明該軟件每一個(gè)劃分都不具有可信安全性。 Kc:執(zhí)行該軟件所需資源開銷系數(shù),軟件執(zhí)行時(shí)間及所需資源越多則Kc越大,取值為:0 Kc=10時(shí),表明該軟件執(zhí)行時(shí)間及所需資源等級(jí)為最高; Ke=0時(shí),表明該軟件執(zhí)行時(shí)間及所需資源等級(jí)為最低。 抽取的劃分序列LD表示為:(L1, …,Li, …,Ln-1,Ln) Li=1時(shí),則表明序列號(hào)為i的劃分塊被抽取,參與完整性檢驗(yàn); Li=0時(shí),則表明序列號(hào)為i的劃分塊未被抽取,不參與完整性檢驗(yàn)。 |LD|:為序列中元素為非0的個(gè)數(shù); 隨機(jī)抽取劃分序列執(zhí)行過(guò)程: 模型DR(R,Kr,Ke,Kc,LD)用于生成抽取劃分序列LD,其中R為一高熵隨機(jī)數(shù),其格式見圖1。用于隨機(jī)地確定初時(shí)抽取的劃分塊。Kr,Ke,Kc共同對(duì)R值的進(jìn)行修正。因此LD是由R,Kr,Ke,Kc四個(gè)參數(shù)共同決定,最終確定的完整性檢驗(yàn)所抽取的劃分。具體執(zhí)行算法如下: 1) 隨機(jī)選取高熵隨機(jī)數(shù)R,R為1的位表示將被抽取的劃分序列號(hào)。 2)Kr為該軟件安全度需求系數(shù)。在系統(tǒng)運(yùn)行中,Kr值保持不變。Kr越大表示該軟件安全要求越高。初始時(shí)由系統(tǒng)根據(jù)軟件的安全度需求進(jìn)行賦值,其取值為 0≤Kr≤N,如操作系統(tǒng)等為最高安全度需求Kr=N。Kr用以調(diào)整R取值,表示為:∑Kr·R。依據(jù)等級(jí)保護(hù)原則,Kr取值越大,則R取1的位越多,表明抽取劃分的越多;Kr取值越小,則R取1的位越少,表明抽取劃分的越少。 因此模型DR參數(shù)之間的關(guān)系可表達(dá)為 5)當(dāng)|LD|>|LR|, 需要抽取的更多劃分,執(zhí)行如下程序: (a)如果 |LD|>|R|, 再生成隨機(jī)數(shù)R′; (b)計(jì)算:R=RorR′; (d)判斷是否滿足:|LD|≤|R|; (e)如果不滿足,則重復(fù)操作(a)-(d); (f)如果滿足,則按照LD序列抽取相應(yīng)的劃分。 隨機(jī)抽取劃分序列策略模型性能分析: 系統(tǒng)運(yùn)行后,其中Kr,Ke,Kc參數(shù)通過(guò)自學(xué)習(xí)、自適應(yīng)不斷調(diào)整最終得到優(yōu)化,并趨于穩(wěn)定。 本文提出的隨機(jī)抽取劃分序列策略模型DR融合了多方位參數(shù),摒棄傳統(tǒng)單一度量方案,建立了綜合性的可信度量策略及構(gòu)造方法,兼顧了多方面安全需求問(wèn)題,實(shí)現(xiàn)了細(xì)粒度完整性檢驗(yàn),為可信度量的建模提出了新的思路。 [1] 2012年度國(guó)家有關(guān)“可信軟件基礎(chǔ)研究”重大研究計(jì)劃科技項(xiàng)目指南[R]. http:∥www.ecas.cn/xxkw/kbcd/201115_85123/ml/xxhjsyjcss/201202/t20120216_3441065.html. [2] 劉昌平. 可信計(jì)算環(huán)境安全技術(shù)研究[D]. 成都:電子科技大學(xué), 2011. [3] 蔡紅云, 田俊峰, 李珍. 何莉輝基于信任領(lǐng)域和評(píng)價(jià)可信度量的信任模型研究[J]. 計(jì)算機(jī)研究與發(fā)展, 2011, 48(11): 2131-2138. [4] 王丹, 盧彥, 趙文兵,等.基于變量間依賴關(guān)系的軟件可信度量模型[J]. 華中科技大學(xué)學(xué)報(bào): 自然科學(xué)版, 2013, 41(1): 41-45. [5] 楊蓓, 吳振強(qiáng), 符湘萍. 基于可信計(jì)算的動(dòng)態(tài)完整性度量模型[J]. 計(jì)算機(jī)工程, 2012, 38(2): 78-81 [6] 劉孜文, 馮登國(guó). 基于可信計(jì)算的動(dòng)態(tài)完整性度量架構(gòu)[J]. 電子與信息學(xué)報(bào), 2010, 32(4): 875-879. [7] 計(jì)算機(jī)信息系統(tǒng)安全保護(hù)等級(jí)劃分準(zhǔn)則GB17859-1999[S]. http:∥www.docin.com/p-396913971.html.3 結(jié) 論