范文釗,范宇寧,和子郅,范修斌,崔曉風(fēng),王福馳
(1.新泰市第一中學(xué),山東 新泰 271200;2.泰山學(xué)院 信息科學(xué)技術(shù)學(xué)院,山東 泰安 271000;3.中國(guó)科學(xué)院軟件研究所青島分部(青島工業(yè)軟件研究所),山東 青島 266114;4.青島博文廣成信息安全技術(shù)有限公司,山東 青島 266235)
CFL[1-13]是基于標(biāo)識(shí)的證書認(rèn)證體制,它由陳華平將軍、范修斌教授、呂述望教授三位博導(dǎo)于2009年發(fā)明。
BLP模型是Bell-LaPadula模型[14-21]的簡(jiǎn)稱,它是D.Elliott Bell和Leonard J.LaPadula于1973年創(chuàng)立的一種模擬軍事安全策略的計(jì)算機(jī)操作模型,它是最早、也是最常用的一種計(jì)算機(jī)多級(jí)安全模型。
但是,對(duì)于該模型中的賦權(quán)結(jié)果,該模型自身是無法提供完整性保護(hù)的,因此,該模型是需要擴(kuò)充的。本文給出CFL_BLP模型。給出了CFL_BLP模型的八元組、安全公理以及安全規(guī)則。該模型保證了用戶的BLP模型的權(quán)限的完整性,確保了BLP模型的可信性、安全性。在防范隱蔽信道的基礎(chǔ)上,基于CFL_BLP模型可以實(shí)現(xiàn)自主可控等級(jí)保護(hù)高等級(jí)安全的信息系統(tǒng)。
操作系統(tǒng)一般由進(jìn)程管理、內(nèi)存管理以及文件管理三部分構(gòu)成。本文的研究結(jié)果對(duì)構(gòu)建自主可控的安全操作系統(tǒng)具有重要的理論和實(shí)踐價(jià)值。
定義1 CFL_BLP模型即為t∈T={0,1,2,…,t,…}=N時(shí)刻計(jì)算機(jī)系統(tǒng)SYt的一個(gè)八元組,即
SYt=(St.Ot,RA,A,D,Mt,BLP(St,Ot),CFL)
①get:
a)在t時(shí)刻的主體集合中添加一個(gè)主體,并且給該主體安全級(jí)賦值。
b)在t時(shí)刻的主體集合中添加一個(gè)主體,并且給該主體當(dāng)前安全級(jí)賦值。
c)在t時(shí)刻的客體集合中添加一個(gè)客體,并且給該客體安全級(jí)賦值。
②release:
a)從t時(shí)刻BLP模型主體中刪除一個(gè)主體。
b)從t時(shí)刻BLP模型客體中刪除一個(gè)客體。
③give:擴(kuò)充Mt某點(diǎn)集合的元素。
④rescind:刪減Mt某點(diǎn)集合的元素。
⑤change:更改BLP模型客體安全級(jí),或更改BLP模型主體當(dāng)前安全級(jí)。
⑥create:創(chuàng)建一個(gè)新客體添加到當(dāng)前的樹型結(jié)構(gòu),并給BLP權(quán)限賦值。
⑦delete:從樹型結(jié)構(gòu)中刪除一個(gè)客體。
(4)A[14-21]A={e,r,a,w,c},即主體訪問客體的訪問方式的集合,其中:
①e:execute,執(zhí)行(neither observation nor alteration)。
②r:only read,只讀(observation with no alteration)。
③a:append,只寫(alteration with no observation)。
④w:read and write,讀寫(both observation and alteration)。
⑤c:control,是指某特殊主體用來授予或撤銷另一主體對(duì)某一客體的訪問權(quán)限的能力。自主訪問矩陣,BLP模型偏序關(guān)系都涉及該命令。
(5)D[14-21]:D={yes,no,error,?},系統(tǒng)接收到主體對(duì)客體的請(qǐng)求訪問操作后,會(huì)對(duì)請(qǐng)求訪問操作進(jìn)行判定,其即為判定的結(jié)果集合,其中:
①yes:表示請(qǐng)求被執(zhí)行。
②no:表示請(qǐng)求被拒絕。
③error:表示有多個(gè)規(guī)則適用于這一請(qǐng)求,并拒絕執(zhí)行。
④?:表示不能處理此請(qǐng)求。
(6)Mt[14-21]:即t時(shí)刻自主訪問控制矩陣。其中的點(diǎn)是某主體對(duì)某客體可操作的集合。它是一個(gè)超矩陣。
(7)BLP[14-21]:即CFL_BLP模型公理I和公理II。
注1 C[14-21]:C={c1,c2,…,cq},其中c1>c2>…>cq。一個(gè)主體或客體的密級(jí)一般分為公開文件、內(nèi)部文件、秘密文件、機(jī)密文件、絕密文件等級(jí)。K[14-21]:K={k1,k2,…,kr},,即主客體組織機(jī)構(gòu)隸屬關(guān)系。例如某單位一處包含一處一科、一處二科、一處三科等。安全級(jí)集合定義為F=C×K。
①f(s)=(C(s),K(s)):稱其為主體s的BLP模型一般安全級(jí)函數(shù)。
②f(o)=(C(o),K(o)):稱其為客體o的BLP模型安全級(jí)函數(shù)。
③fc(s)=(Cc(s),Kc(s))稱其為主體s的BLP模型當(dāng)前(current)安全級(jí)函數(shù)。當(dāng)前和一般是或者關(guān)系,當(dāng)前、一般與自主訪問控制矩陣Mt是并且關(guān)系。
(8)CFL[1-13]:包括CFL簽名驗(yàn)證,CFL SSL,CFL本地加解密等。CFL數(shù)據(jù)格式如下:①CFL簽名文件:明文||BLP模型權(quán)限||自己的證書||簽名。文件.cfl_sign。
②CFL加密文件:密文||BLP模型權(quán)限||自己的證書||簽名。文件.cfl_bcipher。
③CFL信封文件:密文||BLP模型權(quán)限||對(duì)方的證書||自己的證書||簽名。文件.cfl_pcipher。
CFL={簽名,驗(yàn)證,公鑰加密,公鑰解密,對(duì)稱密碼加密,對(duì)密碼解密}
通過CFL證書中BLP模型權(quán)限標(biāo)識(shí),確定訪問主體的訪問權(quán)限。這種辦法通過CFL證書簽名支持了BLP模型中的用戶權(quán)限的信息安全完整性。
記βt={(st,i,ot,x)},即所有主體和客體可以操作的方式的集合。
記b={(s:x1,x2,…,xn)}為主體s具有訪問權(quán)限x1、或者x2、…(1≤i≤n) 的客體集合。
公理1[14-21]BLP模型簡(jiǎn)單安全性(Simple-Security Property)。
注2 可專指不帶參數(shù)的命令。滿足BLP模型簡(jiǎn)單安全性的主體稱為可信主體。
公理2[14-21]BLP模型*特性(*property)。
注3 當(dāng)同一個(gè)主體執(zhí)行簡(jiǎn)單安全性時(shí)是可信主體,執(zhí)行*特性時(shí)是非可信主體。
公理 3[14-21](自主安全性)(Discretionary-Security)。
公理4[14-21](兼容性公理)(Compatibility)。
注4 H(ot,i)是指客體ot,i子節(jié)點(diǎn)的集合。
公理5(CFL公理)(CFL)
(1)CFL簽名文件:文件類型標(biāo)記||明文||BLP模型權(quán)限||自己的證書||簽名。文件.cfl_sign。
(2)CFL加密文件:文件類型標(biāo)記||密文||BLP模型權(quán)限||自己的證書||簽名。文件.cfl_bcipher。
(3)CFL信封文件:文件類型標(biāo)記||密文||BLP模型權(quán)限||對(duì)方的證書||自己的證書||簽名。文件.cfl_pcipher。
注5時(shí)間戳已含在動(dòng)態(tài)CFL證書中。
文獻(xiàn)[14-21]有11個(gè)BLP模型轉(zhuǎn)換規(guī)則。在此基礎(chǔ)上,再根據(jù)上節(jié)五個(gè)安全公理,我們給出CFL_BLP模型的轉(zhuǎn)換規(guī)則。
規(guī)則1(R1) 主體st,i對(duì)客體ot,j請(qǐng)求“讀”訪問:get-read。
條件命題如下:
(1)cflsyt((st,i))=1,即系統(tǒng)對(duì)主體st,iCFL證書簽名驗(yàn)證通過;
cflSt,i((ot,j))=1,即主體st,i對(duì)客體ot,j的CFL簽名驗(yàn)證通過;
r∈mt,i,j,即主體st,i的訪問屬性中有對(duì)客體ot,j的“讀”權(quán)限;
fc(st,i)?f(ot,j),即主體的一般安全級(jí)支配客體ot,j的安全級(jí);
則系統(tǒng)執(zhí)行主體st,i對(duì)客體ot,j“讀”請(qǐng)求。
(2)cflsyt((st,i))=1,即系統(tǒng)對(duì)主體st,iCFL證書簽名驗(yàn)證通過;
cflSt,i((ot,j))=1,即主體st,i對(duì)客體ot,j的CFL簽名驗(yàn)證通過;
r∈mt,i,j,即主體的訪問屬性中有對(duì)客體ot,j的“讀”權(quán)限;
fc(st,i)?f(ot,j),即主體st,i當(dāng)前的安全級(jí)支配客體ot,j的安全級(jí);
則系統(tǒng)也執(zhí)行主體st,i對(duì)客體ot,j“讀”請(qǐng)求。
規(guī)則2(R2) 主體st,j對(duì)客體ot,j請(qǐng)求“添加”訪問:get-append.
條件命題如下:
(1)cflsyt((st,i))=1,即系統(tǒng)對(duì)主體st,iCFL證書簽名驗(yàn)證通過;
cflst,i((ot,j))=1,即主體st,i對(duì)客體ot,j的CFL簽名驗(yàn)證通過;
a∈mt,i,j,即主體st,i的訪問屬性中有對(duì)客體ot,j的“添加”權(quán)限;
fc(st,i)?f(ot,j),即主體st,j的一般安全級(jí)被客體ot,j的安全級(jí)支配;
則系統(tǒng)執(zhí)行主體st,i對(duì)客體ot,j“添加”請(qǐng)求。
(2)cflsyt((st,i))=1,即系統(tǒng)對(duì)主體st,iCFL證書簽名驗(yàn)證通過;
cflSt,i((ot,j))=1,即主體st,i對(duì)客體ot,j的CFL簽名驗(yàn)證通過;
a∈mt,i,j,即主體st,i的訪問屬性中有對(duì)客體ot,j的“添加”權(quán)限;
fc(st,i)?f(ot,j),即主體st,i當(dāng)前的安全級(jí)被客體ot,j的安全級(jí)支配;
則系統(tǒng)也執(zhí)行主體st,i對(duì)客體ot,j“添加”請(qǐng)求。
規(guī)則3(R3) 主體st,i對(duì)客體ot,j請(qǐng)求“執(zhí)行”訪問:get-execute。
條件命題如下:
cflsyt((st,i))=1,即系統(tǒng)對(duì)主體st,iCFL證書簽名驗(yàn)證通過;
cflst,i((ot,j))=1,即主體st,i對(duì)客體ot,j的CFL簽名驗(yàn)證通過;
e∈mt,i,j,即主體st,i的訪問屬性中有對(duì)客體ot,j的“執(zhí)行”權(quán)限;
則系統(tǒng)執(zhí)行主體st,i對(duì)客體ot,j“執(zhí)行”請(qǐng)求。
規(guī)則4(R4)主體對(duì)客體請(qǐng)求“讀寫”訪問:get-write.
條件命題如下:
(1)cflsyt((st,i))=1,即系統(tǒng)對(duì)主體st,iCFL證書簽名驗(yàn)證通過;
cflst,i((ot,i))=1,即主體st,i對(duì)客體ot,j的CFL簽名驗(yàn)證通過;
w∈mt,i,j,即主體st,i的訪問屬性中有對(duì)客體ot,j的“讀寫”權(quán)限;
f(st,i)?f(ot,j),即主體st,i的一般安全級(jí)等于客體ot,j的安全級(jí);
則系統(tǒng)執(zhí)行主體st,i對(duì)客體ot,j“讀寫”請(qǐng)求。
(2)cflsyt((st,i))=1,即系統(tǒng)對(duì)主體st,iCFL證書簽名驗(yàn)證通過;
cflst,i((ot,j))=1,即主體st,i對(duì)客體ot,j的CFL簽名驗(yàn)證通過;
w∈mt,i,j,即主體st,i的訪問屬性中有對(duì)客體ot,j的“讀寫”權(quán)限;
fc(st,i)?f(ot,j),即主體st,i的當(dāng)前安全級(jí)等于客體ot,j的安全級(jí);
則系統(tǒng)執(zhí)行主體st,i對(duì)客體ot,j“讀寫”請(qǐng)求。
規(guī)則5(R5) 主體釋放對(duì)客體訪問屬性:release-read/execute/write/append。
條件命題如下:
cflsyt((st,i))=1,即系統(tǒng)對(duì)主體st,iCFL證書簽名驗(yàn)證通過;
cfls,i((ot,j))=1,即主體st,i對(duì)客體ot,j的CFL簽名驗(yàn)證通過;
BLP←(BLP\{(st,i,ot,j,x)})\{(st,i,ot,j,x)c},即將從主體st,i的BLP模型訪問屬性中去除對(duì)客體ot,j的x訪問屬性,并保護(hù)該集合的完整性。
規(guī)則6(R6) 授予另一主體對(duì)客體訪問屬性:give-read/execute/write/append。
條件命題如下:
(1)cflsyt((st,λ))=1,即系統(tǒng)對(duì)主體st,λCFL證書簽名驗(yàn)證通過;
cflsy,t((st,i))=1,即系統(tǒng)對(duì)主體st,iCFL證書簽名驗(yàn)證通過;
cflst,λ((ot,j))=1,即主體st,i對(duì)客體ot,j的CFL簽名驗(yàn)證通過;
客體ot,j不是層次樹的根結(jié)點(diǎn);
主體st,λ對(duì)ot,j的父結(jié)點(diǎn)ot,j有“讀寫”權(quán)限,即w ∈ mt,λ,k,ot,k=ot,j,則主體st,λ可以授予另一主體st,i對(duì)客體ot,j的訪問權(quán)限-x;
(2)cflsyt((st,λ))=1,即系統(tǒng)對(duì)主體st,λCFL證書簽名驗(yàn)證通過;
cflsy,t((st,i))=1,即系統(tǒng)對(duì)主體st,iCFL證書簽名驗(yàn)證通過;
客體ot,j是層次樹的根結(jié)點(diǎn),并且主體有權(quán)授予其他主體對(duì)體ot,j的訪問矩陣中的權(quán),即 GLVE(st,λ,ot,j,-x)為真。
規(guī)則7(R7) 撤銷另一主體對(duì)客體訪問屬性:rescind-read/execute/write/append。
條件命題如下:
(1)cflsyt((st,λ))=1,即系統(tǒng)對(duì)主體st,λCFL證書簽名驗(yàn)證通過;
cflsyt((st,i))=1,即系統(tǒng)對(duì)主體st,iCFL證書簽名驗(yàn)證通過;
cflst,i((ot,j))=1,即主體st,i對(duì)客體ot,j的CFL簽名驗(yàn)證通過;
客體ot,j不是層次樹的根結(jié)點(diǎn),并且主體st,λ的訪問屬性中有對(duì)ot,j的父結(jié)點(diǎn)ot,j的“讀寫”權(quán)限,即∈ mt,λ,k,ot,k=ot,j;
主體st,λ可以撤銷另一主體st,i對(duì)客體ot,j的訪問權(quán)限;
(2)cflsyt((st,λ))=1,即系統(tǒng)對(duì)主體st,λCFL證書簽名驗(yàn)證通過;
cflsy,t((st,i))=1,即系統(tǒng)對(duì)主體st,iCFL證書簽名驗(yàn)證通過;
cflst,i((ot,j))=1,即主體st,i對(duì)客體ot,j的CFL簽名驗(yàn)證通過;
客體ot,j是層次樹的根結(jié)點(diǎn),并且主體st,λ有權(quán)撤銷其他主體對(duì)ot,j的訪問矩陣中的權(quán),即 RESIND(st,λ,ot,j,-x)為真。
規(guī)則8(R8) 創(chuàng)建一客體(保持兼容性):create-object.
條件命題如下:
cflst,i((o′))=1,即主體st,i對(duì)客體o'進(jìn)行CFL簽名;
o′∈b(st,i∶w)或o′∈b(st,i∶a),即主體st,i可以以“讀寫”權(quán)限或“添加”權(quán)限訪問父結(jié)點(diǎn)o′;
并且f(o′)?f(o′);
則主體st,i可以創(chuàng)建子節(jié)點(diǎn)o′,即o′∈H(o′)。
注6o′∈b(st,i∶x)是指自主訪問控制矩陣和BLP模型訪問控制權(quán)限都具有-x的訪問權(quán)限。對(duì)于BLP模型的訪問權(quán)限,在簡(jiǎn)單安全性或*特性中有一個(gè)滿足即可。
規(guī)則9(R9) 表示刪除一組客體:delete-object-group.
條件命題如下:
cflst,i((o′))=1,即主體st,i對(duì)客體o′的CFL簽名驗(yàn)證通過;
o′∈b(st,i∶w),即主體st,i對(duì)客體o′的父結(jié)點(diǎn)o′有“讀寫”權(quán)限并且客體o′不是根結(jié)點(diǎn);
則主體st,可以刪除客體o′,以及?o∈H(o′),即包括o′下面的所有子節(jié)點(diǎn)客體。
規(guī)則10(R10) 改變主體當(dāng)前安全級(jí):change-subject-current-security-level。
條件命題如下:
f(st,i)?l;
則fc(st,i)l。
規(guī)則11(R11) 改變客體的安全級(jí):change-object-security-level:
條件命題如下:
(1)cflsyt((st,i))=1,即系統(tǒng)對(duì)主體st,iCFL證書簽名驗(yàn)證通過;
cflst,i((ot,j))=1,即主體st,i對(duì)客體ot,j的CFL簽名驗(yàn)證通過;
st,i是可信主體;
fc(st,i)?f(ot,j);
?st,i∈St,ot,j∈b(st,j∶r,w)?f(st,i)?lu;
ot,j∈H(ot,j),lu?f(ot,j);
CHABGE(st,i,ot,j,lu)為真,即主體st,i有權(quán)改變客體ot,j的安全級(jí)到lu;
(2)cflsyt((st,i))=1,即系統(tǒng)對(duì)主體st,iCFL證書簽名驗(yàn)證通過;
cflst,j((ot,j))=1,即主體st,i對(duì)客體ot,j的CFL簽名驗(yàn)證通過;
fc(st,i)?f(ot,j);
?st,i∈St,ot,j∈b(st,j∶r,w)?f(st,j)?lu;
0t,j∈H(ot,j),lu?f(ot,j);
CHABGE(st,j,ot,j,lu)為真,即主體st,i有權(quán)改變客體ot,j的安全級(jí)到lu;
本文在CFL認(rèn)證體制、BLP模型的基礎(chǔ)上,給出了CFL_BLP模型。該模型保證了用戶的BLP模型的權(quán)限的完整性,確保了BLP模型的可信性、安全性。在防范隱蔽信道的基礎(chǔ)上,基于CFL_BLP模型實(shí)現(xiàn)自主可控等級(jí)保護(hù)高等級(jí)安全的信息系統(tǒng)。