本質(zhì)安全型集中式控制安全操作系統(tǒng)研究
本質(zhì)安全是指一種建立在特殊的硬件設(shè)備上(Smart卡),具有特殊的體系結(jié)構(gòu),可對操作系統(tǒng)本身、進(jìn)程合法性和運(yùn)行權(quán)利進(jìn)行驗(yàn)證的安全機(jī)制。
系統(tǒng)的安全控制分為六部分:進(jìn)程管理器、安全服務(wù)器、文件系統(tǒng)伺服器、進(jìn)程通信伺服務(wù)器、網(wǎng)絡(luò)伺服器和審計模塊??傮w結(jié)構(gòu)如圖1所示:進(jìn)程管理器、安全服務(wù)器wolf-Linux安全控制的核心部分,審計模塊負(fù)責(zé)對系統(tǒng)的安全性事件進(jìn)行記錄,其它部分是安全控制的執(zhí)行模塊。
從圖1中可以看出,SIM(Subscriber Identity Module)卡處于系統(tǒng)的安全模塊中,保存系統(tǒng)的關(guān)鍵信息,集中式管理主要體現(xiàn)在進(jìn)程控制器部分,安全判定和安全執(zhí)行的分離使得任何存取操作都不可能繞過安全控制機(jī)制。系統(tǒng)中所有的安全事件都通過進(jìn)程控制器來判定是否可行,安全執(zhí)行模塊負(fù)責(zé)在訪問操作發(fā)生時抽象主體和客體,提交訪問請求并執(zhí)行訪問結(jié)果。下面主要介紹各個模塊的功能原理。
(1)安全服務(wù)器和SIM卡
系統(tǒng)的安全服務(wù)器負(fù)責(zé)提供系統(tǒng)支持的安全策略。在系統(tǒng)啟動時,安全服務(wù)器初始化系統(tǒng)支持的安全策略。它的初始化過程中重要的一步是讀智能卡中的信息,驗(yàn)證系統(tǒng)的身份。安全服務(wù)器提供的接口有三類:①與智能卡的接口。在智能卡中保存系統(tǒng)的關(guān)鍵信息,例如系統(tǒng)的有效使用時間、操作系統(tǒng)身份ID。這個ID號相當(dāng)規(guī)模識了一個合法的系統(tǒng)身份和系統(tǒng)用戶身份信息(在系統(tǒng)的安全特性部分還會討論)。安全模塊通過智能卡的驅(qū)動程序,負(fù)責(zé)與智能卡信息的安全交互,并提供訪問智能卡的操作函數(shù)。②與進(jìn)程控制器交互的接口。安全服務(wù)器只負(fù)責(zé)實(shí)現(xiàn)對安全策略的支持,而不管判定訪問操作是否合法。進(jìn)程控制器在判定訪問是否合法時,使用安全服務(wù)器提供規(guī)則。③提供給系統(tǒng)管理的接口。由于在安全模塊當(dāng)中實(shí)現(xiàn)了策略的獨(dú)立性,所以安全模塊可以在實(shí)現(xiàn)對多種策略的支持。接口函數(shù)包括安全模塊的初始化接口、安全策略的注冊接口、安全策略的管理接口。通過這些接口函數(shù)可以實(shí)現(xiàn)對安全策略的配置,系統(tǒng)安全特性針對不同的工作環(huán)境,可以動態(tài)變化。安全模塊的固化設(shè)計保證系統(tǒng)的安全特性不可能被破壞和篡改。
(2)進(jìn)程控制器
進(jìn)程控制器是系統(tǒng)安全特性的關(guān)鍵部分,功能有兩個:①以進(jìn)程為單位的權(quán)限控制;②判定安全執(zhí)行部分提供的訪問請求并返回判定結(jié)果;同時為了提高效率,保存最近的訪問判定結(jié)果,提供緩存功能。
在傳統(tǒng)的Unix系統(tǒng)當(dāng)中,一般提供基于用戶的權(quán)限控制方法,系統(tǒng)的控制粒度只能到用戶。一般的攻擊方法是利用程序的設(shè)計漏洞,或者用戶的誤操作來取得高級權(quán)限。在我們研究這類安全問題時,繼續(xù)細(xì)化了這類控制方法,提供更細(xì)的控制粒度;可以針對每一個進(jìn)程進(jìn)行控制,確保用戶所啟動的所有進(jìn)程均處于相應(yīng)權(quán)限控制之下。
(3)文件系統(tǒng)伺服器
主要操作是抽象各種操作,包括對文件系統(tǒng)的操作和對于文件的操作;是在文件系統(tǒng)當(dāng)中的系統(tǒng)調(diào)用部分加入控制機(jī)制,向控制器提交訪問的主客體標(biāo)識符。在Linux操作系統(tǒng)中,涉及到的數(shù)據(jù)結(jié)構(gòu)有:super_block(表示文件系統(tǒng)),file(表示操作的文件),inode(表示管道),文件或者網(wǎng)絡(luò)套接字等等。
(4)網(wǎng)絡(luò)伺服器
網(wǎng)絡(luò)安全部分控制操作的目的是,防止違法的網(wǎng)絡(luò)操作。例如,控制網(wǎng)絡(luò)打開與關(guān)閉,路由器和防火墻的安全規(guī)則配置,端口綁定,網(wǎng)絡(luò)廣播等。
(5)進(jìn)程通信伺服器
進(jìn)程之間的安全通信是安全操作系統(tǒng)研究的重點(diǎn)之一。隨通道是指按照常規(guī)不會用于傳送信息卻被利用泄漏信息的傳送渠道。隱通道包括正規(guī)隱通道、存儲隱通道和時間隱通道。在我們的研究過程中,分析了前兩種信息泄漏方式,通過以進(jìn)程為控制單位,控制進(jìn)程之間有效通信方式來解決。在Linux方式當(dāng)中,提供信號量、消息隊(duì)列和共享內(nèi)存等進(jìn)程通信方式,在關(guān)鍵點(diǎn)處加入控制點(diǎn),例如msg_msg代表單個的消息,kern_ipc_perm代表信號,共享內(nèi)存段,或者消息隊(duì)列。進(jìn)程控制器提供的控制機(jī)制使得普通用戶的進(jìn)程只能在具有血緣關(guān)系的進(jìn)程之間來傳送消息,可有效防止信息的擴(kuò)散。
linux操作系統(tǒng)文章專題:linux操作系統(tǒng)詳解(linux不再難懂)
評論