999精品在线视频,手机成人午夜在线视频,久久不卡国产精品无码,中日无码在线观看,成人av手机在线观看,日韩精品亚洲一区中文字幕,亚洲av无码人妻,四虎国产在线观看 ?

一種基于安全標簽的訪問控制模型的設計和實現

2007-01-01 00:00:00張愛華
計算機應用研究 2007年1期

摘要:針對目前Linux操作系統的主要安全問題,構建了一種基于安全標簽的訪問控制模型——SLinux。描述了該模型的結構和工作原理,詳細論述了該模型基于LSM機制的實現,對該模型的功能和系統兼容性作了理論分析,并用試驗進行了驗證,最后總結了該模型的特點和不足。

關鍵詞: 訪問控制; 安全標簽; 多級安全; 訪問域

中圖法分類號:TP309文獻標識碼:A

文章編號:1001-3695(2007)01-0183-03

互聯網開放性的通信環境和日益增長的信息共享需求對計算機互連和計算機自身安全提出了新的要求。計算機的安全問題很大部分源于操作系統的安全脆弱性。

作為大多數網絡安全產品操作系統平臺的Linux本身就存在很大的安全問題:Linux只支持Root和普通用戶兩個安全級,Root權限過大違背了最小特權原則,而普通進程有時也可通過SetUID和SetGID取得更大的權限;Linux傳統的自主訪問控制(DAC)安全機制對于竄改和繞過又是十分脆弱的;由缺少數組邊界檢查的C語言編寫的很多特權程序往往成為基于緩沖區溢出攻擊的首要目標。

為解決上述問題,構建了一種基于安全標簽的訪問控制模型——SLinux(Secure Linux)。該模型是對經典的多級安全訪問控制模型——BLP模型的擴展,它的核心概念是由安全級別、訪問域、權能構成的安全標簽。其核心思想是通過安全標簽來控制主體對客體的訪問:安全級別和訪問域控制進程對文件系統的訪問,權能屬性用來控制進程間的通信。

1相關訪問控制技術

1.1多級安全與BLP模型

多級安全是軍事安全策略的一種數學描述,它具有兩個主要特性:①簡單安全特性。僅當一個主體的安全級不低于客體的安全級時,才允許該主體讀該客體。②*特性。僅當一個主體的安全級不高于客體的安全級時,才允許該主體寫該客體。

BLP模型是一個狀態機模型,定義的系統包含一個初始狀態Z0和一些三元組(請求,判定,狀態)組成的序列,三元組序列中相鄰狀態之間滿足某種關系W。如果一個系統的初始狀態是安全的,并且三元組序列中的所有狀態都是安全的,那么這樣的系統就是一個安全系統。

BLP模型雖然易用,但是功能單一,往往不能直接用于商業系統。例如對目錄不能直接進行安全分級;沒有橫向的訪問控制:根據BLP的原則,某一應用程序可以訪問等于或低于其敏感級別的屬于另一應用程序的私有數據,這樣的讀寫操作將會導致數據的泄漏甚至破壞。

1.2Linux中的權能機制

權能就是一個進程能夠對某個對象進行的操作,在訪問主體上實現。

從Linux 2.1版的內核開始,內核開發人員在Linux內核中加入了權能的概念。其目標是消除需要執行某些操作的程序對Root賬號的依賴。

每個進程有三個與權能有關的位圖:inheritable(I),permitted(P)和effective(E),對應進程的描述符task_struct(include/linux/sched.h)中的cap_effective,cap_inheritable, cap_permitted。每種權能用一位表示,1表示具有某種權能,0表示沒有。當一個進程要進行某個特權操作時,操作系統會檢查cap_effective的對應位是否有效;cap_permitted表示進程能夠使用的權能;cap_inheritable表示能夠被當前進程執行的程序繼承的權能。

2SLinux訪問控制模型設計和實現

2.1模型的設計思想

BLP模型不能限制信息流的橫向流動,因此引入了訪問域的概念。訪問域是進程可以訪問的資源的集合,每一個主體都在一個特定的訪問域下工作,訪問域并不是彼此獨立的,它們可以有交叉。這樣將BLP模型與訪問域結合可以更有效地限制訪問范圍,同時加入權能屬性以有效控制進程間的訪問。

