一種提升云計(jì)算操作系統(tǒng)安全性的方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及云計(jì)算技術(shù)領(lǐng)域,尤其涉及一種提升云計(jì)算操作系統(tǒng)安全性的方法。
【背景技術(shù)】
[0002] 云計(jì)算操作系統(tǒng),又稱云0S、云計(jì)算操作系統(tǒng)、云計(jì)算中心操作系統(tǒng),是以云計(jì)算、 云存儲(chǔ)技術(shù)作為支撐的操作系統(tǒng),是云計(jì)算后臺(tái)數(shù)據(jù)中心的整體管理運(yùn)營系統(tǒng),它是指構(gòu) 架于服務(wù)器、存儲(chǔ)、網(wǎng)絡(luò)等基礎(chǔ)硬件資源和單機(jī)操作系統(tǒng)、中間件、數(shù)據(jù)庫等基礎(chǔ)軟件之上 的、管理海量的基礎(chǔ)硬件、軟件資源的云平臺(tái)綜合管理系統(tǒng)。
[0003] 操作系統(tǒng)按照是否公開源代碼方式分類可分為開源操作系統(tǒng)和閉源操作系統(tǒng)。開 源操作系統(tǒng)(open source operating system),即公開源代碼的操作系統(tǒng)軟件,遵循開源 協(xié)議(GNU)進(jìn)行使用、編譯和再發(fā)布。在遵守GNU協(xié)議的前提下,任何人都可以免費(fèi)使用, 隨意控制軟件的運(yùn)行方式。
[0004] 閉源操作系統(tǒng)(Closed source operating system),即不公開源代碼的操作系統(tǒng) 軟件,它意味著將僅獲得它們許可的計(jì)算機(jī)程序的一個(gè)二進(jìn)制版本而沒有這個(gè)程序的源代 碼,軟件的翻譯修改從技術(shù)方面幾乎是不可能的。這個(gè)發(fā)展模型的源代碼被看作這個(gè)公司 的商業(yè)秘密,因此可能獲得源代碼接入的團(tuán)體,例如學(xué)校,必須提前簽訂不泄漏協(xié)議。
[0005] 現(xiàn)有技術(shù)中,開源操作系統(tǒng)代表:Linux、Symbian、Android、unix派生系統(tǒng)等,閉 源操作系統(tǒng)代表:Windows、MacOS、iOS、WP等?;陂_源操作系統(tǒng)軟件主要有XEN和KVM, 商業(yè)軟件主要有 vmware 的 vSphere、Microsoft 的 Hyper-V0
[0006] 在需要高度信息安全性的機(jī)關(guān)、事業(yè)單位以及企業(yè)中,每當(dāng)引進(jìn)一個(gè)操作系統(tǒng),需 要檢查其源代碼,以確保該操作系統(tǒng)的信息安全性,由于開源操作系統(tǒng)的源代碼具有可見 性、可修改性、漏洞查找便宜性等,因此,在需要高度信息安全性的機(jī)關(guān)、單位、事業(yè)部門以 及企業(yè)一般選擇開源操作系統(tǒng)。
[0007] 現(xiàn)有的大型的云計(jì)算操作系統(tǒng)均由國外廠商開發(fā),當(dāng)引進(jìn)的操作系統(tǒng)為云計(jì)算操 作系統(tǒng)時(shí),更需要嚴(yán)格檢查其源代碼的安全性,以防止國外別有居心的廠商利用云計(jì)算操 作系統(tǒng)盜取我國國家機(jī)關(guān)、事業(yè)單位以及企業(yè)的機(jī)密數(shù)據(jù),從而給我國國家機(jī)關(guān)、事業(yè)單位 以及企業(yè)帶來嚴(yán)重的安全威脅。
[0008] 但由于大型的云計(jì)算操作系統(tǒng)的源代碼數(shù)量相當(dāng)龐大,按照傳統(tǒng)安全性處理的方 式對其源代碼進(jìn)行檢查,不僅需要耗費(fèi)大量的時(shí)間、人力、財(cái)力,而且在與硬件結(jié)合的情況 下,即使檢查時(shí)未發(fā)現(xiàn)安全隱患,在使用中,仍然會(huì)產(chǎn)生一些未知的安全隱患。因此,亟需一 種更為安全的、效率更高的對云計(jì)算操作的安全性進(jìn)行加固的方法。
【發(fā)明內(nèi)容】
[0009] 本發(fā)明的目的是提供一種提升云計(jì)算操作系統(tǒng)安全性的方法,包括以下步驟:
[0010] 步驟S1,屏蔽該操作系統(tǒng)中全部原始外部訪問接口;
[0011] 步驟S2,對該操作系統(tǒng)中預(yù)先設(shè)定必要的外部訪問接口進(jìn)行重新封裝,形成有效 外部訪問接口。
[0012] 其中,所述對該操作系統(tǒng)中預(yù)先設(shè)定必要的外部訪問接口進(jìn)行重新封裝的步驟包 括:
[0013] 封裝操作系統(tǒng)中設(shè)置和控制全局性參數(shù)的系統(tǒng)調(diào)用指令;
[0014] 封裝虛擬機(jī)中設(shè)置內(nèi)存和創(chuàng)建虛擬處理器的虛機(jī)操作指令;
[0015] 封裝虛擬機(jī)中控制虛擬處理器中寄存器的讀寫、中斷、事件管理和內(nèi)存管理的虛 擬CPU操作指令;
[0016] 所述虛擬CPU操作指令包括控制寄存器的指令、控制中斷和事件管理的指令和控 制內(nèi)存管理的指令。
[0017] 其中,所述系統(tǒng)調(diào)用指令包括:
[0018] 創(chuàng)建虛擬機(jī);查詢當(dāng)前虛擬機(jī)的外部接口版本;獲得索引列表;檢查擴(kuò)展支持情 況;運(yùn)行虛擬機(jī)和用戶態(tài)空間所共享內(nèi)存區(qū)域容量。
[0019] 其中,所述虛機(jī)操作指令包括:
[0020] 為虛擬機(jī)創(chuàng)建虛擬處理器;根據(jù)結(jié)構(gòu)體信息,運(yùn)行虛擬機(jī);創(chuàng)建虛擬可編程中斷 控制器,并將隨后創(chuàng)建的虛擬處理器都關(guān)聯(lián)到此可編程中斷控制器;對虛擬可編程中斷控 制器發(fā)送中斷信號;讀取可編程中斷控制器的中斷標(biāo)志信息;寫入可編程中斷控制器的中 斷標(biāo)志信息;返回臟內(nèi)存頁的位圖。
[0021] 其中,虛擬CPU操作指令中控制寄存器的指令包括:
[0022] 獲取通用寄存器信息;設(shè)置通用寄存器信息;獲取特殊寄存器信息;設(shè)置特殊寄 存器信息;獲取MSR寄存器信息;設(shè)置MSR寄存器信息;獲取浮點(diǎn)寄存器信息;設(shè)置浮點(diǎn)寄 存器信息;獲取虛擬處理器的xsave寄存器信息;設(shè)置虛擬處理器的xsave寄存器信息;獲 取虛擬處理器的xcr寄存器信息;設(shè)置虛擬處理器的xcr寄存器信息。
[0023] 其中,虛擬CPU操作指令中控制中斷和事件管理的指令包括:
[0024] 在虛擬處理器上產(chǎn)生中斷;設(shè)置某個(gè)虛擬處理器的中斷信號屏蔽掩碼;獲取虛擬 處理器中被掛起待延時(shí)處理的事件;設(shè)置虛擬處理器的事件。
[0025] 其中,虛擬CPU操作指令中控制內(nèi)存管理的指令包括:
[0026] 將虛擬處理器的物理地址翻譯成HPA ;修改虛擬處理器的內(nèi)存區(qū)域;初始化TSS內(nèi) 存區(qū)域;創(chuàng)建EPT頁表。
[0027] 其中,在步驟S2之后,還包括步驟S3 :對操作系統(tǒng)與外部程序的信息交互通道進(jìn) 行監(jiān)控,若發(fā)現(xiàn)除了有效外部訪問接口之外還有其他信息交互通道,則阻斷該信息交互通 道,并發(fā)出告警提示。
[0028] 其中,所述對操作系統(tǒng)與外部程序的信息交互通道進(jìn)行監(jiān)控的步驟,包括:
[0029] 對操作系統(tǒng)與外部程序的交互信息進(jìn)行篩選和甄別,根據(jù)預(yù)設(shè)的信息交互情況將 交互信息判定為正常通信、可疑通信和危險(xiǎn)通信;
[0030] 若判定結(jié)果為正常通信,則按照正常通信狀態(tài)處理;
[0031] 若判定結(jié)果為可疑通信,則發(fā)出可疑信息告警提示;
[0032] 若判定結(jié)果為危險(xiǎn)通信,則阻斷該信息的信息交互通道,并發(fā)出危險(xiǎn)信息告警提 不。
[0033] 其中,所述操作系統(tǒng)包括宿主操作系統(tǒng)和客戶操作系統(tǒng);
[0034] 所述對操作系統(tǒng)與外部程序的信息交互通道進(jìn)行監(jiān)控的步驟中,包括對宿主操作 系統(tǒng)與外部程序的信息交互通道進(jìn)行監(jiān)控,以及對客戶操作系統(tǒng)與外部程序的信息交互通 道進(jìn)行監(jiān)控。
[0035] 本發(fā)明的有益效果為:簡化對大型的云計(jì)算操作系統(tǒng)的安全性檢查工作,節(jié)省人 力、財(cái)力、物力,并且使得云操作系統(tǒng)具有更高的安全性。
【附圖說明】
[0036] 圖1為現(xiàn)有技術(shù)中KVM邏輯框架;
[0037] 圖2為本發(fā)明中KVM邏輯框架;
[0038] 圖3為本發(fā)明提升云計(jì)算操作系統(tǒng)安全性的方法的流程圖;
[0039] 圖4為本發(fā)明提升云計(jì)算操作系統(tǒng)安全性的方法中對信息交互通道進(jìn)行監(jiān)控的 步驟流程圖。
【具體實(shí)施方式】
[0040] 為使本發(fā)明的目的、技術(shù)方案和優(yōu)點(diǎn)更加清楚明了,下面結(jié)合【具體實(shí)施方式】并參 照附圖,對本發(fā)明進(jìn)一步詳細(xì)說明。應(yīng)該理解,這些描述只是示例性的,而并非要限制本發(fā) 明的范圍。此外,在以下說明中,省略了對公知結(jié)構(gòu)和技術(shù)的描述,以避免不必要地混淆本 發(fā)明的概念。
[0041] 術(shù)語解釋
[0042] 虛擬化技術(shù)是云計(jì)算操作系統(tǒng)中的一項(xiàng)核心技術(shù),所有的虛擬化都是兩部分組 成:虛擬機(jī)(VM)和宿主(HOST),虛擬機(jī)(VM)內(nèi)運(yùn)行客戶操作系統(tǒng)(Guest OS),HOST中運(yùn) 行宿主操作系統(tǒng)(Host OS)。
[0043] HOST 宿主,指物理上存在的計(jì)算機(jī)。
[0044] Host OS--宿主操作系統(tǒng),指HOST上運(yùn)行的操作系統(tǒng)。
[0045] VM(Virtual Machine)--虛擬機(jī),邏輯上的計(jì)算機(jī),指由Vmware模擬出來的一臺(tái) 虛擬的計(jì)算機(jī)。
[0046] Guest OS--客戶操作系統(tǒng),指運(yùn)行在VM(Virtual Machine)上的操作系統(tǒng)。
[0047] 例如:在一臺(tái)安裝了 Windows NT的計(jì)算機(jī)上安裝了 Vmware,那么,HOST指的是安 裝Windows N