迮 愷,陳 丹,2,莊 毅
(1.南京航空航天大學(xué)計(jì)算機(jī)科學(xué)與技術(shù)學(xué)院,江蘇南京211106;2.軟件新技術(shù)與產(chǎn)業(yè)化協(xié)同創(chuàng)新中心,江蘇 南京211106)
現(xiàn)如今,社會(huì)信息化程度越來越高,信息安全也越來越受到關(guān)注。目前的信息安全技術(shù)主要針對(duì)軟件的可信安全防護(hù),在軟件實(shí)際運(yùn)行過程中定位故障后再采取相應(yīng)處理措施,未能預(yù)先對(duì)整個(gè)系統(tǒng)或軟件進(jìn)行可信安全狀態(tài)的預(yù)判與維持??尚哦攘渴墙鉀Q信息安全問題的關(guān)鍵技術(shù)之一,它可以保證實(shí)體自身的可信,進(jìn)而保證信任鏈直至整個(gè)系統(tǒng)的可信。但是,已有的可信度量技術(shù)大多局限于系統(tǒng)啟動(dòng)后,對(duì)實(shí)體和資源靜態(tài)單方面的可信度量,未結(jié)合系統(tǒng)運(yùn)行時(shí)狀態(tài),從完整性和機(jī)密性兩方面對(duì)系統(tǒng)實(shí)體進(jìn)行動(dòng)態(tài)多維度的可信度量。且可信度量時(shí)使用的訪問控制策略對(duì)于實(shí)際運(yùn)行時(shí)的信息流傳遞限制較大,降低了系統(tǒng)可用性。
目前,國(guó)內(nèi)外針對(duì)可信度量理論問題的研究,主要著眼于可信系統(tǒng)中實(shí)體或資源的完整性度量或機(jī)密性度量,具體有美國(guó)肯特州立大學(xué)的Albalawi等人[1]提出的一種可動(dòng)態(tài)調(diào)整實(shí)體完整性等級(jí)的度量模型。通過引入一個(gè)調(diào)整因子來觸發(fā)調(diào)整系統(tǒng)中不滿足訪問控制策略的實(shí)體完整性等級(jí),并結(jié)合實(shí)體運(yùn)行時(shí)行為以評(píng)估其可信水平。該模型同時(shí)適用于協(xié)作系統(tǒng)中的可信度量,且模型中的調(diào)整因子是隨系統(tǒng)狀態(tài)緩慢改變的,進(jìn)而影響整個(gè)可信度的調(diào)整。但是,該模型僅考慮了實(shí)體完整性的度量,未將機(jī)密性納入度量的范疇,可能會(huì)導(dǎo)致部分機(jī)密信息的泄漏。
美國(guó)特拉華大學(xué)的Sapello等人[2]提出了一種基于可信平臺(tái)模塊TPM(Trusted Platform Module)、應(yīng)用于操作系統(tǒng)層的動(dòng)態(tài)度量方案。該方案有效檢測(cè)了系統(tǒng)運(yùn)行時(shí)狀態(tài),避免了靜態(tài)度量方案一次性度量的缺陷,同時(shí)解決了動(dòng)態(tài)度量方案普遍存在的競(jìng)爭(zhēng)危害TOC-TOU(Time Of Check to Time Of Use)問題,可以有效防止緩沖區(qū)溢出攻擊,但存在度量效率較低的缺點(diǎn)。
中國(guó)科學(xué)院的周洲儀等人[3]提出了一種基于BIBA和Clark-Wilson策略的混合強(qiáng)制完整性模型。為了避免引入可信實(shí)體來作為三方度量系統(tǒng)中的其他實(shí)體,選擇Clark-Wilson模型來進(jìn)行監(jiān)控;同時(shí),根據(jù)可信主體在其生命周期所屬的狀態(tài)實(shí)施BIBA的Low-Water-Mark策略,有效解決了BIBA策略可用性問題和Clark-Wilson模型系統(tǒng)開銷過大的問題。但是,該模型訪問控制策略過于寬松,可能導(dǎo)致潛在實(shí)體可信度量缺失的問題。
西安電子科技大學(xué)的Liu等人[4]提出了一種基于BTG(Break The Glass)策略的靈活性增強(qiáng)的BIBA模型??紤]到BIBA強(qiáng)制安全訪問控制策略較為嚴(yán)格地限制了系統(tǒng)信息流的傳遞,導(dǎo)致某些實(shí)際可信的實(shí)體被系統(tǒng)拒絕,切換系統(tǒng)進(jìn)入BTG策略模式,通過監(jiān)測(cè)系統(tǒng)狀態(tài)變量,實(shí)現(xiàn)對(duì)絕大多數(shù)實(shí)體較為容忍的可信度量模型,提高了系統(tǒng)靈活性和可用性。但是,該度量方法仍無法做到覆蓋所有異常情況的處理,對(duì)于系統(tǒng)某些特殊異常會(huì)出現(xiàn)錯(cuò)誤的度量,從而引起系統(tǒng)安全問題。
數(shù)學(xué)工程與先進(jìn)計(jì)算國(guó)家重點(diǎn)實(shí)驗(yàn)室的閆麗景等人[5]提出了一種基于行為軌跡的軟件動(dòng)態(tài)可信模型SDTBT(Software Dynamic Trust model based on Behavior Trace)。該模型通過分析實(shí)體包含的關(guān)鍵函數(shù)以及基本塊的調(diào)用,在GNU編譯器套件GCC(GNU Compiler Collection)編譯預(yù)處理過程中實(shí)施插樁算法,提取軟件行為軌跡,有效監(jiān)測(cè)基于控制流的運(yùn)行狀態(tài),實(shí)現(xiàn)對(duì)軟件運(yùn)行時(shí)的動(dòng)態(tài)可信度量。但是,對(duì)系統(tǒng)中所有關(guān)鍵函數(shù)及基本塊實(shí)現(xiàn)插樁監(jiān)測(cè)工作量較大,且系統(tǒng)開銷不可忽視。
北京工業(yè)大學(xué)的雷聲威[6]提出了一種層次化軟件可信度量模型,即分別從操作系統(tǒng)可信性、軟件靜態(tài)完整性以及軟件動(dòng)態(tài)行為可信性三個(gè)層次對(duì)軟件進(jìn)行可信度量。而對(duì)于軟件動(dòng)態(tài)行為可信性進(jìn)行度量時(shí),采用系統(tǒng)調(diào)用序列刻畫軟件的動(dòng)態(tài)行為,具有較高的準(zhǔn)確性和效率。但是,該模型具體實(shí)現(xiàn)方式較為復(fù)雜,制定的判定策略也過于嚴(yán)格,不易于擴(kuò)展適用范圍。
北京交通大學(xué)的邢彬等人[7]提出了一種新的描述可信計(jì)算平臺(tái)建立和完整性度量的模型。該模型能全面描述計(jì)算平臺(tái)的完整性狀態(tài)以及狀態(tài)轉(zhuǎn)移過程,同時(shí)放寬了對(duì)系統(tǒng)內(nèi)實(shí)體完整性度量的時(shí)間限制,實(shí)現(xiàn)預(yù)度量,且能夠兼容現(xiàn)有鏈?zhǔn)健⑿切魏蜆湫涡湃蝹鬟f模型。但是,該模型缺少對(duì)實(shí)體運(yùn)行狀態(tài)和系統(tǒng)環(huán)境的監(jiān)測(cè),無法有效抵抗外界因素對(duì)度量結(jié)果的影響。
綜上所述,盡管研究者已經(jīng)在可信度量領(lǐng)域獲得了一些成果,但是仍然存在一些不足,如都沒有同時(shí)考慮實(shí)體完整性和機(jī)密性的可信度量,以保證系統(tǒng)完整可信的同時(shí),機(jī)密信息也不會(huì)被泄漏。為了實(shí)現(xiàn)細(xì)粒度上下文感知的系統(tǒng)運(yùn)行時(shí)實(shí)體可信性的度量,本文基于信息流非傳遞無干擾理論,結(jié)合完整性度量和機(jī)密性度量模型,提出一種多級(jí)安全訪問控制策略,對(duì)系統(tǒng)內(nèi)實(shí)體的可信狀態(tài)進(jìn)行分類,施加不同的訪問控制策略,來達(dá)到實(shí)體間動(dòng)態(tài)的信息流控制。在此基礎(chǔ)上,利用形式化語言對(duì)該策略進(jìn)行了定義,證明其滿足非傳遞無干擾理論的同時(shí),直接干擾關(guān)系在三種訪問操作上具有可信性。最后基于國(guó)產(chǎn)龍芯處理器,并借鑒策略約簡(jiǎn)的完整性度量架構(gòu)PRIMA(Policy-Reduced Integrity Measurement Architecture)的實(shí)現(xiàn)方式,實(shí)現(xiàn)了一個(gè)抽象可信度量實(shí)例系統(tǒng),證明了該可信度量模型的有效性。
系統(tǒng)運(yùn)行時(shí),實(shí)體間通過信息流傳遞進(jìn)行交互。當(dāng)系統(tǒng)任意時(shí)刻僅允許單個(gè)實(shí)體運(yùn)行,若能保證實(shí)體運(yùn)行時(shí)與其具有直接干擾關(guān)系的對(duì)象度量后可信,則只要該實(shí)體自身可信,此次信息流即為安全的。而實(shí)際上系統(tǒng)運(yùn)行時(shí),同一時(shí)刻有多個(gè)實(shí)體處于運(yùn)行狀態(tài),他們可能接收信息流或發(fā)送信息流,故對(duì)實(shí)體存在干擾關(guān)系的并不只有直接干擾實(shí)體,還存在間接干擾實(shí)體。而實(shí)體一旦收到其他非直接的干擾,會(huì)產(chǎn)生非預(yù)期的信息流,進(jìn)而破壞實(shí)體間信任鏈傳遞的有效性。所以,實(shí)體間信息流傳遞需要建立在特定安全訪問控制策略之上,避免干擾關(guān)系的傳遞,且任何非直接干擾關(guān)系的實(shí)體間都是信息流無干擾的。
本節(jié)給出非傳遞無干擾模型下的基本符號(hào)定義[8]。
計(jì)算機(jī)系統(tǒng)M為一個(gè)六元組M=(S,s0,A,O,D,R),其中:
S為系統(tǒng)狀態(tài)集合,使用小寫字母s表示系統(tǒng)狀態(tài)。
s0為系統(tǒng)初始狀態(tài)。
A為系統(tǒng)動(dòng)作集合,指系統(tǒng)自身發(fā)出的控制動(dòng)作或輸入性質(zhì)的動(dòng)作,使用小寫字母a表示系統(tǒng)動(dòng)作。
A*為系統(tǒng)動(dòng)作序列,使用希臘字母α表示系統(tǒng)動(dòng)作序列,即一系列連續(xù)執(zhí)行的系統(tǒng)動(dòng)作。
O為系統(tǒng)輸出集合。
D為系統(tǒng)實(shí)體集合,每個(gè)實(shí)體對(duì)應(yīng)一個(gè)可信域,實(shí)體與可信域是一一對(duì)應(yīng)的關(guān)系,使用小寫字母u表示可信域(實(shí)體)。
(1)每個(gè)可信域(實(shí)體)均可執(zhí)行相應(yīng)動(dòng)作;
(2)可信域(實(shí)體)間通過動(dòng)作進(jìn)行交互;
(3)可信域(實(shí)體)可觀察到動(dòng)作的執(zhí)行結(jié)果;
(4)本文對(duì)可信域與實(shí)體的概念不加區(qū)分,且直接使用可信域表示實(shí)體概念。
若可信域u發(fā)出的動(dòng)作會(huì)影響可信域v上的系統(tǒng)輸出,則稱可信域u對(duì)可信域v具有干擾關(guān)系,記為u~>v;否則稱可信域u對(duì)可信域v無干擾關(guān)系,記為
即干擾關(guān)系具有自反性。
系統(tǒng)M現(xiàn)有可信域D1、D2,可信實(shí)體 u、v、w。假設(shè) D1→D2,u,v∈D1,w∈D2,即系統(tǒng) M 中信息流自可信域D1流向可信域D2。若存在以下干擾關(guān)系:
經(jīng)實(shí)體v可將實(shí)體u的輸出干擾映射到實(shí)體w上,可見系統(tǒng)M中的干擾是可傳遞的。對(duì)于同一可信域中的實(shí)體間干擾關(guān)系u~>v并不影響可信域間的信息流傳遞。對(duì)于跨域間的干擾關(guān)系v~>w,由于該干擾關(guān)系是預(yù)期干擾,故仍不影響域間的信息流傳遞。而傳遞干擾關(guān)系u~>w是由前兩種干擾關(guān)系經(jīng)傳遞關(guān)系得出的非預(yù)期干擾關(guān)系,即域D1的輸出會(huì)干擾域D2,且這種干擾是系統(tǒng)M非預(yù)期的,故會(huì)導(dǎo)致域D1、D2間信息流傳遞出現(xiàn)異常。
因此,只有當(dāng)系統(tǒng)M中信息流傳遞滿足非傳遞無干擾理論時(shí),即不存在可傳遞的干擾關(guān)系u~>w時(shí),才能保證所有信息流都是同域內(nèi)的干擾或預(yù)期不同域的干擾。
多級(jí)安全MLS(MultiLevel Security)是指將同一系統(tǒng)內(nèi)的所有信息劃分為不同安全級(jí)別,以使不同安全級(jí)別的信息彼此之間能夠完全隔離,各個(gè)安全級(jí)別的實(shí)體只能訪問對(duì)應(yīng)級(jí)別的信息。多級(jí)安全研究的一個(gè)重要領(lǐng)域是信息流的安全訪問控制模型的建立,最具有代表性的模型有BIBA和BLP兩種。
BIBA模型的研究方向是信息流的完整性保護(hù),規(guī)定信息只能從高完整性等級(jí)的實(shí)體流向低完整性等級(jí)的實(shí)體,即不允許低完整性的信息“污染”高完整性的實(shí)體,進(jìn)而影響整個(gè)系統(tǒng)的完整性等級(jí)。而BLP模型的側(cè)重點(diǎn)是信息的機(jī)密性,規(guī)定信息只能從低機(jī)密性等級(jí)的實(shí)體流向高機(jī)密性等級(jí)的實(shí)體,即不允許高機(jī)密性的信息“泄漏”到低機(jī)密性的實(shí)體,進(jìn)而影響整個(gè)系統(tǒng)的機(jī)密性等級(jí)??梢姡还苁荁IBA模型還是BLP模型,都存在限制較為苛刻、適用范圍局限的缺點(diǎn)。
根據(jù) BIBA 模型[9,10]的規(guī)定,系統(tǒng)在任何情況下,可信的實(shí)體都應(yīng)該和不可信的實(shí)體相隔絕,并且只允許高完整性等級(jí)的實(shí)體訪問低完整性等級(jí)的實(shí)體,否則會(huì)導(dǎo)致接收低完整性等級(jí)信息流的實(shí)體完整性等級(jí)降低,進(jìn)而影響整個(gè)系統(tǒng)完整性等級(jí)的下降,形成“單調(diào)性缺陷”。
根據(jù) BLP 模型[11,12]的規(guī)定,為了防止機(jī)密信息的泄漏,禁止低機(jī)密性等級(jí)的實(shí)體讀取高機(jī)密性等級(jí)實(shí)體的信息流,或高機(jī)密性等級(jí)的實(shí)體將信息流寫入低機(jī)密性等級(jí)實(shí)體,即系統(tǒng)全局禁止向上讀和向下寫等訪問操作,以此來保證系統(tǒng)機(jī)密信息的保密性。
現(xiàn)有模型大多有以下三方面不足:一是模型對(duì)實(shí)際信息流傳遞限制較為苛刻;二是存在“單調(diào)性缺陷”,應(yīng)用范圍較小;三是無法應(yīng)用于跨域的信息流傳遞中。針對(duì)以上缺陷,本文對(duì)傳統(tǒng)的BIBA模型和BLP模型進(jìn)行深度分析,提出了一種基于信息流的多級(jí)安全訪問控制模型,并通過實(shí)例驗(yàn)證了模型的有效性,具有適用性高、支持跨域等優(yōu)點(diǎn),是一種上下文感知的細(xì)粒度的信息流安全訪問控制模型。
原始強(qiáng)制安全訪問控制策略僅適用于主、客體均為可信實(shí)體的情況,且必須滿足特定訪問操作策略,系統(tǒng)才允許訪問,雖然確保了系統(tǒng)的可信,但很大程度上限制了系統(tǒng)中信息流的傳遞,體現(xiàn)在以下兩方面:
(1)系統(tǒng)拒絕了所有不可信實(shí)體的訪問請(qǐng)求。
(2)系統(tǒng)拒絕了可信實(shí)體中不滿足安全訪問控制策略的訪問請(qǐng)求。
故本文設(shè)計(jì)了獨(dú)立于系統(tǒng)的可信代理模塊,其初始可信標(biāo)簽等級(jí)為系統(tǒng)全局最高,即最高的完整性等級(jí)、最高的機(jī)密性等級(jí)以及包含全局可信實(shí)體的可信訪問域,而且隨系統(tǒng)運(yùn)行推進(jìn)和環(huán)境改變而始終保持不變。而且為了保證可信代理模塊不受系統(tǒng)運(yùn)行時(shí)環(huán)境的變化影響,可信代理模塊的運(yùn)行環(huán)境與系統(tǒng)運(yùn)行環(huán)境完全隔離,確保其自身完整性與機(jī)密性不被破壞。
對(duì)于上述提到的兩個(gè)方面,系統(tǒng)可信代理轉(zhuǎn)而驗(yàn)證實(shí)體所屬域的可信度,若為可信所屬域的實(shí)體,且存在于該可信所屬域的可信實(shí)體鏈表中,則繼承原可信所屬域賦予該實(shí)體的可信標(biāo)簽屬性值;否則,賦予其最低完整性等級(jí)、最低機(jī)密性等級(jí),同時(shí)可信訪問域?yàn)榭占a槍?duì)跨域的實(shí)體間信息流的傳遞,可信代理模塊同樣適用,即對(duì)于實(shí)體所屬域的核驗(yàn),無需域存在于同一個(gè)系統(tǒng)中。
基于BIBA模型和BLP模型擴(kuò)展的多級(jí)安全訪問控制策略如下所示:
其中,u、v為系統(tǒng)中請(qǐng)求訪問的實(shí)體,TLs為主體的可信標(biāo)簽,TLo為客體的可信標(biāo)簽,T為可信實(shí)體,UT為不可信實(shí)體,TA(Trusted Agent)為可信代理,TA={IL,SL,TAF},其中,可信標(biāo)簽 TL(Trusted Label)控制中心初始化系統(tǒng)中待度量實(shí)體屬性,包括完整性等級(jí) IL(Integrity Level)、機(jī)密性等級(jí) SL(Secret Level)和可信訪問域TAF(Trusted Access Field)。實(shí)體訪問操作Access={observe,modify,invoke},observe代表讀操作,modify代表寫操作,invoke代表調(diào)用操作。表示完整性、機(jī)密性等級(jí)集合上的偏序關(guān)系。
故式(3)的modify訪問操作可擴(kuò)展為:
對(duì)于可信實(shí)體間的寫訪問操作,直接應(yīng)用基本安全訪問控制規(guī)則即可,即可信主體的完整性等級(jí)高于或等于可信客體的完整性等級(jí),可信主體的機(jī)密性等級(jí)小于或等于可信客體的機(jī)密性等級(jí),同時(shí)可信主體的可信訪問域包含可信客體的可信訪問域。而對(duì)于非可信實(shí)體間的寫訪問操作,需通過可信代理作為中繼,溝通實(shí)體間的信息交流。
同理可得,擴(kuò)展后的observe訪問操作策略:
擴(kuò)展后的invoke訪問操作策略:
以上三種訪問操作策略均在實(shí)體u作為主體、實(shí)體v作為客體的前提下。并且,在原強(qiáng)制訪問策略僅支持可信實(shí)體的訪問操作的基礎(chǔ)上,將其擴(kuò)展到不可信實(shí)體,同時(shí)有效解決了信息流強(qiáng)制訪問策略存在的“單調(diào)性缺陷”。引入可信代理模塊:
(1)針對(duì)可信實(shí)體,解決部分“向上寫”“向下讀”以及“向上調(diào)用”的信息流傳遞情況。對(duì)于來自可信所屬域但不滿足強(qiáng)制安全訪問控制策略的實(shí)體,仍可提升其完整性等級(jí)和可信訪問域至主體/客體平級(jí),使之滿足強(qiáng)制訪問策略對(duì)于完整性等級(jí)和可信訪問域的限制,若繼承的機(jī)密性等級(jí)也滿足策略,則系統(tǒng)允許此次訪問請(qǐng)求操作。
(2)針對(duì)不可信實(shí)體,若來自可信所屬域,則仍可繼承來自原可信所屬域的可信標(biāo)簽屬性值,而非直接被系統(tǒng)拒絕此次訪問請(qǐng)求。
綜上所述,為了實(shí)現(xiàn)對(duì)系統(tǒng)實(shí)體的信息流安全訪問控制,需分別對(duì)其完整性和機(jī)密性進(jìn)行驗(yàn)證,即對(duì)系統(tǒng)中待度量實(shí)體的完整性等級(jí)和機(jī)密性等級(jí)進(jìn)行初始化,對(duì)于系統(tǒng)啟動(dòng)后,存在于可信環(huán)境中的實(shí)體賦予最高完整性等級(jí)和機(jī)密性等級(jí)。
當(dāng)主/客實(shí)體均為可信實(shí)體時(shí),直接應(yīng)用強(qiáng)制安全訪問控制策略即可,此時(shí)實(shí)體間信息流為直接傳遞。而當(dāng)主/客實(shí)體不全為可信實(shí)體時(shí),兩者之間信息流通過可信代理作為中介間接傳遞。前者為直接干擾關(guān)系,不影響可信傳遞,而后者為間接干擾關(guān)系,現(xiàn)通過形式化證明信息流在可信代理作用下傳遞仍滿足非傳遞無干擾策略。
證明 現(xiàn)有實(shí)體 u∈UT∨v∈UT,TA∈T,則有:
(1)對(duì)于observe訪問操作來說:
即當(dāng)實(shí)體不全為可信實(shí)體時(shí),實(shí)體間不存在間接傳遞干擾。
(2)對(duì)于modify訪問操作來說:
即當(dāng)實(shí)體不全為可信實(shí)體時(shí),實(shí)體間不存在間接傳遞干擾。
(3)同(1)。
綜上所述,當(dāng)實(shí)體不全為可信實(shí)體時(shí),實(shí)體間信息流通過可信代理傳遞后仍滿足非傳遞無干擾策略。 □
本實(shí)例在基于龍芯3A2000處理器的硬件可信平臺(tái)上進(jìn)行,軟件環(huán)境為集成有虛擬可信平臺(tái)模塊的Ubuntu Core 16.0.2 LTS精簡(jiǎn)操作系統(tǒng),構(gòu)建系統(tǒng)啟動(dòng)前的可信計(jì)算環(huán)境,并在啟動(dòng)后,首次進(jìn)行靜態(tài)可信度量,確保系統(tǒng)運(yùn)行前的環(huán)境可信。
為了解決現(xiàn)有信息流安全訪問控制策略對(duì)實(shí)體訪問操作請(qǐng)求限制過于苛刻,同時(shí)導(dǎo)致系統(tǒng)整體陷入“單調(diào)性缺陷”問題,提出一種基于信息流的多級(jí)安全訪問控制模型,其整體架構(gòu)如圖1所示。
動(dòng)態(tài)可信度量模型具體流程如圖2所示。
(1)啟動(dòng)可信環(huán)境。平臺(tái)基于國(guó)產(chǎn)龍芯3A2000處理器,系統(tǒng)內(nèi)置集成有虛擬可信平臺(tái)模塊vTPM(virtualized Trusted Platform Module)的精簡(jiǎn)嵌入式操作系統(tǒng)。
(2)初始化可信環(huán)境。由可信標(biāo)簽控制中心初始化系統(tǒng)中待度量實(shí)體屬性,包括完整性等級(jí)、機(jī)密性等級(jí)和可信訪問域,即賦予屬性相應(yīng)數(shù)值,同時(shí),將初始化信息寫入系統(tǒng)全局安全策略配置文件。
(3)系統(tǒng)從初始可信環(huán)境開始運(yùn)行。系統(tǒng)首先讀取全局安全策略配置文件,并生成5個(gè)數(shù)據(jù)鏈表,分別用來存儲(chǔ)系統(tǒng)中待度量實(shí)體的完整性等級(jí)、機(jī)密性等級(jí)、可信訪問域、可信實(shí)體和所屬域。完整性等級(jí)鏈表存儲(chǔ)了系統(tǒng)中所有待度量實(shí)體當(dāng)前的完整性等級(jí)數(shù)值;機(jī)密性等級(jí)鏈表存儲(chǔ)了系統(tǒng)中所有待度量實(shí)體當(dāng)前的機(jī)密性等級(jí)數(shù)值;可信訪問域鏈表存儲(chǔ)了系統(tǒng)中所有待度量實(shí)體當(dāng)前的主/客體可信訪問域;可信實(shí)體鏈表存儲(chǔ)了系統(tǒng)中所有待度量實(shí)體中可信實(shí)體(排除不可信實(shí)體);實(shí)體所屬域鏈表存儲(chǔ)了系統(tǒng)中所有待度量實(shí)體的所屬主體。
(4)系統(tǒng)運(yùn)行后,當(dāng)實(shí)體請(qǐng)求訪問客體時(shí),系統(tǒng)的訪問控制機(jī)制會(huì)對(duì)該請(qǐng)求進(jìn)行攔截,并轉(zhuǎn)入訪問控制檢查模式:
①提取該訪問請(qǐng)求的主體和客體對(duì)象。
②檢查主體、客體是否均存在于可信實(shí)體鏈表,若存在,則轉(zhuǎn)到步驟a;否則,轉(zhuǎn)到步驟b。
步驟a將主、客體各屬性應(yīng)用到本文所提出的多級(jí)安全訪問控制模型,檢查是否滿足策略,如一致,則系統(tǒng)放行,允許此次訪問請(qǐng)求,并將操作的主、客體分別加入對(duì)方的實(shí)體可信訪問域鏈表中;否則,轉(zhuǎn)到步驟b。
步驟b經(jīng)可信代理模塊,轉(zhuǎn)向驗(yàn)證其所屬域,根據(jù)判定其是否為可信的所屬域,對(duì)此次請(qǐng)求訪問的主、客體的可信標(biāo)簽屬性進(jìn)行初始化。若主、客體不全為可信實(shí)體,則轉(zhuǎn)到I;否則,轉(zhuǎn)到II。
I若實(shí)體所屬域?yàn)椴豢尚庞?,則系統(tǒng)自動(dòng)拒絕此次訪問操作;否則,繼承原所屬域賦予該實(shí)體的可信標(biāo)簽屬性值,轉(zhuǎn)到步驟a。
II若實(shí)體所屬域?yàn)椴豢尚庞?,則賦予其最低完整性等級(jí)、最低機(jī)密性等級(jí),同時(shí)可信訪問域?yàn)榭占?,轉(zhuǎn)到步驟a;否則,提升主體完整性等級(jí)至與客體完整性等級(jí)一致,機(jī)密性等級(jí)不變,轉(zhuǎn)到步驟a。
對(duì)于每個(gè)實(shí)體來說,在一次信息流傳遞過程中,既可以是主體,也可以是客體,所以存在兩種不同的可信訪問域,分別是主體可信訪問域集合和客體可信訪問域集合,表示該實(shí)體作為主體時(shí)已建立聯(lián)系的可訪問客體集合或表示該實(shí)體作為客體時(shí)已建立聯(lián)系的可被訪問主體集合,初始化均為空集。
除了對(duì)來自可信所屬域的可信實(shí)體應(yīng)用信息流強(qiáng)制安全訪問控制策略時(shí),可信實(shí)體的可信標(biāo)簽屬性值來自系統(tǒng)靜態(tài)的全局安全策略配置文件,系統(tǒng)中的其他實(shí)體,如來自可信所屬域的不可信實(shí)體和其他不滿足信息流強(qiáng)制安全訪問控制策略的可信實(shí)體,均可動(dòng)態(tài)地根據(jù)特定實(shí)體的屬性調(diào)整其可信標(biāo)簽的等級(jí)值,并作為依據(jù)供系統(tǒng)重新對(duì)其應(yīng)用多級(jí)安全訪問控制策略,嘗試再次驗(yàn)證信息流訪問操作請(qǐng)求,極大擴(kuò)展了系統(tǒng)安全訪問控制的能力和適用范圍。
實(shí)施例選擇初始可信環(huán)境中的可信實(shí)體A,來自可信實(shí)體A的同一可信所屬域的可信實(shí)體B、C以及來自可信所屬域的不可信實(shí)體D。其中實(shí)體A、B間滿足強(qiáng)制安全訪問控制策略,實(shí)體A、C間不滿足強(qiáng)制安全訪問控制策略,但經(jīng)可信代理提升實(shí)體C的可信標(biāo)簽屬性值后可實(shí)現(xiàn)信息流傳遞,實(shí)體A、D間不滿足強(qiáng)制安全訪問控制策略,經(jīng)可信代理從其所屬域繼承實(shí)體D的可信標(biāo)簽屬性值后仍不滿足強(qiáng)制安全訪問控制策略,即系統(tǒng)將拒絕實(shí)體A、D間的信息流傳遞。
如圖3~圖5所示,系統(tǒng)首先處理實(shí)體A、B間的訪問操作,由于實(shí)體A、B均為可信實(shí)體,且滿足強(qiáng)制安全訪問控制策略,故系統(tǒng)放行實(shí)體0;而對(duì)于實(shí)體A、C間的訪問操作,由于不滿足強(qiáng)制安全訪問控制策略,系統(tǒng)轉(zhuǎn)入可信代理模式,重新賦予客體C新的可信標(biāo)簽等級(jí),新的等級(jí)值依據(jù)實(shí)體C的所屬域可信性,被提升至與實(shí)體A、C可信標(biāo)簽等級(jí)較高的一方一致,退出可信代理模式后再次驗(yàn)證安全訪問控制策略,滿足進(jìn)而系統(tǒng)放行實(shí)體1;對(duì)于實(shí)體A、D間的訪問請(qǐng)求,繼承了實(shí)體D所屬域賦予的原可信標(biāo)簽屬性值后,仍不滿足安全訪問控制策略,故系統(tǒng)拒絕此次訪問操作。
(1)本模型選擇BIBA、BLP模型作為多級(jí)安全訪問控制模型的基礎(chǔ),充分考慮到實(shí)體完整性和機(jī)密性對(duì)于系統(tǒng)可信的影響,并擴(kuò)展了多級(jí)安全訪問控制策略的適用范圍,解決了僅使用強(qiáng)制安全訪問控制策略導(dǎo)致的系統(tǒng)可信等級(jí)的“單調(diào)性缺陷”。
(2)本模型設(shè)計(jì)了可信代理模塊,覆蓋可信系統(tǒng)中信息流傳遞中的所有情況。引入可信代理模塊,針對(duì)不可信實(shí)體及未通過強(qiáng)制安全訪問控制策略驗(yàn)證的實(shí)體,進(jìn)行所屬域的可信驗(yàn)證,動(dòng)態(tài)更新其可信標(biāo)簽的屬性值,以使部分情況下的信息流訪問請(qǐng)求通過系統(tǒng)可信驗(yàn)證。
(3)本模型設(shè)計(jì)了一種基于信息流的多級(jí)安全訪問控制模型,并擴(kuò)展信息流傳遞至多域系統(tǒng),實(shí)現(xiàn)了跨域的信息流訪問控制,且保持系統(tǒng)實(shí)體維持高等級(jí)可信。
(4)通過對(duì)系統(tǒng)應(yīng)用多級(jí)安全訪問控制模型,實(shí)現(xiàn)對(duì)實(shí)體的動(dòng)態(tài)度量,經(jīng)驗(yàn)證模型滿足信息流非傳遞無干擾策略且具有有效性。
下一步研究工作是實(shí)現(xiàn)不可信實(shí)體向可信實(shí)體的轉(zhuǎn)化,進(jìn)一步提高模型的有效性。