訪問控制粒度是訪問控制模型中一個至關重要的問題。在操作系統中,文件、用戶和進程都是主體,其中文件和用戶是靜態表示,真正活動的主體是進程,它是一個用戶擁有的可執行文件的映像。一個進程比一個程序或一個用戶有更細的粒度,而且進程是臨時的,相對于程序和用戶而言,在一定程度上可以減少維護。

基于上面的分析,為了加強操作系統的安全性,設計了一個以進程為控制粒度的基于BLP模型和安全標簽(包括多級安全、訪問域和權能三個屬性)的訪問控制模型——SLinux。

2.2LSM機制

考慮到不同Linux版本之間的兼容性,該模型是基于LSM機制來實現的。

Linux安全模塊(LSM)是支持訪問控制的底層架構,該架構可以使那些具體的安全策略及實現作為一個可選擇的內核模塊載入內核,從而大大提高了Linux安全訪問控制機制的靈活性和易用性。

LSM的基本設計思想是在內核源代碼中放置鉤子(Hook)函數,由用戶編寫Hook函數對內核對象的訪問權限作出判斷,并在內核數據結構中放置透明安全字段(Opaque Security Field)作為內核對象的安全屬性。

2.3模型的總體結構和工作原理

整個模型包括四個模塊,即認證模塊、判定模塊、審計模塊和標簽管理模塊,另外還有安全標簽數據庫、用戶的數字證書數據庫和審計日志文件。其結構如圖1所示。

基于LSM機制實現的模塊的工作原理如圖2所示。用戶程序對文件系統的訪問必須經過Linux系統自帶的訪問控制和該訪問控制模型才能夠被允許。該模型主要包括兩個工作,即用戶請求的判定和基于安全標簽的動態調整所實現的動態安全機制。

2.4重要數據結構定義和說明

安全標簽是SLinux訪問控制模型的核心概念,它包括主體和客體兩種。主體是指進程(因為該模型的訪問控制是以進程為粒度的),客體包括文件、目錄、特殊文件、進程間通信結構、進程和模塊。在系統中不同的主體和客體的安全標簽是不同的,并且有時主體(進程)也可以是客體,如在進程管理中。對于可執行文件來說,主體和客體都不為空,對于數據文件等非可執行文件來說,主體為空, 客體非空。

2.4.1主體的安全標簽

SL:(L,D,C),其中L為主體的安全級,D為主體的訪問域,C為主體的權能(Capability)和權能擴展。

(1)對權能控制的擴充:為了實現某些操作系統不支持的特性,加強對操作系統自身的保護,本模型引入了三種擴充權能:

①CAP_PROC_HID(0x01)。實現進程的隱藏,如果想隱藏某一個進程,可以將該進程安全標簽的權能控制域s_capacity_ext與CAP_PROC_HID執行或運算就可以了。

②CAP_UNKILLABLE(0x02)。防止某些程序關閉一些系統服務等重要進程,用法同上。

③CAP_CHANGE_PRIORITY(0x04)。賦予某主體修改自身安全標簽的能力。

(2)訪問域:代表一部分可見并且可以被進程訪問(讀或寫)的文件系統的集合,包含程序代碼和數據,它有效地創建了一個文件系統的盒子,運行的進程被限制在其中。這個訪問域并不代替傳統的Linux文件系統的訪問控制,它們在一個更高的安全級別操作。

該模型將訪問類型根據訪問控制的目的分為三類,訪問域也相應地分為三類:

①讀訪問。讀文件、搜索目錄、執行文件、遵循鏈接等。

②寫訪問。創建文件、寫文件、刪除文件、移動文件等。

③權能控制。進程之間的訪問控制,如發送信號給一個或一組進程,客體為進程。

2.4.2客體的安全標簽

OL:(L,Mask), 其中L為客體的安全級;Mask是該客體的功能集合,每一位代表一種功能,目前只定義了三種:第一位為讀訪問不可繼承標志,1表示在讀訪問域中為不可繼承客體;第二位為寫訪問不可繼承標志,1表示不可繼承客體;第三位為隱藏標志,1表示該客體對訪問它的主體是隱藏的。

2.4.3安全標簽的配置 

