專利名稱:一種高安全等級操作系統(tǒng)的參照監(jiān)視器實現(xiàn)方法
技術(shù)領(lǐng)域:
本發(fā)明涉及高安全等級操作系統(tǒng)的安全內(nèi)核,特別涉及一種不可繞過的參照監(jiān)視器實現(xiàn)方法。
背景技術(shù):
安全操作系統(tǒng)是整個信息系統(tǒng)安全的基礎(chǔ)。安全操作系統(tǒng)的關(guān)鍵目標(biāo)是提供盡可能強的訪問控制 和審計機制,在應(yīng)用程序和系統(tǒng)硬、軟件資源之間執(zhí)行符合安全策略的調(diào)度,限制非法的訪問。不可 繞過的參照監(jiān)視器是安全操作系統(tǒng)的重要保證,可用于政府、軍事、國防等重要領(lǐng)域的信息系統(tǒng),提 高重要信息系統(tǒng)的保障能力。
傳統(tǒng)操作系統(tǒng)大多從各種實用的功能需求和性能需求出發(fā)進(jìn)行設(shè)計和實現(xiàn),隨后通過安全增強, 添加安全相關(guān)的功能組件來提高安全性。事實上,安全性不是安全功能的簡單疊加,這樣不能保證其 引用驗證機制是不可被繞過的。高安全等級操作系統(tǒng)需要從設(shè)計之初就充分考慮安全的需求,通過設(shè) 計嚴(yán)密科學(xué)的安全體系結(jié)構(gòu)來保證系統(tǒng)安全性。根據(jù)這種要求,本發(fā)明提供一種精簡而有效的參照監(jiān) 視器,使得其引用驗證機制總薦處于活躍妖態(tài)并且不可被繞過,以保證安全策略的正確實施。
發(fā)明內(nèi)容
本發(fā)明主要針對高安全等級操作系統(tǒng),尤其是達(dá)到GB17859-1999《計算機信息系統(tǒng)安全保護(hù)等 級劃分準(zhǔn)則》第四級及以上安全操作系統(tǒng)對安全內(nèi)核的要求,提供一種參照監(jiān)視器實現(xiàn)方法,能夠?qū)?主客體之間所有的訪問進(jìn)行不可繞過的監(jiān)視和仲裁,并將重要安全事件存入審計文件。
為實現(xiàn)本發(fā)明所述目的,本發(fā)明提供一種不可繞過的參照監(jiān)視器實現(xiàn)方法。高安全等級操作系統(tǒng) 的參照監(jiān)視器實現(xiàn)方法,(l)參照監(jiān)視器結(jié)構(gòu);參照監(jiān)視器結(jié)構(gòu)基于一個安全增強的微內(nèi)核,所有服務(wù) 程序和用戶應(yīng)用程序都位于核外,進(jìn)程間通信(IPC)是應(yīng)用程序獲得服務(wù)、訪問資源以及服務(wù)器之 間交互的唯一途經(jīng),通過增強微內(nèi)核的進(jìn)程間通信服務(wù)和引入強制實施器對IPC通信進(jìn)行控制和驗 證,再配合安全服務(wù)器和客體管理器對安全策略的實施,實現(xiàn)一個不可繞過的參照監(jiān)視器1)通過 在進(jìn)程的地址空間中增加一個監(jiān)視域字段,設(shè)置成空或者一個仲裁者的引用;如果為空,表示這個進(jìn) 程的IPC通信不受監(jiān)控;否則,這個進(jìn)程的IPC通信會被重新定向到一個仲裁者,實現(xiàn)監(jiān)視控制;2) 在消息的格式中添加"真實源"字段,這個字段在消息初始化的時候由內(nèi)核負(fù)責(zé)賦值;無論經(jīng)過多少 次重定向,改變的只是消息中原來的發(fā)送者的字段,"真實源"字段保持不變,其值是源發(fā)送;(2)對 微內(nèi)核IPC通信控制的實現(xiàn);步驟20是初始動作;步驟21發(fā)送進(jìn)程生成消息,內(nèi)核將消息的真實 源設(shè)置為發(fā)送迸程;步驟22判斷持有消息的當(dāng)前進(jìn)程的監(jiān)視域字段是否為空,如果為空,則轉(zhuǎn)步驟 23,否則,轉(zhuǎn)步驟25;步驟23表示持有消息的當(dāng)前進(jìn)程的監(jiān)視域字段為某個服務(wù)進(jìn)程,則將消息發(fā) 送給監(jiān)視域進(jìn)程;步驟24監(jiān)視域進(jìn)程收到消息,轉(zhuǎn)步驟22繼續(xù)進(jìn)程監(jiān)視域字段判斷;步驟25表示 持有消息的當(dāng)前進(jìn)程的監(jiān)視域字段為空,也就是通信可以直接進(jìn)行,則將消息發(fā)送給真正的目的進(jìn)程; 步驟26根據(jù)消息的真實源字段通知消息發(fā)送是否成功;步驟27是結(jié)束狀態(tài);
(3)參照監(jiān)視器所需安全服務(wù)啟動的流程;步驟31首先加載安全微內(nèi)核,內(nèi)核提供了后續(xù)所有服 務(wù)所需的服務(wù)機制,其中包括參照監(jiān)視器不可繞過性所需的增強的IPC通信服務(wù);步驟32加載安全 存儲服務(wù)器;步驟33加載服務(wù)器裝載器;步驟34服務(wù)器裝載器驗證并啟動審計服務(wù)器,當(dāng)審計服務(wù) 器加載后,系統(tǒng)中安全相關(guān)的事件記錄下來;步驟35服務(wù)器裝載器驗證并啟動強制實施器;步驟36
服務(wù)器裝載器驗證并啟^安全服務(wù)器,它負(fù)責(zé)加載相應(yīng)的安全策略,為客體管理器提供決策服務(wù);歩 驟37服務(wù)器裝載器驗證并啟動客體管理器(根據(jù)安全服務(wù)器的判定,來具體實施相應(yīng)的訪問控制請 求;歩驟38服務(wù)器裝載器驗證并啟動驗證服務(wù)器,它負(fù)責(zé)驗證訪問控制中主體的身份;步驟39隨后 啟動其他操作系統(tǒng)模塊。
(4)參照監(jiān)視器中一個訪問控制的具體實施流程;步驟40是初始動作。步驟41用戶進(jìn)程向客體 管理器發(fā)出訪問控制請求。步驟42用戶進(jìn)程的訪問控制請求被內(nèi)核的IPC機制重新定向到強制實施 器。歩驟43強制實施器將用戶的訪問控制請求轉(zhuǎn)交給客體管理器,同時可以根據(jù)預(yù)先的設(shè)置進(jìn)行相 應(yīng)的審計記錄。步驟44客體管理器根據(jù)用戶進(jìn)程的訪問控制請求,生成訪問控制消息。步驟45客體 管理器向安全服務(wù)器提交訪問控制消息,因為客體管理器和安全服務(wù)器都是可信服務(wù)器,所以消息不 經(jīng)過強制實施器,直接送達(dá)。步驟46安全服務(wù)器收到客體管理器的訪問控制消息,查詢安全策略數(shù) 據(jù)庫,對欲執(zhí)行的訪問控制作出決策。步驟47安全服務(wù)器將決策結(jié)果返還給客體管理器,這個決策 消息不通過強制實施器,直接送達(dá)。步驟48客體管理器分析安全服務(wù)器的決策結(jié)果,如果同意訪問 控制請求,則轉(zhuǎn)步驟49,否則轉(zhuǎn)步驟4a。步驟49客體管理器實施用戶提交的訪問控制請求。步驟4a 客體管理器拒絕實施用戶提交l^訪問控制請求。步驟4b客體管理器將對訪問控制請求的實施結(jié)果返 還給用戶進(jìn)程。步驟4c實施結(jié)果消息被內(nèi)核的lPC機制重定向到強制實施器。步驟4d強制實施器將 實施結(jié)果消息傳遞給用戶進(jìn)程,同時根據(jù)預(yù)先的設(shè)置進(jìn)行相應(yīng)的審計記錄。步驟4e是結(jié)束狀態(tài)。
本發(fā)明的有益效果是通過參照監(jiān)視器結(jié)構(gòu)限制用戶通信、獲取系統(tǒng)服務(wù),從而強制實施訪問控 制的安全策略驗證,避免驗證機制被旁路,保證了參照監(jiān)視器對系統(tǒng)資源利用和保護(hù)的有效性,進(jìn)而 提高系統(tǒng)的安全性和服務(wù)能力,滿足高等級操作系統(tǒng)的安全要求。
圖1參照監(jiān)視器結(jié)構(gòu)示意圖 圖2 IPC通信控制的實現(xiàn)說明圖 圖3安全服務(wù)啟動流程圖 圖4訪問控制實施圖
具體實施例方式
如附圖1所示,本發(fā)明的參照監(jiān)視器結(jié)構(gòu)中,各安全服務(wù)相互關(guān)聯(lián),實現(xiàn)對訪問控制不可繞過的 仲裁和監(jiān)視,各服務(wù)設(shè)計目的和功能的說明如下。用戶進(jìn)程向客體管理器提出訪問控制請求,并接收 客體管理器對訪問控制的實施結(jié)果。驗證服務(wù)器負(fù)責(zé)驗證用戶進(jìn)程所代表的主體的身份。重要的安全 服務(wù)器由服務(wù)器裝載器在進(jìn)行完整性校驗后,安全可信地啟動各個服務(wù)器,服務(wù)器裝載器還負(fù)責(zé)可信 服務(wù)器的配置、管理。強制實施器具有控制所有發(fā)送給服務(wù)器請求的能力,能夠截取所有的用戶請求, 實現(xiàn)全面驗證的特性,是訪問控制子系統(tǒng)(包括客體管理器、安全服務(wù)器)和審計子系統(tǒng)的基礎(chǔ)??腕w 管理器負(fù)責(zé)接收所有主客體訪問請求,向安全服務(wù)器提出査詢,并根據(jù)安全服務(wù)器的決策,執(zhí)行具體 的安全策略,對訪問請求進(jìn)行裁決。安全服務(wù)器根據(jù)當(dāng)前加載的安全策略,對客體管理器提交的請求 作出決策,并將判定結(jié)果返還給客體管理器,使得客體管理器能具體執(zhí)行相關(guān)安全策略。審計服務(wù)器 負(fù)責(zé)管理審計協(xié)議,審計日志的管理等,強制實施器和客體管理器可以提供粒度不等的審計信息源。 安全存儲器服務(wù)器以一種特殊的文件系統(tǒng),實現(xiàn)對安全服務(wù)器中的策略數(shù)據(jù)、審計日志數(shù)據(jù)的安全可 信的存儲。安全增強的微內(nèi)核,通過修改通信原語,將所有不可信進(jìn)程的通信全部重定向給強制實施
器,從而使得沒有用戶請求能夠繞過強制實施器,因為在微內(nèi)核的系統(tǒng)中IPC通信是應(yīng)用程序獲得服 務(wù)、訪問資源的唯一途經(jīng)。
圖2表示IPC通信控制的實現(xiàn)流程。對IPC通信控制的實現(xiàn)是通過對IPC消息的重定向?qū)崿F(xiàn)的, 改進(jìn)要點包括(1)通過在進(jìn)程的地址空間中增加一個監(jiān)視域字段,可以設(shè)置成空或者一個仲裁者的 引用。如果為空,表示這個進(jìn)程的IPC通信不受監(jiān)控;否則,這個進(jìn)程的IPC通信會被重新定向到一 個仲裁者,實現(xiàn)了監(jiān)視控制;(2)在消息的格式中添加"真實源"字段,這個字段在消息初始化的時 候由內(nèi)核負(fù)責(zé)賦值。無論經(jīng)過多少次重定向,改變的只是消息中原來的發(fā)送者的字段,"真實源"字 段保持不變,其值是源發(fā)送者。步驟20是初始動作。步驟21發(fā)送進(jìn)程生成消息,內(nèi)核將消息的真實 源設(shè)置為發(fā)送進(jìn)程。步驟22判斷持有消息的當(dāng)前進(jìn)程的監(jiān)視域字段是否為空,如果為空,則轉(zhuǎn)步驟 23,否則,轉(zhuǎn)步驟25。步驟23表示持有消息的當(dāng)前進(jìn)程的監(jiān)視域字段為某個服務(wù)進(jìn)程,則將消息發(fā) 送給監(jiān)視域進(jìn)程。步驟24監(jiān)視域進(jìn)程收到消息,轉(zhuǎn)步驟22繼續(xù)進(jìn)程監(jiān)視域字段判斷。步驟25表示 持有消息的當(dāng)前進(jìn)程的監(jiān)視域字段為空,也就是通信可以直接進(jìn)療,則將消息發(fā)送給真正的目的進(jìn)程。 步驟26根據(jù)消息的真實源字段通知消息發(fā)送是否成功。步驟27是結(jié)束狀態(tài)。
圖3表示參照監(jiān)視器各安全服務(wù)的啟動流程。步驟31首先加載安全微內(nèi)核,內(nèi)核提供了后續(xù)所 有服務(wù)所需的服務(wù)機制,其中包括本發(fā)明中參照監(jiān)視器不可繞過性所需的增強的IPC通信服務(wù)。步驟 32加載安全存儲服務(wù)器(在之前還有一些基礎(chǔ)服務(wù),比如名字服務(wù)器、1/0驅(qū)動等需要加載,這里著 重說明參照監(jiān)視器各組成部分的加載),因為它是審計服務(wù)器工作的基礎(chǔ)。步驟33加載服務(wù)器裝載器, 它負(fù)責(zé)對參照監(jiān)視器中其余安全服務(wù)進(jìn)行驗證,然后加載,保證啟動的安全服務(wù)是可信的。步驟34 服務(wù)器裝載器驗證并啟動審計服務(wù)器,當(dāng)審計服務(wù)器加載后,系統(tǒng)中安全相關(guān)的事件都可以記錄下來。 步驟35服務(wù)器裝載器驗證并啟動強制實施器,這是保證訪問控制不可繞過的關(guān)鍵服務(wù),而其有效性 由內(nèi)核的IPC通信增強來保證。步驟36服務(wù)器裝載器驗證井啟動安全服務(wù)器,它負(fù)責(zé)加載相應(yīng)的安 全策略,為客體管理器提供決策服務(wù)。步驟37服務(wù)器裝載器驗證并啟動客體管理器(可能不止一個), 它們負(fù)責(zé)為所有的主客體訪問請求提供服務(wù),根據(jù)安全服務(wù)器的判定,來具體實施相應(yīng)的訪問控制請 求。步驟38服務(wù)器裝載器驗證并啟動驗證服務(wù)器,它負(fù)責(zé)驗證訪問控制中主體的身份。步驟39隨后 啟動其他操作系統(tǒng)模塊。
圖4表示參照監(jiān)視器中一個訪問控制的具體實施流程。步驟40是初始動作。步驟41用戶進(jìn)程向 客體管理器發(fā)出訪問控制請求。步驟42用戶進(jìn)程的訪問控制請求被內(nèi)核的IPC機制重新定向到強制 實施器。步驟43強制實施器將用戶的訪問控制請求轉(zhuǎn)交給客體管理器,同時可以根據(jù)預(yù)先的設(shè)置進(jìn) 行相應(yīng)的審計記錄。歩驟44客體管理器根據(jù)用戶進(jìn)程的訪問控制請求,生成訪問控制消息。步驟45 客體管理器向安全服務(wù)器提交訪問控制消息,因為客體管理器和安全服務(wù)器都是可信服務(wù)器,所以消 息不經(jīng)過強制實施器,直接送達(dá)。步驟46安全服務(wù)器收到客體管理器的訪問控制消息,査詢安全策 略數(shù)據(jù)庫,對欲執(zhí)行的訪問控制作出決策。步驟47安全服務(wù)器將決策結(jié)果返還給客體管理器,這個 決策消息不通過強制實施器,直接送達(dá)。步驟48客體管理器分析安全服務(wù)器的決策結(jié)果,如果同意 訪問控制請求,則轉(zhuǎn)步驟49,否則轉(zhuǎn)步驟4a。步驟49客體管理器實施用戶提交的訪問控制請求。步 驟4a客體管理器拒絕實施用戶提交的訪問控制請求。步驟4b客體管理器將對訪問控制請求的實施結(jié) 果返還給用戶進(jìn)程。步驟4c實施結(jié)果消息被內(nèi)核的IPC機制重定向到強制實施器。步驟4d強制實施 器將實施結(jié)果消息傳遞給用戶進(jìn)程,同時根據(jù)預(yù)先的設(shè)置進(jìn)行相應(yīng)的審計記錄。步驟4e是結(jié)束狀態(tài)。
權(quán)利要求
1、高安全等級操作系統(tǒng)的參照監(jiān)視器實現(xiàn)方法,其特征是以下述步驟(1)參照監(jiān)視器結(jié)構(gòu);參照監(jiān)視器結(jié)構(gòu)基于一個安全增強的微內(nèi)核,所有服務(wù)程序和用戶應(yīng)用程序都位于核外,進(jìn)程間通信(IPC)是應(yīng)用程序獲得服務(wù)、訪問資源以及服務(wù)器之間交互的唯一途經(jīng),通過增強微內(nèi)核的進(jìn)程間通信服務(wù)和引入強制實施器對IPC通信進(jìn)行控制和驗證,再配合安全服務(wù)器和客體管理器對安全策略的實施,實現(xiàn)一個不可繞過的參照監(jiān)視器1)通過在進(jìn)程的地址空間中增加一個監(jiān)視域字段,設(shè)置成空或者一個仲裁者的引用;如果為空,表示這個進(jìn)程的IPC通信不受監(jiān)控;否則,這個進(jìn)程的IPC通信會被重新定向到一個仲裁者,實現(xiàn)監(jiān)視控制;2)在消息的格式中添加“真實源”字段,這個字段在消息初始化的時候由內(nèi)核負(fù)責(zé)賦值;無論經(jīng)過多少次重定向,改變的只是消息中原來的發(fā)送者的字段,“真實源”字段保持不變,其值是源發(fā)送;(2)對微內(nèi)核IPC通信控制的實現(xiàn);步驟20是初始動作;步驟21發(fā)送進(jìn)程生成消息,內(nèi)核將消息的真實源設(shè)置為發(fā)送進(jìn)程;步驟22判斷持有消息的當(dāng)前進(jìn)程的監(jiān)視域字段是否為空,如果為空,則轉(zhuǎn)步驟23,否則,轉(zhuǎn)步驟25;步驟23表示持有消息的當(dāng)前進(jìn)程的監(jiān)視域字段為某個服務(wù)進(jìn)程,則將消息發(fā)送給監(jiān)視域進(jìn)程;步驟24監(jiān)視域進(jìn)程收到消息,轉(zhuǎn)步驟22繼續(xù)進(jìn)程監(jiān)視域字段判斷;步驟25表示持有消息的當(dāng)前進(jìn)程的監(jiān)視域字段為空,也就是通信可以直接進(jìn)行,則將消息發(fā)送給真正的目的進(jìn)程;步驟26根據(jù)消息的真實源字段通知消息發(fā)送是否成功;步驟27是結(jié)束狀態(tài);(3)參照監(jiān)視器所需安全服務(wù)啟動的流程;步驟31首先加載安全微內(nèi)核,內(nèi)核提供了后續(xù)所有服務(wù)所需的服務(wù)機制,其中包括參照監(jiān)視器不可繞過性所需的增強的IPC通信服務(wù);步驟32加載安全存儲服務(wù)器;步驟33加載服務(wù)器裝載器;步驟34服務(wù)器裝載器驗證并啟動審計服務(wù)器,當(dāng)審計服務(wù)器加載后,系統(tǒng)中安全相關(guān)的事件記錄下來;步驟35服務(wù)器裝載器驗證并啟動強制實施器;步驟36服務(wù)器裝載器驗證并啟動安全服務(wù)器,它負(fù)責(zé)加載相應(yīng)的安全策略,為客體管理器提供決策服務(wù);步驟37服務(wù)器裝載器驗證并啟動客體管理器(根據(jù)安全服務(wù)器的判定,來具體實施相應(yīng)的訪問控制請求;步驟38服務(wù)器裝載器驗證并啟動驗證服務(wù)器,它負(fù)責(zé)驗證訪問控制中主體的身份;步驟39隨后啟動其他操作系統(tǒng)模塊。(4)參照監(jiān)視器中一個訪問控制的具體實施流程;步驟40是初始動作。步驟41用戶進(jìn)程向客體管理器發(fā)出訪問控制請求。步驟42用戶進(jìn)程的訪問控制請求被內(nèi)核的IPC機制重新定向到強制實施器。步驟43強制實施器將用戶的訪問控制請求轉(zhuǎn)交給客體管理器,同時可以根據(jù)預(yù)先的設(shè)置進(jìn)行相應(yīng)的審計記錄。步驟44客體管理器根據(jù)用戶進(jìn)程的訪問控制請求,生成訪問控制消息。步驟45客體管理器向安全服務(wù)器提交訪問控制消息,因為客體管理器和安全服務(wù)器都是可信服務(wù)器,所以消息不經(jīng)過強制實施器,直接送達(dá)。步驟46安全服務(wù)器收到客體管理器的訪問控制消息,查詢安全策略數(shù)據(jù)庫,對欲執(zhí)行的訪問控制作出決策。步驟47安全服務(wù)器將決策結(jié)果返還給客體管理器,這個決策消息不通過強制實施器,直接送達(dá)。步驟48客體管理器分析安全服務(wù)器的決策結(jié)果,如果同意訪問控制請求,則轉(zhuǎn)步驟49,否則轉(zhuǎn)步驟4a。步驟49客體管理器實施用戶提交的訪問控制請求。步驟4a客體管理器拒絕實施用戶提交的訪問控制請求。步驟4b客體管理器將對訪問控制請求的實施結(jié)果返還給用戶進(jìn)程。步驟4c實施結(jié)果消息被內(nèi)核的IPC機制重定向到強制實施器。步驟4d強制實施器將實施結(jié)果消息傳遞給用戶進(jìn)程,同時根據(jù)預(yù)先的設(shè)置進(jìn)行相應(yīng)的審計記錄。步驟4e是結(jié)束狀態(tài)。
全文摘要
高安全等級操作系統(tǒng)的參照監(jiān)視器實現(xiàn)方法,(1)參照監(jiān)視器結(jié)構(gòu);參照監(jiān)視器結(jié)構(gòu)基于一個安全增強的微內(nèi)核,所有服務(wù)程序和用戶應(yīng)用程序都位于核外,進(jìn)程間通信(IPC)是應(yīng)用程序獲得服務(wù)、訪問資源以及服務(wù)器之間交互的唯一途經(jīng),(2)對微內(nèi)核IPC通信控制的實現(xiàn);(3)參照監(jiān)視器所需安全服務(wù)啟動的流程;本發(fā)明通過參照監(jiān)視器結(jié)構(gòu)限制用戶通信、獲取系統(tǒng)服務(wù),從而強制實施訪問控制的安全策略驗證,避免驗證機制被旁路,保證了參照監(jiān)視器對系統(tǒng)資源利用和保護(hù)的有效性,進(jìn)而提高系統(tǒng)的安全性和服務(wù)能力,滿足高等級操作系統(tǒng)的安全要求。
文檔編號G06F21/00GK101174293SQ20071019000
公開日2008年5月7日 申請日期2007年11月19日 優(yōu)先權(quán)日2007年11月19日
發(fā)明者曾慶凱, 王友榮, 黃達(dá)明 申請人:南京大學(xué)