馬銘鑫,史國(guó)振,王亞瓊,王豪杰,成文文
(1. 西安電子科技大學(xué)網(wǎng)絡(luò)與信息安全學(xué)院,陜西 西安 710071;2. 北京電子科技學(xué)院信息安全系,北京 100070;3. 西安電子科技大學(xué)通信工程學(xué)院,陜西 西安 710071)
適用于分布式系統(tǒng)的多級(jí)安全訪問(wèn)控制策略
馬銘鑫1,史國(guó)振2,王亞瓊3,王豪杰3,成文文2
(1. 西安電子科技大學(xué)網(wǎng)絡(luò)與信息安全學(xué)院,陜西 西安 710071;2. 北京電子科技學(xué)院信息安全系,北京 100070;3. 西安電子科技大學(xué)通信工程學(xué)院,陜西 西安 710071)
針對(duì)分布式信息系統(tǒng)的資源共享及安全互操作問(wèn)題,在多級(jí)安全模型基礎(chǔ)上加入管理平臺(tái)和中間件模塊,提出一種適用于分布式系統(tǒng)的多級(jí)安全訪問(wèn)控制策略,保證數(shù)據(jù)機(jī)密性和訪問(wèn)過(guò)程安全可控。用XACML語(yǔ)言對(duì)安全策略進(jìn)行標(biāo)準(zhǔn)化描述,并對(duì)策略進(jìn)行安全性和靈活性分析。
分布式系統(tǒng);多級(jí)安全;管理平臺(tái);中間件;XACML
隨著Internet的飛速發(fā)展,計(jì)算機(jī)和通信網(wǎng)絡(luò)已經(jīng)滲透到人們生活中的各個(gè)方面,分布式信息系統(tǒng)[1]憑借可靠性高、靈活性強(qiáng)以及擴(kuò)充性好等特點(diǎn)得到越來(lái)越廣泛的應(yīng)用。分布式信息系統(tǒng)之間需要進(jìn)行大量數(shù)據(jù)通信和信息交互,因此面臨信息竊取、非法修改等威脅,如何確保網(wǎng)絡(luò)資源的安全共享和互操作已成為研究的重要課題。多級(jí)安全[2]作為強(qiáng)制訪問(wèn)控制[3]的有效手段,其“不上讀不下寫”的安全特性可以控制數(shù)據(jù)按照級(jí)別只能從低向高流動(dòng),確保敏感數(shù)據(jù)不泄露,可以安全有效地解決跨域分布式系統(tǒng)之間的信息互操作,保證合法用戶對(duì)網(wǎng)絡(luò)信息資源受控正確地使用,限制非法用戶的入侵和蓄意破壞。
訪問(wèn)控制[4]的主要功能是允許合法用戶訪問(wèn)和使用系統(tǒng)受保護(hù)的資源和服務(wù),并防止非法用戶的訪問(wèn)和合法用戶的非法訪問(wèn)。對(duì)分布式系統(tǒng)訪問(wèn)控制技術(shù)的研究始于20世紀(jì)90年代初分布式系統(tǒng)開(kāi)始大量出現(xiàn)的時(shí)候[5]。隨著分布式技術(shù)迭代更新,安全管理機(jī)制發(fā)展遇到瓶頸,信任管理[6]成為新的研究突破點(diǎn)。信任管理是說(shuō)明和解釋安全策略的統(tǒng)一方法,為安全策略提供標(biāo)準(zhǔn)、通用的機(jī)制[7],允許對(duì)安全重要的動(dòng)作進(jìn)行直接授權(quán)。因此系統(tǒng)在實(shí)施訪問(wèn)控制之前,制定其安全策略十分重要。文獻(xiàn)[8]提出一種基于風(fēng)險(xiǎn)的訪問(wèn)控制模型,通過(guò)風(fēng)險(xiǎn)值及其波動(dòng)幅度動(dòng)態(tài)調(diào)整用戶的訪問(wèn)權(quán)限,實(shí)現(xiàn)了分布式系統(tǒng)隱私保護(hù)的機(jī)制,但未體現(xiàn)多級(jí)安全策略。文獻(xiàn)[9]通過(guò)引入可信度量機(jī)制提出基于可信計(jì)算的多級(jí)安全策略(TCBMLSP, trust computing based multilevel security policy),保證主體行為可信和多級(jí)信息安全流通,但未通過(guò)非傳遞不干擾信息流理論對(duì)其進(jìn)行建模與安全性證明。為提高分布式環(huán)境下多級(jí)安全實(shí)施的正確性和可行性,文獻(xiàn)[10]提出了分布式可信計(jì)算基(DTCB, distributed trusted computing base),實(shí)現(xiàn)了細(xì)粒度的多級(jí)安全訪問(wèn)控制和信息流控制,并采用組合無(wú)干擾模型對(duì)齊進(jìn)行形式化安全證明,但靈活性欠缺。文獻(xiàn)[11]從理論角度制定分布式控制系統(tǒng)和分級(jí)系統(tǒng)的研究計(jì)劃,討論建模、多級(jí)控制的分布式通信方式,但沒(méi)有具體實(shí)現(xiàn)方法。隨著理論的成熟,更多的安全策略被應(yīng)用到實(shí)際系統(tǒng)中,文獻(xiàn)[12]提出一個(gè)安全框架,解決了預(yù)算和時(shí)間約束下分布式數(shù)據(jù)庫(kù)的安全需求,通過(guò)使用多級(jí)安全數(shù)據(jù)庫(kù)管理系統(tǒng)在不同站點(diǎn)復(fù)制不同的預(yù)定義安全策略,實(shí)現(xiàn)每個(gè)系統(tǒng)在進(jìn)入操作模式之前通過(guò)嚴(yán)格的安全掃描。文獻(xiàn)[13]提出了基于分布式頂點(diǎn)中心范式的多級(jí)強(qiáng)制向?qū)惴?,并在Giraph平臺(tái)上實(shí)現(xiàn),展示了安全策略算法的有效性和可擴(kuò)展性。文獻(xiàn)[14]提出一個(gè)新的多層次分級(jí)模型,可以自動(dòng)識(shí)別不同層云服務(wù)的攻擊類型和風(fēng)險(xiǎn)評(píng)估,保證數(shù)據(jù)隱私,但是未體現(xiàn)出可監(jiān)管性。在對(duì)分布式文件系統(tǒng)的安全需求進(jìn)行詳細(xì)、全面的分析后,本文以多級(jí)安全模型為基礎(chǔ),提出一種適用于分布式系統(tǒng)的多級(jí)安全訪問(wèn)控制策略,兼顧靈活性、可擴(kuò)展性和第三方可監(jiān)管特性。用XACML語(yǔ)言對(duì)安全策略進(jìn)行清晰準(zhǔn)確描述,并進(jìn)行必要的安全性證明,有效解決分布式系統(tǒng)域間安全互操作問(wèn)題。
本文以多級(jí)安全模型為基礎(chǔ),加入管理平臺(tái)和中間件模塊形成安全策略,提高模型的安全性和可擴(kuò)展性,實(shí)現(xiàn)分布式信息系統(tǒng)之間安全高效的信息交互。
3.1 模型基本要素
主體(S, subject):指用戶、進(jìn)程,如式(1)所示。
客體(O, object):指文件、數(shù)據(jù)、程序、存儲(chǔ)器段等,如式(2)所示。
安全等級(jí)(security level):是主體、客體的梯度安全標(biāo)記,包括主體、客體密級(jí)(classification)和范疇集(category)。主體、客體密級(jí)表示主體、客體保密性的敏感程度,如式(3)所示;范疇集表示組織中部門或類別的集合,如式(4)所示;系統(tǒng)中所有主體和客體均分配了密級(jí)和范疇集,如式(5)所示。
訪問(wèn)控制矩陣(access matrix):用矩陣的形式描述任意時(shí)刻系統(tǒng)中自主授權(quán)狀態(tài),如式(6)所示。
訪問(wèn)屬性集(attribute set):描述主體訪問(wèn)客體的方式,如式(7)所示。其中執(zhí)行(E,execute),只讀(R,read),添加(A,append),讀/寫(W,write)。
系統(tǒng)狀態(tài)(state):表示多級(jí)安全系統(tǒng)所有可能的系統(tǒng)狀態(tài),如式(8)所示。用b表示在系統(tǒng)狀態(tài)v下,主體s對(duì)客體o的訪問(wèn)屬性權(quán)限,如式(9)所示。
多級(jí)安全特性[3](multilevel security property):多級(jí)安全特性定義系統(tǒng)狀態(tài)的安全性,體現(xiàn)多級(jí)安全策略,如式(10)~式(12)所示,包括自主安全性、簡(jiǎn)單安全性和*-性質(zhì)。
3.2 模型新增模塊
為了擺脫傳統(tǒng)多級(jí)安全集中式管理的約束,本文通過(guò)加入管理平臺(tái)模塊和中間件模塊提高多級(jí)安全的可擴(kuò)展性和安全性,實(shí)現(xiàn)了分布式系統(tǒng)之間信息安全交互和對(duì)分布式信息系統(tǒng)的安全管理。
管理平臺(tái)(platform):是獨(dú)立、可信、可監(jiān)管的第三方,負(fù)責(zé)協(xié)調(diào)各個(gè)跨域分布式系統(tǒng)的安全管理工作。主要功能包括:對(duì)分布式信息系統(tǒng)中的用戶和文件進(jìn)行定級(jí);采用公鑰密碼技術(shù)保證訪問(wèn)請(qǐng)求/應(yīng)答的安全信息交互;記錄用戶的歷史訪問(wèn)信息,供日后進(jìn)行安全審計(jì)。
中間件(middleware):是分布式信息系統(tǒng)和管理平臺(tái)之間的信息交互接口,通過(guò)信息加密和解密、身份認(rèn)證和口令校驗(yàn)等方式完成兩者之間信息的安全交互。
為了保證分布式系統(tǒng)信息跨域互操作的安全性和靈活性,對(duì)用戶訪問(wèn)行為進(jìn)行約束,本文在多級(jí)安全模型基礎(chǔ)上制定一種安全策略,保證主體對(duì)客體實(shí)施訪問(wèn)控制時(shí)必須遵循一定的規(guī)則,確保系統(tǒng)安全性。
4.1 策略元素
將多級(jí)安全策略中涉及的參與元素用數(shù)學(xué)符號(hào)表示,具體元素的中文含義、英文含義和符號(hào)表示如表1所示。
表1 安全策略元素表示
4.2 安全策略詳述
本文為解決分布式系統(tǒng)之間不同等級(jí)用戶和文件安全互操作問(wèn)題,提出一種多級(jí)安全策略,以Distx域下Sys1系統(tǒng)的用戶S3想要訪問(wèn)Disty域下Sys1系統(tǒng)的文件O8的實(shí)現(xiàn)為例,安全策略詳細(xì)步驟如圖1所示。
Step 1 等級(jí)映射:管理平臺(tái)通過(guò)綜合評(píng)估對(duì)分布式系統(tǒng)用戶S3和文件O8進(jìn)行重新定級(jí),但是并不改變用戶和文件原有等級(jí),而是將評(píng)定結(jié)果映射到管理平臺(tái)的等級(jí)映射表(LML,level mapping list),如圖2所示。
Step 2 主體訪問(wèn)請(qǐng)求:用戶S3訪問(wèn)文件O8,發(fā)起訪問(wèn)請(qǐng)求s_req(s_distx, s_sys1, s3, s_selv, o_disty, o_sys1, o8, o_selv, op),依次將req中主體區(qū)域、系統(tǒng)、用戶名、用戶安全等級(jí)、文件名和訪問(wèn)方式等信息進(jìn)行填充,o_selv暫不填充,因?yàn)榇藭r(shí)S3并不知道O8的安全等級(jí),然后通過(guò)中間件將請(qǐng)求信息分別用管理平臺(tái)和分布式系統(tǒng)的公鑰加密發(fā)送。
Step 3 客體本地查詢:Disty區(qū)域Sys1系統(tǒng)的中間件收到Distx區(qū)域Sysi系統(tǒng)的用戶S3的訪問(wèn)請(qǐng)求后,對(duì)請(qǐng)求信息解密認(rèn)證,然后根據(jù)O8文件名去本地文件系統(tǒng)數(shù)據(jù)庫(kù)查找O8相關(guān)信息,得到O8的安全等級(jí)。
圖1 多級(jí)安全策略結(jié)構(gòu)
圖2 等級(jí)映射表
Step 4 客體訪問(wèn)請(qǐng)求:文件系統(tǒng)Middleware生成一個(gè)一次性口令,并對(duì)req進(jìn)行反饋形成o_res(s_distx, s_sys1, s3, s_selv, o_disty, o_sys1, o8, o_selv, op, pass),將文件O8的o_selv和剛生成的pass進(jìn)行填充,最后將o_res用管理平臺(tái)公鑰加密發(fā)送。
Step 5 管理平臺(tái)授權(quán)認(rèn)證:管理平臺(tái)首先將收到step 2和step 4信息進(jìn)行解密,然后進(jìn)行匹配(為了確保是同一條請(qǐng)求信息),匹配成功后等級(jí)映射表LML根據(jù)主s_req和o_res中主體、客體信息查找對(duì)應(yīng)的安全等級(jí)并根據(jù)多級(jí)安全模型進(jìn)行授權(quán)判定,得到permission。
Step 6 平臺(tái)授權(quán)客體:管理平臺(tái)將授權(quán)判定結(jié)果用分布式文件系統(tǒng)公鑰加密返回,文件系統(tǒng)對(duì)p_res(s_distx, s_sys1, s3, s_selv, o_disty, o_sys1, o8, o_selv, op, pass, per)進(jìn)行解密,如果per為同意訪問(wèn),文件系統(tǒng)將文件O8的password認(rèn)證接口打開(kāi),并設(shè)置用戶訪問(wèn)時(shí)限倒計(jì)時(shí)5 min(超時(shí)窗口關(guān)閉);否則,Middleware關(guān)閉本次訪問(wèn)請(qǐng)求。無(wú)論成功與否,都將該次訪問(wèn)行為進(jìn)行記錄,供日后安全審計(jì)使用。
Step 7 平臺(tái)授權(quán)主體:管理平臺(tái)將認(rèn)定結(jié)果用用戶公鑰加密返回,p_res(s_distx, s_sys1, s3, s_selv, o_disty, o_sys1, o8, o_selv, op, pass, per),如果per為同意訪問(wèn),用戶S可以用password訪問(wèn)文件O8;否則,Middleware關(guān)閉本次訪問(wèn)請(qǐng)求,同樣將該次訪問(wèn)行為進(jìn)行記錄,供日后安全審計(jì)使用。
Step 8 記錄訪問(wèn)行為:同樣地,管理平臺(tái)也會(huì)將每次訪問(wèn)行為都記錄在案,以獨(dú)立的可信第三方身份保證每一次主體訪問(wèn)客體行為的真實(shí)抗抵賴性,供日后安全審計(jì)使用。
Step 9 安全審計(jì):審計(jì)作為獨(dú)立的第三方,監(jiān)督管理平臺(tái)、分布式文件系統(tǒng)和用戶歷史記錄,負(fù)責(zé)安全審計(jì),供相關(guān)單位進(jìn)行安全檢查。
4.3 XACML語(yǔ)言描述
XACML是一種統(tǒng)一標(biāo)準(zhǔn)語(yǔ)言[15],用于描述訪問(wèn)控制策略以及訪問(wèn)控制請(qǐng)求/響應(yīng)的產(chǎn)生過(guò)程,不僅為整個(gè)授權(quán)過(guò)程的控制提供一系列邏輯算法,而且還提供標(biāo)準(zhǔn)可擴(kuò)展點(diǎn),使其能夠很好地適用于分布式信息系統(tǒng)。本文從策略(policy)、請(qǐng)求(request)和響應(yīng)(response)這3個(gè)方面對(duì)上述安全策略進(jìn)行XACML語(yǔ)言描述,實(shí)現(xiàn)規(guī)范化和實(shí)例化。
1) Policy
Policy是對(duì)安全策略的核心描述,本文的訪問(wèn)控制授權(quán)機(jī)制采用多級(jí)安全策略,即 2) Request 用戶需要規(guī)范地描述和表示跨域操作的請(qǐng)求,以說(shuō)明自己的身份信息以及訪問(wèn)目標(biāo)。例如,位于上海市(Shanghai)檔案局(Document)的Alice想要查看北京市(Beijing)檔案局的上季度財(cái)務(wù)收入(quarter revenue),用XACML語(yǔ)言描述此請(qǐng)求過(guò)程如下。 3) Response 管理平臺(tái)通過(guò)Policy對(duì)Request進(jìn)行安全驗(yàn)證授權(quán)后,將授權(quán)結(jié)果返回給客戶端。如果允許,客戶用password進(jìn)行訪問(wèn);如果拒絕,用戶則無(wú)權(quán)訪問(wèn)該文件,用XACML語(yǔ)言描述如下。 5.1 可擴(kuò)展性分析 當(dāng)有新的分布式系統(tǒng)加入時(shí),根據(jù)本文提出的LML,只需將不同等級(jí)的用戶和文件按照等級(jí)進(jìn)行映射,而不是將每一個(gè)用戶和文件重新定級(jí),實(shí)用性較高,依次類推,管理平臺(tái)只需對(duì)系統(tǒng)從總體角度上進(jìn)行認(rèn)定,可以融入更多分布式系統(tǒng),體現(xiàn)了較高的可擴(kuò)展性。 5.2 安全性分析 5.2.1 信息交互安全性 管理平臺(tái)與分布式信息系統(tǒng)之間通信全程公鑰加密,并且Middleware還實(shí)現(xiàn)了用戶認(rèn)證、password和訪問(wèn)時(shí)限倒計(jì)時(shí)等功能,極大程度上保證了分布式系統(tǒng)之間信息交互的機(jī)密性。 5.2.2 模型安全性 由于模型中加入了LML,增添了原有多級(jí)安全的認(rèn)證用戶和信息,因此需要對(duì)模型的安全性進(jìn)行證明,最終結(jié)果表明安全性有保障。 即 else 進(jìn)入(b, M, f)狀態(tài)。 具體證明如下。 ① 證明滿足式(10)自主安全特性 滿足多級(jí)安全式(10)特性 ② 證明滿足式(11)簡(jiǎn)單安全特性 滿足多級(jí)安全式(11)特性 ③ 證明滿足式(12)滿足*-特性 滿足多級(jí)安全式(12)特性 證畢。 本文基于多級(jí)安全模型,加入管理平臺(tái)和中間件模塊,提出一種適用于分布式系統(tǒng)的多級(jí)安全策略,保證了分布式系統(tǒng)之間跨域操作、信息交互的安全性,極大提高了安全策略的安全性和可擴(kuò)展性。采用XACML語(yǔ)言對(duì)策略進(jìn)行規(guī)范化描述,并對(duì)策略安全性進(jìn)行形式化證明。接下來(lái),將本文安全策略進(jìn)行實(shí)現(xiàn),并應(yīng)用到實(shí)際分布式系統(tǒng)中。 [1] CHANDY K M, LAMPORT L. Distributed snapshots: determining global states of a distributed system[J]. ACM Transactions on Computer Systems, 1985, 3(1): 63- 75. [2] BELL D E, PADULA L J L. Secure computer system: unified exposition and multics interpretation[J]. Secure Computer System Unified Exposition & Multics Interpretation, 1976. [3] ISO 7498-2: 1989(en)[S]. [4] 李鳳華, 殷麗華, 吳巍, 等. 天地一體化信息網(wǎng)絡(luò)安全保障技術(shù)研究進(jìn)展及發(fā)展趨勢(shì)[J]. 通信學(xué)報(bào), 2016, 37(11): 156-166. LI F H, YIN L H, WU W, et al. Research status and development trends of security assurance for space-ground integration information network[J]. Journal of Communications.2016, 37(11): 156-166. [5] WOO T Y C, LAM S S. Authorization in distributed systems: a formal approach[C]//IEEE Computer Society Symposium on Research in Security and Privacy. 1992:33-33. [6] BLAZE M, FEIGENBAUM J, LACY J. Decentralized trust man-agement[J]. Proceedings of IEEE Conference security & Privacy, 1996, 30(1): 164-173. [7] Blaze M. The KeyNote Trust-Management System Version 2[J]. At & T Research Labs, 1999. [8] 李甲帥, 彭長(zhǎng)根, 朱義杰, 等. 面向Hadoop的風(fēng)險(xiǎn)訪問(wèn)控制模型[J]. 網(wǎng)絡(luò)與信息安全學(xué)報(bào),2016, 2(1): 46-52. LI J S, PENG C G, ZHU Y J, et al. Risk access control model for Hadoop[J]. Chinese Journal of Network and Information Security, 2016, 2(1): 46-52. [9] LIU X T, LI X W, CUI X. Research on trust computing based multilevel security policy[J]. Electronic Design Engineering, 2016. [10] JING S, CHEN X, DU X, et al. Distributed multilevel security core architecture based on noninterference theory[J]. Journal of Computer Applications, 2013, 33(3): 712-716. [11] SCHUPPEN J H V. Research program for control of distributed and of multilevel systems[M]//Coordination Control of Distributed Systems. Berlin: Springer, 2015: 385- 392. [12] BATRA N, SINGH M. Multilevel policy based security in distributed database[M]//Advances in Computing and Communications. Berlin : Springer, 2011: 572- 580. [13] ARLEO A, DIDIMO W, LIOTTA G, et al. A distributed multilevel force-directed algorithm[C]//The International Symposium on Graph Drawing and Network Visualization. 2016:3-17. [14] HUSSAIN S A, FATIMA M, SAEED A, et al. Multilevel classification of security concerns in cloud computing[J]. Applied Computing & Informatics, 2016. [15] eXtensible Access Control Markup Language (XACML) Version 3.0[S]. 2013. Multilevel secure access control policy for distributed systems MA Ming-xin1, SHI Guo-zhen2, WANG Ya-qiong3, WANG Hao-jie3, CHENG Wen-wen2 (1. School of Cyber Engineering, Xidian University, Xi'an 710071, China; 2. School of Information Security, Beijing Electronic Science and Technology Institute, Beijing 100070, China; 3. School of Telecommunications Engineering, Xidian University, Xi'an 710071 China) A multilevel secure access control strategy for distributed system was proposed, which could guarantee the data confidentiality and security, through adding platform and middleware modules. The security policy was described in the XACML language, and the security and flexibility of the policy were analyzed. distributed systems, multilevel security, platform, middleware, XACML s: The National Key Research Program of China (No.2016YFB0800304), The Natural Science Foundation of Beijing (No.4152048) TP309 A 10.11959/j.issn.2096-109.x.2017.00184 馬銘鑫(1992-),男,山西臨汾人,西安電子科技大學(xué)博士生,主要研究方向?yàn)榫W(wǎng)絡(luò)信息安全。 史國(guó)振(1974-),男,河南濟(jì)源人,博士,北京電子科技學(xué)院副教授、碩士生導(dǎo)師,主要研究方向?yàn)榫W(wǎng)絡(luò)與系統(tǒng)安全、嵌入式安全。 王亞瓊(1994-),女,山西朔州人,西安電子科技大學(xué)碩士生,主要研究方向?yàn)榫W(wǎng)絡(luò)信息安全。 王豪杰(1991-),男,山東青島人,碩士,西安電子科技大學(xué)碩士生,主要研究方向?yàn)樵L問(wèn)控制與網(wǎng)絡(luò)安全。 成文文(1993-),男,河南濟(jì)源人,北京電子科技學(xué)院碩士生,主要研究方向?yàn)榫W(wǎng)絡(luò)安全。 2017-05-10; 2017-06-27。通信作者:史國(guó)振,sgz1974@163.com 國(guó)家重點(diǎn)研發(fā)計(jì)劃基金資助項(xiàng)目(No.2016YFB0800304);北京市自然科學(xué)基金資助項(xiàng)目(No.4152048)5 模型分析
6 結(jié)束語(yǔ)