安全標簽是由系統安全管理員在該系統初次安裝時為每個可能的主體和客體配置的,并把它們存放在安全標簽數據庫中(存儲在文件系統不利于模型兼容性和擴展性需要)。

在系統每次運行時,進程的安全標簽在進程中被創建,即fork()時確定,由標簽管理模塊從安全標簽數據庫中提取。用戶注冊時,因注冊而產生的進程安全標簽由用戶在允許范圍內選定,可選級別(包括安全標簽中的各項)不能大于用戶及用戶屬組的級別。已存在的客體或主體的級別可由安全管理員設置,新建客體(包括進程)的級別通常等于創建該客體的進程級別。對于新建目錄,可以在允許的范圍內選定大于創建其進程的級別。如果進程通過調用產生子進程時,那么子進程從其父進程那里繼承安全標簽。在繼承時父進程可以根據模型對客體定義的不可繼承標志選擇性地授權給子進程,這樣子進程就不具備對不可繼承的客體的訪問權限。

在BLP模型的常規實施方法中,一個主體的當前安全級別在其整個生命周期內是不可改變的,這種方法的缺點是缺乏靈活性,很容易導致合法的資源訪問請求遭到拒絕。該訪問控制模型實現了進程安全標簽的自適應變化,這是由標簽管理模塊來實現的。當一個進程要改變安全標簽時,如要改變訪問域,它會向標簽管理模塊提出申請,將其安全標簽更新。當然不是所有的權限要求都可以被批準,標簽管理部件中對此進行了限制,如普通用戶不可以對系統配置信息進行修改等。

2.5內核模塊的實現

為了便于系統設計的模塊化,把認證模塊、標簽管理模塊、判定模塊和審計模塊等都以一系列內核輔助函數的形式來實現,這樣當對其中某個模塊(如判定模塊)進行修改時,只要接口不變,就不會影響到其他模塊。

2.5.1認證模塊的實現

認證模塊的主要功能是出現下面兩種情況時,對用戶的身份進行認證:

(1)當用戶進程要求動態調整自己的安全標簽時;

(2)當系統安全管理員調整安全標簽數據庫中的安全標簽時。

根據用戶權限的不同,定義了兩種認證類型對應上述兩種情況,分別為AUTH_CHANGE_PRIORITY和AUTH_CHANGE_CONFIG。 

用戶通過該模型提供的用戶接口向認證模塊提出認證請求,認證模塊從數字證書數據庫中取出該用戶的數字證書,與用戶提供的簽名信息進行比較;如果一致將繼續判斷用戶的登錄類型與用戶要求的認證類型是否相符,通過認證后就將請求送入下面的標簽管理部件。

如果系統安全管理員申請權限成功,對于安全標簽的修改主要是修改該主體安全標簽的讀寫訪問域,將安全標簽數據庫或者配置文件所在的目錄加入其讀寫訪問域中。在系統安全管理員申請該權限以前,安全標簽數據庫和配置文件是不在任何用戶的任何訪問域中的。

對于用戶申請權限,認證模塊將調用標簽管理模塊修改該進程的權能屬性(增加CAP_CHANGE_PRIORITY權能)。該操作只是對該進程內存中的安全標簽進行修改,而不會修改安全標簽數據庫中的內容。

2.5.2標簽管理模塊的實現

標簽管理模塊主要向各內核模塊以及用戶提供一組接口,對安全標簽數據庫中的安全標簽進行管理和配置。在調用這些接口函數時,它們都會調用判定模塊來確定該用戶權限。

該模塊共包括三種類型的接口,前兩項通過sys_security鉤子函數提供給用戶:

(1)面向系統安全管理員的接口。它幫助安全管理員根據需要調整安全標簽數據庫中的安全標簽。

(2)面向普通用戶的接口。它可以讓用戶在一定范圍調整內存中自己的安全標簽,使其具有完成任務的最小權限。當用戶提交申請時,標簽管理模塊的函數會首先檢查該主體是否具有CAP_CHANGE_PRIORITY權能屬性,如果沒有將返回失敗信息;否則將該主體申請的安全標簽與從安全標簽數據庫中提取的安全標簽進行比較,如果滿足規則就設置該主體的安全標簽,否則返回錯誤信息。

