任志欽
【摘 要】隨著計(jì)算機(jī)網(wǎng)絡(luò)技術(shù)的發(fā)展及其應(yīng)用范圍的擴(kuò)大,服務(wù)器信息安全問題也得到人們的廣泛關(guān)注。當(dāng)前,服務(wù)器系統(tǒng)會(huì)受到病毒、木馬等惡意程序的攻擊,而為確保信息的安全,操作系統(tǒng)就需要從內(nèi)核層出發(fā),準(zhǔn)確鑒別并控制對(duì)服務(wù)器安全造成威脅的主體與客體,并在內(nèi)核層強(qiáng)制訪問控制文件、注冊(cè)表及進(jìn)程等。本文從網(wǎng)絡(luò)隱蔽通信及系統(tǒng)資源等方面入手,就服務(wù)器操作系統(tǒng)安全內(nèi)核的設(shè)計(jì)與實(shí)現(xiàn)展開探究。
【關(guān)鍵詞】服務(wù)器系統(tǒng) 安全內(nèi)核 探究
服務(wù)器系統(tǒng)指的是安裝在服務(wù)器上的操作系統(tǒng),需要承擔(dān)其額外的管理、配置、安全等功能,處于每個(gè)網(wǎng)絡(luò)中的心臟部位。近年來,隨著計(jì)算機(jī)網(wǎng)路技術(shù)的普及,服務(wù)器系統(tǒng)也發(fā)揮出日益重要的作用,操作系統(tǒng)安全更是各大企事業(yè)單位信息系統(tǒng)的安全保障。其中,服務(wù)器主要受到來自內(nèi)部與外部的攻擊,進(jìn)而威脅到系統(tǒng)的安全。在此種情況下,就需要采取有效的安全內(nèi)核加固技術(shù),通過對(duì)系統(tǒng)信息實(shí)體操作流程進(jìn)行截獲,增加信息訪問的安全標(biāo)識(shí)來彌補(bǔ)自主訪問控制模式存在的不足等,從而大大增強(qiáng)服務(wù)器系統(tǒng)的安全性。
1 服務(wù)器安全加固系統(tǒng)的設(shè)計(jì)原理及總體架構(gòu)
本文以浪潮集團(tuán)研發(fā)的SSR服務(wù)器安全加固系統(tǒng)為例展開研究。在此系統(tǒng)中,其架構(gòu)主要分為兩層:驅(qū)動(dòng)層與應(yīng)用層。其中,應(yīng)用層需與服務(wù)器展開通信,獲取其系統(tǒng)資源信息。通過網(wǎng)絡(luò)通信,管理平臺(tái)上的客戶端便可獲得服務(wù)器桑的文件及注冊(cè)表等信息,進(jìn)而下發(fā)相應(yīng)的策略等。操作系統(tǒng)安全內(nèi)核具備系統(tǒng)加載時(shí)的驗(yàn)證、對(duì)運(yùn)行權(quán)限的控制及對(duì)文件的驗(yàn)證,以及強(qiáng)制訪問控制等功能。在應(yīng)用層面,此系統(tǒng)應(yīng)用的通信機(jī)制為Client/Server,可實(shí)現(xiàn)安全審計(jì)、系統(tǒng)自身保護(hù)以及強(qiáng)制訪問控制等服務(wù)器安全內(nèi)核要求的所有功能。其中,通過對(duì)服務(wù)強(qiáng)制訪問控制,可在內(nèi)核層階段便有效控制惡意代碼的運(yùn)行;建立系統(tǒng)管理權(quán)限機(jī)制,可實(shí)現(xiàn)操作人員“最小授權(quán)”。系統(tǒng)應(yīng)用層采用的架構(gòu)為C/S,在客戶端管理平臺(tái)上控制服務(wù)器資源訪問[1]。
對(duì)服務(wù)器系統(tǒng)安全內(nèi)核的工作原理,系統(tǒng)在訪問資源時(shí),首先需要經(jīng)過安全內(nèi)核,其強(qiáng)制訪問功能主要按照各個(gè)資源的安全標(biāo)記進(jìn)行。在控制端,系統(tǒng)管理員對(duì)服務(wù)器下發(fā)有關(guān)權(quán)限管理額指令,并審計(jì)管理資源訪問。對(duì)于B2等級(jí)操作系統(tǒng)而言,需分析隱蔽信道。此外,為防范計(jì)算機(jī)病毒產(chǎn)生的威脅,還需底層文件的網(wǎng)絡(luò)驅(qū)動(dòng)與系統(tǒng)驅(qū)動(dòng)實(shí)現(xiàn)安全保護(hù)。加載文件驅(qū)動(dòng)后,便可對(duì)加載的所有系統(tǒng)分區(qū)進(jìn)行攔截,同時(shí)控制IRP的分發(fā)。系統(tǒng)服務(wù)調(diào)度表,也即SSDT,會(huì)將本地系統(tǒng)服務(wù)地址保存下來,對(duì)函數(shù)內(nèi)存地址展開定位。采用NDIS網(wǎng)絡(luò)驅(qū)動(dòng)來控制網(wǎng)絡(luò)通信,并利用密碼及USB-KEY來對(duì)管理員身份及登陸過程展開認(rèn)證。
2 服務(wù)器系統(tǒng)資源保護(hù)在內(nèi)核中的實(shí)現(xiàn)
在訪問系統(tǒng)資源時(shí),首先需經(jīng)過安全內(nèi)核的保護(hù),啟動(dòng)系統(tǒng)后,先要加載文件的默認(rèn)規(guī)則。管理控制端與服務(wù)器相連接后,便可得到服務(wù)器上的信息,并對(duì)服務(wù)器上的資源下發(fā)運(yùn)行策略。
服務(wù)器系統(tǒng)內(nèi)核層規(guī)則的保存形式為Hash表,以規(guī)則文件為依據(jù),將規(guī)則客體的Hash值計(jì)算出來,并將其保存至內(nèi)存規(guī)則的列表中。收到規(guī)則后,驅(qū)動(dòng)層便會(huì)將內(nèi)存中的規(guī)則鏈表進(jìn)行更新在對(duì)比文件規(guī)則時(shí),需對(duì)運(yùn)行文件及相應(yīng)進(jìn)程進(jìn)行比較。只有文件與進(jìn)程與規(guī)則張的主體及客體安全一直是,才可應(yīng)用規(guī)則中的訪問權(quán)限,也即安全標(biāo)志運(yùn)行。內(nèi)核安全系統(tǒng)對(duì)服務(wù)器操作系統(tǒng)的資源展開了嚴(yán)格訪問及運(yùn)行規(guī)則,同時(shí)嚴(yán)格控制、審計(jì)進(jìn)程文件及加載運(yùn)行。為促進(jìn)操作系統(tǒng)效率,以及與防病毒軟件兼容性的提高,采用了對(duì)可信進(jìn)程訪問操作系統(tǒng)資源均放行的進(jìn)程白名單機(jī)制[2]。
在開展注冊(cè)表安全防護(hù)時(shí),主要將CmRegistry Callback例程應(yīng)用在了Vista及以上版本中。在例程的回調(diào)函數(shù)內(nèi),以參數(shù)判斷操作類型為依據(jù),對(duì)比用戶密碼、注冊(cè)表規(guī)則等,將凈值等值返回。對(duì)于內(nèi)核級(jí)強(qiáng)制訪問控制,其功能主要是允許不同進(jìn)程以只讀或禁用的訪問權(quán)限來設(shè)置注冊(cè)表項(xiàng)的訪問規(guī)則。在函數(shù)內(nèi)部,昂得到注冊(cè)表操作進(jìn)程的全路徑后,比較內(nèi)存規(guī)則鏈中相應(yīng)項(xiàng),若比較符合,則采取規(guī)則鏈中的動(dòng)作值來控制注冊(cè)表項(xiàng)的操作。
為避免進(jìn)程資源被病毒感染,就要截獲應(yīng)用層Write Process Memory等函數(shù),并在核心層截獲Zw Write Virtual Memory等例程[3]。
內(nèi)存鏈表中的文件規(guī)則主要由運(yùn)行文件進(jìn)程主題名、文件客體全路徑名、訪問權(quán)限等多元參數(shù)組成。在截獲函數(shù)中,以參數(shù)及例程的上下文為依據(jù),便可得到文件的進(jìn)程名與全路徑名。此外,低層驅(qū)動(dòng)對(duì)活動(dòng)進(jìn)程的文件與鏈表等起維護(hù)作用,對(duì)于驅(qū)動(dòng)服務(wù)的加載,系統(tǒng)內(nèi)核層默認(rèn)時(shí)拒絕,系統(tǒng)管理員對(duì)是否更改加載規(guī)則等,可通過操作允許防病毒軟件展開正常運(yùn)行。對(duì)于驅(qū)動(dòng)底層而言,其難點(diǎn)便是比較各項(xiàng)資源主體及客體的效率。驅(qū)動(dòng)層原來采用SSDT HOOK的方法來對(duì)比文件,后改為IRP Dispatch HOOK的對(duì)比方法,對(duì)于注冊(cè)表的鍵值,則按照規(guī)則禁用的方法,在注冊(cè)表項(xiàng)應(yīng)截獲函數(shù)內(nèi),獲得了注冊(cè)表的主客體,并采取相應(yīng)規(guī)則內(nèi)的動(dòng)作來比較注冊(cè)表規(guī)則,大大提升了各項(xiàng)資源的Hash計(jì)算效率。
3 結(jié)語
綜上所述,安全內(nèi)核是為操作系統(tǒng)提供服務(wù)的重要系統(tǒng),構(gòu)建可信的操作系統(tǒng),安全內(nèi)核需具備對(duì)系統(tǒng)引導(dǎo)、運(yùn)行時(shí)文件控制、強(qiáng)制訪問控制等多方而的控制檢驗(yàn)的功能。只有這樣,才能進(jìn)一步促進(jìn)服務(wù)器系統(tǒng)安全性的提高,為企事業(yè)單位工作的順利開展及信息安全提供充分保障。
參考文獻(xiàn):
[1]韓立毛,趙躍華,馬祥順.嵌入式操作系統(tǒng)的內(nèi)核安全研究與設(shè)計(jì)[J].計(jì)算機(jī)工程與設(shè)計(jì),2010,31(14):234-235.
[2]張濤,余煬,李弋.Linux服務(wù)器安全審計(jì)系統(tǒng)的設(shè)計(jì)與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,2014,31(05):18-21.
[3]陳偉東,王超,張力.服務(wù)器系統(tǒng)安全內(nèi)核研究與實(shí)現(xiàn)[J].計(jì)算機(jī)應(yīng)用與軟件,2013,30(03):305-307.