(3)面向內核模塊的接口。它主要為其余內核模塊完成相應的任務提供服務,所有通過該接口調整的都是調整主體在內存中的安全標簽,如上面提到的認證模塊對標簽管理模塊的調用都是調用的這些函數。例如,修改進程的安全標簽,使其具有修改安全標簽數據庫或者配置文件的權利。

2.5.3判定模塊的實現

判定模塊的主要功能是實現對訪問請求的判定。它將訪問操作的主體、客體及操作與安全標簽數據庫中的相應信息進行比較。根據判定規則,如果主、客體的安全級符合要求,并且客體在主體的訪問域內(對于讀寫操作)或權能域內(對于權能控制),另外對于權能控制還要求主體具有該權能才允許訪問,否則拒絕。

2.5.4審計模塊的實現

審計模塊主要是將通過認證部件的信息及判定部件的信息記入到審計日志中,可為入侵檢測及系統錯誤的判斷提供有利信息。模型只記錄那些對系統來說比較重要的事件,如用戶登錄、讀寫操作和修改權限等。審計數據主要來自認證模塊和判定模塊,每次收集到的審計數據都先寫入專門的審計緩沖區中,當緩沖區中的數據快滿時再一次寫入審計數據庫中。

2.6SLinux與用戶接口

在SLinux系統中,與用戶接口是通過LSM提供的一個通用的多路安全系統調用security()實現的,其參數為(unsigned int id, unsigned int call, unsigned long *args),其中id代表模塊描述符,call代表調用描述符,args代表參數列表。這個系統調用缺省地提供了一個sys_security()入口函數。如果安全模塊不提供新的系統調用,可以定義返回ENOSYS的sys_security()鉤子函數。

2.7配置文件

在該系統中,用戶訪問域的設置、訪問域的設置,以及審計級別的設置是在配置文件中完成的。當該模塊被注冊并調入系統后,配置文件會被映射為內存映像文件,內核模塊所有對配置文件的操作都是對內存映像文件的操作。

3SLinux訪問控制模型分析和實驗

3.1系統安全性分析

該模型不僅實現了基于安全級別的縱向控制,而且實現了基于訪問域的橫向控制以及動態安全。以進程為粒度、安全標簽的動態調整以及權限的選擇性繼承體現了操作系統安全的最小特權原則;將Root視為與系統中其他用戶平等,限制了Root有意或無意對系統的破壞;即使進程由于SetUID和SetGID屬性獲得了程序文件屬主和組的權限或者出現緩沖區溢出,其訪問也不可能超出訪問域的范圍,將可能的危害限制在盡可能小的范圍內。同時訪問域還能將木馬和病毒程序對系統的破壞限定在一定的范圍內。這些措施有效地保證了系統的安全。

3.2系統的兼容性分析

由于該訪問控制模型是基于LSM機制實現的,作為可加載模塊裝入系統,采用了標準的接口方式,改變的只是對一些系統調用實施了安全策略的檢查或增加了新的系統調用,因此它有很好的兼容性。

安全標簽的存在采用了數據庫的形式,而沒有在現有文件系統(Ext2)的硬盤i節點結構的基礎上擴充其安全信息,這樣就可以避免操作系統的不兼容性問題。

3.3系統功能測試

測試系統為Red Hat 7.0,內核版本2.4.20。

測試結果:在該模型的控制下,用戶只能讀、寫在自己相應訪問域中的文件,而不能修改或者讀、執行不屬于自己訪問域的文件,即使是系統安全管理員也只能按照此規則來進行,不能訪問屬于別的用戶的文件。通過功能測試,該模型能有效地控制進程的活動范圍,達到了該模型的設計目的。

4結論 

本文的SLinux模型限制了超級用戶賬號Root,實現了細粒度的訪問控制,為內核對象加入了安全標簽,訪問控制引入了安全級別,基本可達到可信計算機系統評價標準(TCSEC)中的B1級。可見,該模型很好地解決了現有Linux系統自身的安全性問題,同時對系統內核的修改很小,并且易于升級和擴展,具有一定的實用價值和進一步發展的空間。 

本模型的不足之處在于安全標簽數據庫的大量讀取操作和比較低效的記錄查找方式會造成系統的性能損失。

參考文獻:

[1]蔡誼,沈昌祥.安全操作系統發展現狀與對策[C].北京:第十六次全國計算機安全學術交流會論文集,2001.15.

[2]石文昌,孫玉芳,梁洪亮.經典BLP安全公理的一種適應性標記實施方法及其正確性[J].計算機研究與發展, 2001,38(11):13661372.

[3]Ravi Sandhu, Elisa Bertino, Jaeger. The Next Generation of Access Control Models[C]. New York: Proceedings of the 6th ACM Symposium on Access Control Models and Technologies,2001.53.

[4]Adrian Bullock, Steven Benford. An Access Control Framework for Multiuser Collaborative Environments[C]. Phoenix: Proceedings of the International ACM SIGGROUP Conference on Supporting Group Work,1999.140149.

[5]Crispin Cowan, Steve Beattie, Calton Pu, et al. SubDomain: Parsimonious Server Security[C]. New Orleans:USENIX the 14th Systems Administration Conference, 2000.355368.

[6]F B Schneider. Enforceable Security Policies[J]. ACM Transactions on Information and System Security, 2000,3(1):3050.

作者簡介:

張愛華(1965),男,湖南郴州人,副教授,碩導,研究方向為網絡和多媒體計算機技術;

林園(1979),女,碩士研究生,研究方向為網絡通信與信息安全。

注:本文中所涉及到的圖表、注解、公式等內容請以PDF格式閱讀原文

主站蜘蛛池模板: 亚亚洲乱码一二三四区| 爽爽影院十八禁在线观看| 制服丝袜在线视频香蕉| 亚洲无限乱码一二三四区| 凹凸精品免费精品视频| 91精品国产福利| 亚洲香蕉伊综合在人在线| 国产精品无码影视久久久久久久| 91色综合综合热五月激情| aⅴ免费在线观看| 亚洲国产系列| 女人18毛片一级毛片在线 | 一级爱做片免费观看久久| 亚洲欧美另类日本| 少妇精品网站| 国产欧美一区二区三区视频在线观看| 国产精品香蕉| a在线亚洲男人的天堂试看| 国产18在线| 成人在线欧美| 香蕉网久久| 国产精品无码AV片在线观看播放| 国产嫖妓91东北老熟女久久一| 99re视频在线| 久久 午夜福利 张柏芝| 国产成人亚洲无吗淙合青草| 亚洲中文字幕无码mv| 日韩精品亚洲人旧成在线| 热热久久狠狠偷偷色男同| 中文字幕无码电影| 国产99精品久久| 亚洲成人动漫在线观看| 91国内视频在线观看| 老司机精品一区在线视频| 精品国产Ⅴ无码大片在线观看81| 亚洲欧美日韩视频一区| 人人艹人人爽| 亚洲中文在线视频| 国产在线97| 亚洲成aⅴ人片在线影院八| 91香蕉视频下载网站| 亚洲欧洲日产国产无码AV| 日韩美女福利视频| 91麻豆国产视频| 午夜不卡视频| 欧美日韩第三页| 天天躁狠狠躁| 高清无码不卡视频| 国产精品999在线| 88av在线播放| 亚洲成A人V欧美综合| 亚洲成AV人手机在线观看网站| 日韩黄色大片免费看| 永久免费AⅤ无码网站在线观看| 久久熟女AV| 99热这里只有免费国产精品 | 99精品一区二区免费视频| 久久精品无码专区免费| 在线精品自拍| 欧美日本在线一区二区三区| 成年午夜精品久久精品| 国产网友愉拍精品视频| 日韩欧美中文在线| 中文国产成人精品久久| 国产免费自拍视频| 日本成人不卡视频| 久青草网站| 亚洲六月丁香六月婷婷蜜芽| 亚洲永久色| 国产精鲁鲁网在线视频| 亚洲国产日韩欧美在线| 国产在线精彩视频二区| 亚洲欧洲自拍拍偷午夜色| 国产成人亚洲精品蜜芽影院| 国产乱子伦手机在线| 日韩美一区二区| 亚洲国产理论片在线播放| 国产福利2021最新在线观看| 91视频99| 一级毛片免费观看久| 亚洲色偷偷偷鲁综合| 2019年国产精品自拍不卡|