亚洲狠狠干,亚洲国产福利精品一区二区,国产八区,激情文学亚洲色图

一種凈室云計(jì)算數(shù)據(jù)處理方法及系統(tǒng)的制作方法

文檔序號(hào):6539837閱讀:317來源:國(guó)知局
一種凈室云計(jì)算數(shù)據(jù)處理方法及系統(tǒng)的制作方法
【專利摘要】本發(fā)明公開了一種凈室云計(jì)算數(shù)據(jù)處理方法及系統(tǒng),以凈室云計(jì)算模型為架構(gòu),以凈室態(tài)安全框架構(gòu)建技術(shù)、凈室態(tài)安全遷移技術(shù)和凈室態(tài)實(shí)時(shí)監(jiān)控技術(shù)為技術(shù)手段;所述的凈室云計(jì)算模型由可信虛擬機(jī)監(jiān)控器(TVMM)、可信節(jié)點(diǎn)管理器(TNM)以及可信節(jié)點(diǎn)(TN)構(gòu)成;若執(zhí)行環(huán)境的完整性遭到破壞,則可信虛擬機(jī)監(jiān)控器向用戶給出報(bào)警;該凈室云計(jì)算數(shù)據(jù)處理方法及系統(tǒng)具有安全性高的優(yōu)點(diǎn)。
【專利說明】一種凈室云計(jì)算數(shù)據(jù)處理方法及系統(tǒng)
【技術(shù)領(lǐng)域】
[0001]本發(fā)明涉及一種凈室云計(jì)算數(shù)據(jù)處理方法及系統(tǒng)。
【背景技術(shù)】
[0002]云計(jì)算技術(shù)是近年來計(jì)算機(jī)領(lǐng)域最為熱門的話題之一,正在成為未來計(jì)算技術(shù)發(fā)展的最為重要的趨勢(shì)之一。國(guó)際著名科技咨詢機(jī)構(gòu)Gartner組織每年會(huì)綜合各方面的信息以發(fā)布IT技術(shù)發(fā)展趨勢(shì),并且評(píng)選出未來三年最值得關(guān)注的十大關(guān)鍵技術(shù)。該組織在2014年最新發(fā)布的報(bào)告中,云計(jì)算技術(shù)仍然是十大戰(zhàn)略性技術(shù)趨勢(shì)之一。另外,市場(chǎng)研究公司IDC最新發(fā)布的研究報(bào)告產(chǎn)稱,云計(jì)算技術(shù)正在對(duì)IT市場(chǎng)產(chǎn)生深遠(yuǎn)的影響,它不僅可以為供應(yīng)商創(chuàng)造許多新機(jī)會(huì),并且正在推動(dòng)傳統(tǒng)IT產(chǎn)業(yè)發(fā)生根本性的變化。IDC預(yù)測(cè),2014年云計(jì)算將驅(qū)動(dòng)I千億美元的消費(fèi),比2013年增長(zhǎng)25% ;而我國(guó)2014年云計(jì)算中心等基礎(chǔ)硬件建設(shè)會(huì)達(dá)到高峰,云計(jì)算基礎(chǔ)架構(gòu)市場(chǎng)總體規(guī)模至2015年將超過20億美元。
[0003]云計(jì)算技術(shù)現(xiàn)已成為一個(gè)國(guó)家產(chǎn)業(yè)和信息安全的導(dǎo)向性指標(biāo)之一。2009年9月,美國(guó)政府宣布了一項(xiàng)長(zhǎng)期的云計(jì)算政策。英國(guó)在2009年發(fā)布的“數(shù)字英國(guó)報(bào)告”中,呼吁加強(qiáng)政府部門的云計(jì)算部署。韓國(guó)政府決定,在2014年前,向云計(jì)算領(lǐng)域投入巨資,爭(zhēng)取使韓國(guó)云計(jì)算市場(chǎng)規(guī)模擴(kuò)大到目前的4倍。我國(guó)已經(jīng)開始制定云計(jì)算國(guó)家級(jí)戰(zhàn)略規(guī)劃。2010年10月,工信部和發(fā)改委聯(lián)合發(fā)布了《關(guān)于做好云計(jì)算服務(wù)創(chuàng)新試點(diǎn)示范工作的通知》,明確在北京、上海、深圳、杭州、無錫5個(gè)城市開展云計(jì)算試點(diǎn)。國(guó)務(wù)院《關(guān)于加快培育和發(fā)展戰(zhàn)略性新興產(chǎn)業(yè)的決定》中明確指出:要大力發(fā)展包括節(jié)能環(huán)保、新一代信息技術(shù)、生物、高端裝備制造、新能源、新材料和新能源汽車等戰(zhàn)略性新興產(chǎn)業(yè)。云計(jì)算就屬于其中新一代信息技術(shù)的范疇。
[0004]隨著云計(jì)算技術(shù)的發(fā)展,云計(jì)算中的安全問題越來越受到產(chǎn)業(yè)界和學(xué)術(shù)界的關(guān)注。安全專家普遍認(rèn)為云計(jì)算技術(shù)還很不成熟,信息安全問題嚴(yán)重影響了部署云計(jì)算服務(wù)的步伐。Gartner組織曾指出:雖然云計(jì)算具有十分廣闊的應(yīng)用前景和巨大的商業(yè)價(jià)值,但是,對(duì)于使用這項(xiàng)服務(wù)的用戶來說,他們應(yīng)該意識(shí)到,云計(jì)算服務(wù)存在著特權(quán)用戶的接入、可審查性、數(shù)據(jù)位置、數(shù)據(jù)隔離、數(shù)據(jù)恢復(fù)、調(diào)查支持、以及長(zhǎng)期生存性七大潛在安全風(fēng)險(xiǎn)
[3]。事實(shí)上,在這些安全風(fēng)險(xiǎn)中,一些風(fēng)險(xiǎn)已經(jīng)發(fā)生。例如,Google公司泄露用戶隱私事件,以及Amazon EC2、Google Apps、Windows Azure的服務(wù)中斷事件。據(jù)IDC發(fā)布的云計(jì)算服務(wù)調(diào)查報(bào)告顯示,服務(wù)安全性、穩(wěn)定性、以及性能表現(xiàn)是云計(jì)算服務(wù)面臨的三大市場(chǎng)挑戰(zhàn)
[4]。
[0005]信息安全關(guān)乎國(guó)家的政治、經(jīng)濟(jì)和文化等各個(gè)方面。我國(guó)在《2006-2020年國(guó)家信息化發(fā)展戰(zhàn)略》中明確指出信息安全技術(shù)的重要地位,并且將大幅提高國(guó)家信息安全保障水平作為2020年我國(guó)信息化發(fā)展的戰(zhàn)略目標(biāo)。云計(jì)算技術(shù)作為推動(dòng)科技進(jìn)步和社會(huì)發(fā)展的一種新興的計(jì)算模型,已成為國(guó)際競(jìng)爭(zhēng)的焦點(diǎn)和制高點(diǎn),成為衡量一個(gè)國(guó)家綜合國(guó)力和科學(xué)研究能力的重要指標(biāo)之一。實(shí)現(xiàn)安全云計(jì)算不僅可以促進(jìn)我國(guó)政治、經(jīng)濟(jì)、科技和國(guó)家安全建設(shè),而且,隨著云計(jì)算技術(shù)的發(fā)展,該技術(shù)對(duì)于增強(qiáng)我國(guó)綜合國(guó)力和科技創(chuàng)新能力有1位于安全邊界以內(nèi),負(fù)責(zé)監(jiān)控虛擬機(jī)的運(yùn)的計(jì)算機(jī)系統(tǒng),是作為服務(wù)提供給用戶
運(yùn)行了可信計(jì)算模塊?1社?0;011(外,不受的控制,既可以是用戶運(yùn)行的,
電以管理位于安全邊界以內(nèi)的所有節(jié)點(diǎn),并信節(jié)點(diǎn)集合,從而保證只有可信節(jié)點(diǎn)能夠署和遷移過程的安全性;
通過可信虛擬機(jī)監(jiān)控器對(duì)服務(wù)執(zhí)行環(huán)境進(jìn)I技術(shù)];若執(zhí)行環(huán)境的完整性遭到破壞,貝0
勺權(quán)限。
、篡改和破壞服務(wù)執(zhí)行環(huán)境,也即用戶虛擬Model, SMM)、智能平臺(tái)管理接口(Intelligent Platform Management Interface, IPMI)、以及底板管理控制器(Baseboard Management Controller, BMC),用戶通過遠(yuǎn)程認(rèn)證的方式對(duì)VMM的運(yùn)行過程的動(dòng)態(tài)完整性進(jìn)行隱密的檢測(cè),且保證驗(yàn)證過程不被中斷或者篡改,獲得真實(shí)、可信、完整的測(cè)量結(jié)果。
[0021]TVMM的運(yùn)行時(shí)完整性的檢測(cè)由動(dòng)態(tài)管理器(Dynamic Management, DM)執(zhí)行;DM由兩個(gè)組件構(gòu)成:位于系統(tǒng)管理隨機(jī)存取存儲(chǔ)器中的系統(tǒng)管理中斷處理器(SystemManagement Random Access Memory, SMRAM)、以及位于TVMM完整性測(cè)量代理;用戶利用基于IPMI和BMC頻帶外信道,以遠(yuǎn)程調(diào)用DM的方式實(shí)現(xiàn)對(duì)VMM運(yùn)行過程的動(dòng)態(tài)完整性進(jìn)行檢測(cè)。
[0022]在遠(yuǎn)程認(rèn)證過程中:
[0023]①實(shí)現(xiàn)隱秘的測(cè)量:首先由BMC產(chǎn)生的SMI可能被惡意的VMM作廢或者重新路由;如果SMI被撤銷,則遠(yuǎn)程實(shí)體將無法在有限時(shí)間內(nèi)收到測(cè)量結(jié)果,從而推斷SMI被VMM惡意撤銷;其次,VMM具有觸發(fā)SMI的能力,能夠通過偽測(cè)量調(diào)用來隱瞞原始SMI調(diào)用;為了區(qū)分通過頻帶外信道對(duì)SMI的調(diào)用與VMM的偽調(diào)用,采用一系列不能被軟件篡改的狀態(tài)寄存器來存儲(chǔ)SMI調(diào)用的類型,并采用通用輸入端口路由表來記錄每個(gè)通用輸入端口產(chǎn)生的中斷類型,保證只有與BMC相連的通用輸 入端口才能觸發(fā)SMI ;
[0024]②保證DM組件的完整性:首先,需要實(shí)現(xiàn)SMI處理器的可信啟動(dòng),從BIOS中的核心可信測(cè)量根(Core Root ofTrust Measurement, CRTM)完整自我檢查以及可執(zhí)行代碼的檢查開始,直到啟動(dòng)過程中所有組件都被測(cè)量完畢;其次,需要保證SMI處理器在調(diào)用測(cè)量代理之前,先計(jì)算測(cè)量代理相關(guān)代碼的哈希值,以驗(yàn)證測(cè)量代理的完整性;
[0025]③保證驗(yàn)證過程不被中斷或者篡改【驗(yàn)證過程一旦開始就不允許被中斷或者篡改,保證驗(yàn)證過程的連續(xù)性,也就是說保證這個(gè)驗(yàn)證一直是最初發(fā)起的那個(gè)原始的驗(yàn)證?!?為了保證驗(yàn)證過程一旦開始就不能被中斷或者篡改,保證測(cè)量執(zhí)行過程中一旦發(fā)生了中斷或異常,測(cè)量控制流將直接轉(zhuǎn)到SMI處理器;
[0026]④保證測(cè)量環(huán)境信息的完整性:獲取VMM完整、真實(shí)的上下文環(huán)境,包括VMM的數(shù)據(jù)和代碼,當(dāng)被SMI中斷時(shí),采用回退技術(shù),通過注入一個(gè)導(dǎo)致虛擬機(jī)無條件退出的指令,強(qiáng)迫CPU內(nèi)核從用戶虛擬機(jī)轉(zhuǎn)移到VMM ;回退過程如下:保持所有寄存器中的值,以及下一條指令和地址;注入一個(gè)特權(quán)指令取代下一條指令;一旦一個(gè)事件被計(jì)數(shù),設(shè)置性能寄存器為溢出;修改高級(jí)可編程中斷控制器(Local Advanced Programmable InterruptController, LAPIC)以至于性能寄存器溢出導(dǎo)致一個(gè)SMI中斷;
[0027]模型采用遠(yuǎn)程認(rèn)證方式保證結(jié)果的真實(shí)性:在系統(tǒng)啟動(dòng)過程中,為平臺(tái)產(chǎn)生一個(gè)公鑰/私鑰對(duì),在鎖住SMRAM之前,將私鑰存放在SMRAM中,并且將公鑰存放在TPM的靜態(tài)PCR中;為了獲得測(cè)量過程的結(jié)果,遠(yuǎn)程用戶發(fā)送一個(gè)請(qǐng)求和一個(gè)隨機(jī)數(shù)給驗(yàn)證代理;驗(yàn)證代理將獲得基于隨機(jī)數(shù)而產(chǎn)生兩個(gè)不同的簽名值:第一個(gè)是靜態(tài)認(rèn)證輸出,由TPM私鑰簽名;第二個(gè)是測(cè)量的結(jié)果,由SMI處理器的私鑰簽名;通過比較簽名則可以判斷結(jié)果的真實(shí)性?!救绻灻軌蛲ㄟ^公鑰的驗(yàn)證,則表明簽名是合法有效的,也即測(cè)量結(jié)果是真實(shí)的?!?br> [0028]TNM維護(hù)一個(gè)可信節(jié)點(diǎn)集合列表,記錄位于安全邊界以內(nèi)的節(jié)點(diǎn)、該節(jié)點(diǎn)的公共背書密鑰、以及期望的測(cè)量列表,并公布自己的背書密鑰公鑰、期望的測(cè)量列表、以及可信密鑰公鑰;TNM與可信節(jié)點(diǎn)之間通過遠(yuǎn)程認(rèn)證驗(yàn)證測(cè)量列表的完整性來相互驗(yàn)證平臺(tái)的可信性;在遷移過程中,源節(jié)點(diǎn)請(qǐng)求TNM驗(yàn)證目的節(jié)點(diǎn)的可信性;如果源節(jié)點(diǎn)與目的節(jié)點(diǎn)都位于可信節(jié)點(diǎn)集合中,TNM允許兩個(gè)節(jié)點(diǎn)直接進(jìn)行通信;源節(jié)點(diǎn)與目的節(jié)點(diǎn)之間協(xié)商一個(gè)會(huì)話密鑰,加密虛擬機(jī)遷移過程中的相關(guān)信息;為了保證虛擬機(jī)遷移過程的完整性和安全性,源節(jié)點(diǎn)計(jì)算虛擬機(jī)身份的哈希值,并且將虛擬機(jī)身份以及哈希值加密后傳遞給目的節(jié)點(diǎn);
[0029]具體可信虛擬機(jī)遷移過程如下:
[0030]I) Ns請(qǐng)求TNM驗(yàn)證Nd的可信性:NS首先選擇一個(gè)向TNM發(fā)起的挑戰(zhàn),然后利用其可信密鑰的私鑰I,:加密挑戰(zhàn)和Nd的身份/Dh/最后將產(chǎn)生的密文以及/2)%用--Μ的可信密鑰的公鑰加密,并且將產(chǎn)生的結(jié)果發(fā)送給TNM ;
[0031 ] 2) TW驗(yàn)證源節(jié)點(diǎn)與目標(biāo)節(jié)點(diǎn)的可信性:首先,?M利用其可信密鑰的私鑰解密消息,并且驗(yàn)證Ns的身份是否位于可信節(jié)點(diǎn)集合中;如果Ns是可信節(jié)點(diǎn),則利用Ns的可信密鑰的公鑰解密/0~和挑戰(zhàn),并且驗(yàn)證Nd的身份是否位于可信節(jié)點(diǎn)集合中;如果Nd
是可信節(jié)點(diǎn),則利用愁的可信密鑰的公鑰I,f加密挑戰(zhàn)以及Nd的可信密鑰的公鑰?最
后,用其可信密鑰的私鑰再次加密生成的密文,并且將結(jié)果返回給Ns ;
[0032]3) Ns與Nd之間協(xié)商一個(gè)會(huì)話密鑰SK,以保證VM遷移過程中的狀態(tài)機(jī)密性,Ns解
密消息之后可獲得Nd的可信密鑰的公鑰I=,Ns首先選擇一個(gè)會(huì)話密鑰SK,并且向Nd發(fā)起一個(gè)挑戰(zhàn);然后,利用其可信密鑰的私鑰加密SK和;最后,利用Nd的可信密鑰的公鑰加密自己的身份以及產(chǎn)生的密文,并且將結(jié)果發(fā)送給Nd ;
[0033]4)在接受會(huì)話密鑰之前,Nd先驗(yàn)證Ns是否可信;Nd先利用其可信密鑰的私鑰解密出Ns的身份;然后,Nd向--Μ發(fā)起一個(gè)挑戰(zhàn),并且利用其可信密鑰的私鑰TX=加密挑戰(zhàn)和;最后利用TNM的可信密鑰的公鑰加密產(chǎn)生的密文和TDfy ,并且將結(jié)果發(fā)送給TW ;
[0034]5) --Μ解密出Ns和Nd的身份,驗(yàn)證兩者是否是可信節(jié)點(diǎn);如果是,則先利用Nd的可信密鑰的私鑰加密挑戰(zhàn)和Ns的可信密鑰的公鑰最后,用其可信密鑰私鑰加密生成的密文,并且將產(chǎn)生的結(jié)果返回給Nd ;
[0035]6)如果相互認(rèn)證完成,Nd回復(fù)接受會(huì)話密鑰SK,并且利用SK加密挑戰(zhàn)后,發(fā)送給Ns;
[0036]7)為了保證虛擬機(jī)遷移過程的完整性和機(jī)密性,Ns計(jì)算虛擬機(jī)身份的哈希值,并且將虛擬機(jī)身份以及哈希值加密后傳遞給Nd。
[0037]TVMM運(yùn)行兩種類型的虛擬機(jī):用戶虛擬機(jī)和管理虛擬機(jī);管理虛擬機(jī)負(fù)責(zé)配置用戶虛擬機(jī)的存儲(chǔ)空間、內(nèi) 存,決定采用的策略,為用戶虛擬機(jī)提供高層次的接口 ;TVMM為管理虛擬機(jī)提供一個(gè)基礎(chǔ)接口【基礎(chǔ)接口指的是軟件的AP1,封裝了底層的一些功能模塊,供上層調(diào)用?!縼韴?zhí)行這些任務(wù),并發(fā)起完整性測(cè)量代理對(duì)用戶虛擬機(jī)的完整性進(jìn)行驗(yàn)證;完整性測(cè)量代理截獲所有進(jìn)程,包括監(jiān)控服務(wù)請(qǐng)求、系統(tǒng)調(diào)用和硬件中斷;系統(tǒng)調(diào)用在轉(zhuǎn)交到用戶操作系統(tǒng)內(nèi)核之前,會(huì)先陷入到TVMM ;此時(shí),完整性測(cè)量代理截獲用戶虛擬機(jī)發(fā)起的所有系統(tǒng)調(diào)用,檢測(cè)截獲的上下文環(huán)境和輸入?yún)?shù);
[0038]凈室態(tài)實(shí)時(shí)監(jiān)控涉及三個(gè)過程:主動(dòng)監(jiān)控、獲取語義感知的完整性測(cè)量結(jié)果、以及保護(hù)用戶內(nèi)存;
[0039]I)主動(dòng)監(jiān)控使得可信VMM能夠保持用戶虛擬機(jī)內(nèi)存布局的最新視圖;一旦內(nèi)存布局改變,即當(dāng)用戶虛擬機(jī)創(chuàng)建、終止或者修改用戶進(jìn)程或內(nèi)核模塊時(shí),TVMM都會(huì)截獲相關(guān)事件,并且重新發(fā)起完整性檢查;包括:①截獲關(guān)鍵用戶事件:為了檢測(cè)用戶虛擬機(jī)發(fā)起事件的上下文環(huán)境和輸入,事件一旦被陷入到TVMM,完整性測(cè)量代理立刻檢查用戶虛擬機(jī)的寄存器、軟件棧、軟件堆;檢測(cè)的信息包括:事件類型、事件參數(shù)、運(yùn)行程序的指令和棧指針;一旦內(nèi)核完成事件處理,完整性測(cè)量代理將迫使其再次陷入TVMM ;對(duì)于中斷和異常,TVMM將存儲(chǔ)在內(nèi)核中的事件返回地址變成一個(gè)非法地址;一旦事件返回非法地址,將導(dǎo)致陷入TVMM的保護(hù)故障。②截獲系統(tǒng)調(diào)用:采用多返回地址情況下的系統(tǒng)調(diào)用攔截技術(shù)和內(nèi)核重入情況下的系統(tǒng)調(diào)用攔截迫使系統(tǒng)調(diào)用在傳遞到系統(tǒng)內(nèi)核之前被TVMM截獲,并且使得TVMM截獲所有用戶虛擬機(jī)發(fā)送的系統(tǒng)調(diào)用,以及調(diào)用的上下文環(huán)境和輸入?yún)?shù),從而實(shí)現(xiàn)完全的主動(dòng)監(jiān)控;
[0040]完整性測(cè)量代理攔截系統(tǒng)調(diào)用的過程:①進(jìn)程a發(fā)起一個(gè)系統(tǒng)調(diào)用;完整性測(cè)量代理保存所需數(shù)據(jù),并且設(shè)置調(diào)試寄存器;②內(nèi)核暫停正在運(yùn)行的線程,調(diào)用進(jìn)程b ;在上下文轉(zhuǎn)換發(fā)生之前,執(zhí)行被陷入到TVMM,完整性測(cè)量代理復(fù)位調(diào)試寄存器;③進(jìn)程b發(fā)起一個(gè)系統(tǒng)調(diào)用;完整性測(cè)量代理在列表上創(chuàng)建新的一項(xiàng),并且利用新值來設(shè)置調(diào)試寄存器;④內(nèi)核完成進(jìn)程b的系統(tǒng)調(diào)用,一個(gè)調(diào)試器異常將指令陷入TVMM。在TVMM返回結(jié)果給調(diào)用進(jìn)程之前,完整性測(cè)量代理完成對(duì)其進(jìn)行檢測(cè)的過程內(nèi)核繼續(xù)進(jìn)程a的調(diào)用;完整性測(cè)量代理獲知上下文轉(zhuǎn)換,并且恢復(fù)保持的調(diào)試寄存器的值;⑥調(diào)用完成,完整性測(cè)量代理開始測(cè)量作為調(diào)用結(jié)果的存儲(chǔ)區(qū)域加載頁面之后,一個(gè)保護(hù)異常發(fā)生;這個(gè)過程一直持續(xù)到所有頁面都被加載;⑧完整性測(cè)量代理測(cè)量?jī)?nèi)存區(qū)域,恢復(fù)原始的內(nèi)核輸出,并且返回給用戶進(jìn)程;
`[0041]2)獲取完整并且語義感知的測(cè)量結(jié)果要求操作系統(tǒng)內(nèi)核在運(yùn)行程序之前加載完整的程序,并且由可信VMM立刻驗(yàn)證整個(gè)程序的完整性;攔截相關(guān)系統(tǒng)調(diào)用,并強(qiáng)迫內(nèi)核在運(yùn)行程序之前加載完整程序,以保證能夠獲取完整的測(cè)量信息;當(dāng)程序代碼和初始數(shù)據(jù)分塊加載到內(nèi)存時(shí),要求完整性測(cè)量代理立刻計(jì)算整個(gè)程序的連續(xù)哈希函數(shù)值來確定其完整性;
[0042]3)用戶內(nèi)存保護(hù):為了保證只執(zhí)行被測(cè)量過的用戶程序,完整測(cè)量代理利用NX-比特頁面保護(hù)標(biāo)識(shí)技術(shù),使得一旦從被具有保護(hù)標(biāo)志的頁面執(zhí)行指令,將會(huì)造成一個(gè)陷入到TVMM的異常;TVMM陷入所有用戶頁面表的更新,測(cè)試其是否匹配任何已完成測(cè)量的程序關(guān)聯(lián)的可執(zhí)行頁面的地址,從而驗(yàn)證從用戶內(nèi)核獲取的信息的完整性;為了避免所有已經(jīng)測(cè)量過的程序被修改,完整性測(cè)量代理將所有測(cè)量過的可執(zhí)行頁面都標(biāo)識(shí)為不可寫;一旦攻擊者試圖修改已測(cè)量頁面,一個(gè)異常將產(chǎn)生,并且將進(jìn)程陷入到TVMM ;另外,限制一個(gè)頁面的執(zhí)行操作與寫操作不能同時(shí)發(fā)生。
[0043]一種凈室云計(jì)算數(shù)據(jù)處理系統(tǒng),由可信虛擬機(jī)監(jiān)控器TVMM、可信節(jié)點(diǎn)管理器--Μ以及可信節(jié)點(diǎn)TN構(gòu)成;
[0044]其中,可信虛擬機(jī)監(jiān)控器即TVMM是一個(gè)位于硬件平臺(tái)與用戶虛擬機(jī)之間的軟件,且位于安全邊界以內(nèi),負(fù)責(zé)監(jiān)控虛擬機(jī)的運(yùn)行;
[0045]可信節(jié)點(diǎn)即TN為位于安全邊界以內(nèi)、運(yùn)行了可信計(jì)算模塊TPM的節(jié)點(diǎn);
[0046]可信節(jié)點(diǎn)管理器即--!位于安全邊界以外,不受CSP的控制,既可以是用戶運(yùn)行的軟件,也可以是用戶委托可信第三方運(yùn)行的軟件;
[0047]TN向TW注冊(cè),TNM維護(hù)一張注冊(cè)表,用以管理位于安全邊界以內(nèi)的所有節(jié)點(diǎn),并且通過增加/刪除表中的記錄管理動(dòng)態(tài)變化的可信節(jié)點(diǎn)集合,從而保證只有可信節(jié)點(diǎn)能夠參與到虛擬機(jī)部署和遷移過程中,并保證整個(gè)部署和遷移過程的安全性;
[0048]基于用戶與CSP簽訂的使用協(xié)議,用戶通過可信虛擬機(jī)監(jiān)控器對(duì)服務(wù)執(zhí)行環(huán)境進(jìn)行隱秘的測(cè)量;若執(zhí)行環(huán)境的完整性遭到破壞,則可信虛擬機(jī)監(jiān)控器向用戶給出報(bào)警;所述的使用協(xié)議確定了 CSP提供服務(wù)的權(quán)限;
[0049]所述的凈室云計(jì)算數(shù)據(jù)處理系統(tǒng)依據(jù)前述的凈室云計(jì)算數(shù)據(jù)處理方法實(shí)施數(shù)據(jù)處理。
[0050]本發(fā)明著眼于數(shù)據(jù)和運(yùn)行環(huán)境的安全性,并非管理方法。
[0051]本發(fā)明將云服務(wù)環(huán)境中的攻擊者分成兩種類型:外部攻擊者和內(nèi)部攻擊者。其中,外部攻擊者是一些必須突破CSP的層層安全防護(hù)才能夠獲取某些有用信息的人,內(nèi)部攻擊者是能夠輕易獲取“云”中某些有用數(shù)據(jù)的人,例如,CSP本身。本發(fā)明將CSP視為潛在攻擊者,研究如何有效地防止云計(jì)算系統(tǒng)的內(nèi)部攻擊?,F(xiàn)有的研究工作主要是將CSP視為“誠實(shí)而好奇”的實(shí)體,即CSP將 正常執(zhí)行用戶操作指令(例如,不會(huì)惡意篡改計(jì)算結(jié)果),但是對(duì)用戶數(shù)據(jù)十分好奇(例如,會(huì)窺視用戶的敏感數(shù)據(jù))。CSP不僅會(huì)窺視用戶的數(shù)據(jù),而且不會(huì)不誠實(shí)地執(zhí)行用戶操作指令,例如,惡意丟棄用戶長(zhǎng)期不用的數(shù)據(jù)。該安全模型可有效防止CSP窺視用戶的數(shù)據(jù),并且能夠有效防止CSP不誠實(shí)地執(zhí)行用戶操作指令。
[0052]本發(fā)明的目標(biāo)是在云計(jì)算環(huán)境中全方位地保證用戶數(shù)據(jù)處理過程和存儲(chǔ)過程的安全性,并且形成一套完整的理論體系。該設(shè)計(jì)思想與“凈室軟件工程”中“零缺陷”或“接近零缺陷”軟件開發(fā)的思想相似。因此,我們提出“凈室云計(jì)算(Cleanroom Cloud Computing,簡(jiǎn)稱CCC) ”的全新理念,希望借助當(dāng)前先進(jìn)的技術(shù)實(shí)現(xiàn)“零缺陷”或“接近零缺陷”的云計(jì)算服務(wù)。如圖1所示,凈室云計(jì)算理論將計(jì)算執(zhí)行環(huán)境劃分為“服務(wù)態(tài)”與“凈室態(tài)”。用戶根據(jù)需要與CSP簽訂安全服務(wù)協(xié)議(Secure Service Agreement, SSA)。在SSA生效之前,執(zhí)行環(huán)境處于“服務(wù)態(tài)”,此時(shí)CSP是最高權(quán)利實(shí)體,負(fù)責(zé)管理和控制所有基礎(chǔ)設(shè)施、平臺(tái)、資源以及服務(wù)。一旦SSA生效,執(zhí)行環(huán)境進(jìn)入“凈室態(tài)”,CSP將一切權(quán)利轉(zhuǎn)交給用戶,此時(shí)用戶成為最高權(quán)利實(shí)體,并且負(fù)責(zé)管理和控制由SSA規(guī)定的各項(xiàng)資源和服務(wù)。本發(fā)明將云計(jì)算服務(wù)類比為出租的“房間”,CSP類比為“房東”,用戶類比為“租客”。在租約有效期之內(nèi)(即“凈室態(tài)”),租客成為“房間的主人”,能夠?yàn)榉块g再加上一把“鎖”。搭建凈室云計(jì)算環(huán)境也就是保證除“房間的主人”以外的任何人(即使是房東)無法窺視其隱私以及破壞用戶生活環(huán)境,從根本上保障“房間的主人”的安全。雖然房東(CSP)可能需要進(jìn)行必要的家具和家電維修、添置、廢棄,但是需要保證房東(CSP)所進(jìn)行的任何操作都不違反SSA協(xié)議,或一旦做出違反SSA的行為將立刻向“房間的主人”提供警報(bào)。
[0053]模型
[0054]凈室云計(jì)算模型由可信虛擬機(jī)監(jiān)控器(Trusted Virtual Machine Monitor,TVMM)、可信節(jié)點(diǎn)管理器(Trusted Node Manager, TNM)、以及可信節(jié)點(diǎn)(Trusted Node)構(gòu)成,如圖2所示。其中,TVMM是一個(gè)位于硬件平臺(tái)與用戶虛擬機(jī)之間的軟件,且位于安全邊界以內(nèi),主要負(fù)責(zé)監(jiān)控虛擬機(jī)的運(yùn)行;TN為位于安全邊界以內(nèi)、運(yùn)行了可信計(jì)算模塊(Trusted Platform Module, TPM)的節(jié)點(diǎn);TNM位于安全邊界以外,不受CSP的控制,既可以是用戶運(yùn)行的軟件,也可以是用戶委托可信第三方運(yùn)行的軟件。TN向TW注冊(cè),TW維護(hù)一張注冊(cè)表,用以管理位于安全邊界以內(nèi)的所有節(jié)點(diǎn),并且通過增加/刪除表中的記錄管理動(dòng)態(tài)變化的可信節(jié)點(diǎn)集合,從而保證只有可信節(jié)點(diǎn)能夠參與到虛擬機(jī)部署和遷移過程中,并保證整個(gè)部署和遷移過程的安全性。
[0055]凈室云計(jì)算模型解決全面凈室化計(jì)算環(huán)境的基本思路是:首先,結(jié)合可信計(jì)算技術(shù)與虛擬化技術(shù)實(shí)現(xiàn)TVMM ;然后,通過TVMM與--Μ合作,一方面,將虛擬機(jī)的執(zhí)行限制在TN內(nèi);另一方面,當(dāng)虛擬機(jī)在網(wǎng)絡(luò)中遷移時(shí)(包括發(fā)起虛擬機(jī)和虛擬機(jī)遷移兩種情況),保護(hù)虛擬機(jī)的狀態(tài)不被監(jiān)控和修改;最后,利用TVMM中的完整性驗(yàn)證代理保證虛擬機(jī)運(yùn)行時(shí)的可信。
[0056]凈室態(tài)安全框架構(gòu)建技術(shù)
[0057]為了實(shí)現(xiàn)凈室態(tài)安全框架構(gòu)建,需要保證以下三個(gè)過程的安全性:虛擬機(jī)監(jiān)控器(Virtual Machine Monitor, VMM)部署過程的安全性、VMM啟動(dòng)過程的安全性、以及VMM運(yùn)行過程的安全性,從而實(shí)現(xiàn)TVMM。為了保證VMM部署和啟動(dòng)過程的安全性,本項(xiàng)目假設(shè)節(jié)點(diǎn)主板嵌入了可信平臺(tái)模塊(TPM)芯片,以提供可信計(jì)算的信任根。TPM中有一系列平臺(tái)配置寄存器(Platform Configuration Register, PCR)。PCR是TPM的測(cè)量信任根程序,通過“竊聽”外部設(shè)備與CPU輸入/輸出控制中心之間的輸入/輸入總線,獲取從外部設(shè)備到平臺(tái)的軟件執(zhí)行環(huán)境的測(cè)量結(jié)果,并且將其記錄在非永久性存儲(chǔ)器中。用戶通過遠(yuǎn)程認(rèn)證方式,即“挑戰(zhàn)-回復(fù)”機(jī)制獲取多個(gè)PCR中的測(cè)量結(jié)果,并且將接收到的測(cè)量列表與期望值比較,從而判斷VMM是否部署在嵌入了可信平臺(tái)模塊的云服務(wù)器上,并判斷VMM的啟動(dòng)過程是否安全。
[0058]凈室態(tài)安全框架構(gòu)建的難點(diǎn)在`于如何保證VMM運(yùn)行時(shí)的安全性。現(xiàn)有方法是通過遠(yuǎn)程認(rèn)證的方式對(duì)VMM運(yùn)行時(shí)的完整性和可信性進(jìn)行度量。由于VMM是優(yōu)先級(jí)別最高的軟件,因此,惡意的VMM可能會(huì)攔截遠(yuǎn)程認(rèn)證,從而在驗(yàn)證執(zhí)行之前,清除攻擊痕跡,或者篡改真實(shí)的驗(yàn)證結(jié)果。因此,遠(yuǎn)程認(rèn)證過程必須保證:①隱秘地測(cè)量。對(duì)VMM的測(cè)量需要隱密地進(jìn)行,以免VMM發(fā)現(xiàn)測(cè)量的執(zhí)行而清除任何痕跡。②驗(yàn)證過程的原子性。驗(yàn)證過程一旦開始就不能被中斷或者篡改。③測(cè)量環(huán)境信息的完整性。獲取VMM的真實(shí)上下文環(huán)境,包括VMM的數(shù)據(jù)和代碼,以及CPU的完整性狀態(tài)。④測(cè)量結(jié)果的真實(shí)性。認(rèn)證結(jié)果被安全地傳送到遠(yuǎn)程認(rèn)證方,不得被篡改、造假。
[0059]本發(fā)明假設(shè)節(jié)點(diǎn)裝備了能夠遠(yuǎn)程觸發(fā)系統(tǒng)管理中斷(SystemManagementlnterrupt, SMI)的頻帶外信道(例如,IBM BladerCenter),利用系統(tǒng)管理模式(System Management Model, SMM)、智能平臺(tái)管理接口(IntelligentPlatform Management Interface, IPMI)、以及底板管理控制器(Baseboard ManagementController, BMC),用戶通過遠(yuǎn)程認(rèn)證的方式對(duì)VMM的運(yùn)行過程的動(dòng)態(tài)完整性進(jìn)行“隱密的”和“原子的”檢測(cè)(“原子的”檢測(cè)是指保證驗(yàn)證過程不被中斷或者篡改),獲得真實(shí)、可信、完整的測(cè)量結(jié)果。
[0060]TVMM的運(yùn)行時(shí)完整性的檢測(cè)由動(dòng)態(tài)管理器(Dynamic Management, DM)執(zhí)行。DM由兩個(gè)組件構(gòu)成:位于系統(tǒng)管理隨機(jī)存取存儲(chǔ)器中的系統(tǒng)管理中斷處理器(SystemManagement Random Access Memory, SMRAM)、以及位于TVMM完整性測(cè)量代理。用戶利用基于IPMI和BMC頻帶外信道,以遠(yuǎn)程調(diào)用DM的方式實(shí)現(xiàn)對(duì)VMM運(yùn)行過程的動(dòng)態(tài)完整性進(jìn)行檢測(cè)。遠(yuǎn)程認(rèn)證過程如圖3所示。
[0061]遠(yuǎn)程認(rèn)證過程的安全需求如下:
[0062]①實(shí)現(xiàn)隱秘的測(cè)量。對(duì)VMM的測(cè)量需要隱密地進(jìn)行,以免VMM發(fā)現(xiàn)測(cè)量的執(zhí)行而清除“任何痕跡”。實(shí)現(xiàn)隱密的測(cè)量面臨以下兩個(gè)主要挑戰(zhàn):首先,由BMC產(chǎn)生的SMI可能被惡意的VMM作廢或者重新路由。因此,需要防止SMI被VMM修改。這個(gè)問題可以通過遠(yuǎn)程認(rèn)證過程得以解決:如果SMI被撤銷,則遠(yuǎn)程實(shí)體將無法在有限時(shí)間內(nèi)收到測(cè)量結(jié)果,從而推斷SMI被VMM惡意撤銷。其次,VMM具有觸發(fā)SMI的能力,能夠通過偽測(cè)量調(diào)用來隱瞞原始SMI調(diào)用,清除“攻擊痕跡”。因此,為了區(qū)分通過頻帶外信道對(duì)SMI的調(diào)用與VMM的偽調(diào)用,本項(xiàng)目采用一系列不能被軟件(包括VMM)篡改的狀態(tài)寄存器來存儲(chǔ)SMI調(diào)用的類型,并采用通用輸入端口路由表來記錄每個(gè)通用輸入端口產(chǎn)生的中斷類型,保證只有與BMC相連的通用輸入端口才能觸發(fā)SMI。
[0063]②保證DM組件的完整性。由于測(cè)量代理位于VMM中,因此,測(cè)量執(zhí)行之前,需要保證測(cè)量代理的完整性。首先,需要實(shí)現(xiàn)SMI處理器的可信啟動(dòng)(如圖4所示),從BIOS中的核心可信測(cè)量根(Core Root ofTrust Measurement, CRTM)完整自我檢查以及可執(zhí)行代碼的檢查開始,直到啟動(dòng)過程中所有組件都被測(cè)量完畢。其次,需要保證SMI處理器在調(diào)用測(cè)量代理之前,先計(jì)算測(cè)量代理相關(guān)代碼的哈希值,以驗(yàn)證測(cè)量代理的完整性。
[0064]③保證驗(yàn)證過程一旦開始就不允許被中斷或者篡改,保證驗(yàn)證過程的連續(xù)性,也就是說保證這個(gè)驗(yàn)證一直是最初發(fā)起的那個(gè)原始的驗(yàn)證。為了保證驗(yàn)證過程一旦開始就不能被中斷或者篡改,采用相關(guān)技術(shù)保證測(cè)量執(zhí)行過程中一旦發(fā)生了中斷或異常,測(cè)量控制流將直接轉(zhuǎn)到SMI處理器。
[0065]④保證測(cè)量環(huán)境信息的完整性。獲取VMM完整、真實(shí)的上下文環(huán)境,包括VMM的數(shù)據(jù)和代碼,當(dāng)被SMI中斷時(shí),CPU可能處于VMM /根操作模式,也可能處于用戶虛擬機(jī)/非根操作模式。僅當(dāng)CPU運(yùn)行在根操作模式下,測(cè)量代理才能夠通過中斷CPU獲取完整的測(cè)量信息;而當(dāng)CPU運(yùn)行在非根操作模式時(shí),測(cè)量代理無法獲取任何測(cè)量信息。因此,項(xiàng)目采用回退技術(shù),通過注入一個(gè)導(dǎo)致虛擬機(jī)無條件退出的指令,強(qiáng)迫CPU內(nèi)核從用戶虛擬機(jī)轉(zhuǎn)移到VMM。整個(gè)過程VMM不能察覺,也無法控制。回退過程如下:保持所有寄存器中的值,以及下一條指令和地址;注入一個(gè)特權(quán)指令取代下一條指令;一旦一個(gè)事件被計(jì)數(shù),設(shè)置性能寄存器為溢出;修改高級(jí)可編程中斷控制器(Local Advanced Programmable InterruptController, LAPIC)以至于性能寄存器溢出導(dǎo)致一個(gè)SMI中斷。
[0066]⑤保證測(cè)量結(jié)果真實(shí)性。認(rèn)證結(jié)果被安全地傳送到遠(yuǎn)程認(rèn)證方,不得被篡改、造假。
[0067]如圖5所示,模型采用遠(yuǎn)程認(rèn)證方式保證結(jié)果的真實(shí)性。在系統(tǒng)啟動(dòng)過程中,為平臺(tái)產(chǎn)生一個(gè)公鑰/私鑰對(duì),在鎖住SMRAM之前,將私鑰存放在SMRAM中,并且將公鑰存放在TPM的靜態(tài)PCR中。為了獲得測(cè)量過程的結(jié)果,遠(yuǎn)程用戶發(fā)送一個(gè)請(qǐng)求和一個(gè)隨機(jī)數(shù)給驗(yàn)證代理。驗(yàn)證代理將獲得基于隨機(jī)數(shù)而產(chǎn)生兩個(gè)不同的簽名值:第一個(gè)是靜態(tài)認(rèn)證輸出,由TPM私鑰簽名;第二個(gè)是測(cè)量的結(jié)果,由SMI處理器的私鑰簽名。通過比較簽名則可以判斷結(jié)果的真實(shí)性。
[0068]凈室態(tài)安全遷移技術(shù)
[0069]為了實(shí)現(xiàn)虛擬機(jī)的安全遷移,需要保證:①虛擬機(jī)部署在一個(gè)可信節(jié)點(diǎn)上。②虛擬機(jī)在用戶端和可信節(jié)點(diǎn)之間移動(dòng)過程的安全性。③在虛擬機(jī)遷移過程中,保證虛擬機(jī)在可信節(jié)點(diǎn)之間移動(dòng)過程的安全性。在整個(gè)遷移過程中,CSP無法監(jiān)視或破壞虛擬機(jī)的初始狀態(tài)和執(zhí)行狀態(tài)。
[0070]T匪維護(hù)一個(gè)可信節(jié)點(diǎn)集合列表,記錄位于安全邊界以內(nèi)的節(jié)點(diǎn)、該節(jié)點(diǎn)的公共背書密鑰、以及期望的測(cè)量列表,并公布自己的背書密鑰公鑰、期望的測(cè)量列表、以及可信密鑰公鑰。TNM與可信節(jié)點(diǎn)之間通過遠(yuǎn)程認(rèn)證驗(yàn)證測(cè)量列表的完整性來相互驗(yàn)證平臺(tái)的可信性。為了實(shí)現(xiàn)虛擬機(jī)執(zhí)行狀態(tài)在節(jié)點(diǎn)之間遷移過程的安全性,首先需要保證源節(jié)點(diǎn)與目標(biāo)節(jié)點(diǎn)都是可信節(jié)點(diǎn),其次需要保證虛擬機(jī)狀態(tài)在遷移過程中是安全的。因此,在遷移過程中,源節(jié)點(diǎn)請(qǐng)求TNM驗(yàn)證目的節(jié)點(diǎn)的可信性。如果源節(jié)點(diǎn)與目的節(jié)點(diǎn)都位于可信節(jié)點(diǎn)集合中,TNM讓兩個(gè)節(jié)點(diǎn)直接進(jìn)行通信。源節(jié)點(diǎn)與目的節(jié)點(diǎn)之間協(xié)商一個(gè)會(huì)話密鑰,加密虛擬機(jī)遷移過程中的相關(guān)信息。為了保證虛擬機(jī)遷移過程的完整性和安全性,源節(jié)點(diǎn)計(jì)算虛擬機(jī)身份的哈希值,并且將虛擬機(jī)身份以及哈希值加密后傳遞給目的節(jié)點(diǎn)。
[0071]虛擬機(jī)遷移過程如圖6所示。為了實(shí)現(xiàn)虛擬機(jī)執(zhí)行狀態(tài)在節(jié)點(diǎn)之間遷移過程的安全性,首先需要保證源節(jié)點(diǎn)Ns與目標(biāo)節(jié)點(diǎn)Nd都是可信節(jié)點(diǎn),其次需要保證虛擬機(jī)狀態(tài)在遷移過程中是安全的。
[0072]I) Ns請(qǐng)求--!驗(yàn)證Nd的可信性。Ns首先選擇一個(gè)向--!發(fā)起的挑戰(zhàn),然后利用其可信密鑰的私鑰加密挑戰(zhàn)和Nd的身份。最后將產(chǎn)生的密文以及/D用--Μ的可信密鑰的公鑰加密,并且將產(chǎn)生的結(jié)果發(fā)送給TNM。
[0073]2)--Μ驗(yàn)證源節(jié)點(diǎn)與目標(biāo)節(jié)點(diǎn)的可信性。首先,TNM利用其可信密鑰的私鑰ΤΧ?解密消息,并且驗(yàn)證Ns的身份是否位于可信節(jié)點(diǎn)集合中。如果Ns是可信節(jié)點(diǎn),則利用Ns的可信密鑰的公鑰解密/D ,和挑戰(zhàn),并且驗(yàn)證Nd的身份是否位于可信節(jié)點(diǎn)集合中。如果Nd
是可信節(jié)點(diǎn),則利用Ns的可信密鑰的公鑰if加密挑戰(zhàn)以及Nd的可信密鑰的公鑰。最
后,用其可信密鑰的私鑰再次加密生成的密文,并且將結(jié)果返回給Ns。
[0074]3)Ns與Nd之間協(xié)商一個(gè)會(huì)話密鑰SK,以保證VM遷移過程中的狀態(tài)機(jī)密性。Ns解
密消息之后可獲得Nd的可信密鑰的公鑰。Ns首先選擇一個(gè)會(huì)話密鑰SK,并且向Nd發(fā)起一個(gè)挑戰(zhàn);然后,利用其可信密鑰的私鑰Hg加密;最后,利用Nd的可信密鑰的公鑰I,=加密自己的身份以及產(chǎn)生的密文,并且將結(jié)果發(fā)送給Nd。
[0075]4)在接受會(huì)話密鑰之前,Nd先驗(yàn)證Ns是否可信。Nd先利用其可信密鑰的私鑰TX=解密出Ns的身份;然后,Nd向--Μ發(fā)起一個(gè)挑戰(zhàn),并且利用其可信密鑰的私鑰
加密挑戰(zhàn)和仍最后利用TNM的可信密鑰的公鑰加密產(chǎn)生的密文和/D ^并且將結(jié)果發(fā)送給TW。括監(jiān)控服務(wù)請(qǐng)求、系統(tǒng)調(diào)用和硬件中斷。系入到IV?。?。此時(shí),完整性測(cè)量代理截獲用戶環(huán)境和輸入?yún)?shù)。:控、獲取語義感知的完整性測(cè)量結(jié)果、以及
丨和異常)使得可信卩麗能夠保持用戶虛擬當(dāng)用戶虛擬機(jī)創(chuàng)建、終止或者修改用戶進(jìn)程昕發(fā)起完整性檢查。主要包括:①截獲關(guān)鍵文環(huán)境和輸入,事件一旦被陷入到IV?。?,完件棧、軟件堆。檢測(cè)的信息包括:事件類型、筆成事件處理,完整性測(cè)量代理將迫使其再~核中的事件返回地址變成一個(gè)非法地址。5故障。②截獲系統(tǒng)調(diào)用。簡(jiǎn)單利用重寫系3為系統(tǒng)調(diào)用通常具有多個(gè)返回地址,并且返回地址情況下的系統(tǒng)調(diào)用攔截技術(shù)和內(nèi)傳遞到系統(tǒng)內(nèi)核之前被IV??!截獲,并且使輸出,并且返回給用戶進(jìn)程。
[0084]2)獲取完整并且語義感知的測(cè)量結(jié)果要求操作系統(tǒng)內(nèi)核在運(yùn)行程序之前加載完整的程序,并且由可信VMM立刻驗(yàn)證整個(gè)程序的完整性。因此,①需要攔截相關(guān)系統(tǒng)調(diào)用,并強(qiáng)迫內(nèi)核在運(yùn)行程序之前加載完整程序,以保證能夠獲取完整的測(cè)量信息;②當(dāng)程序代碼和初始數(shù)據(jù)分塊加載到內(nèi)存時(shí),要求完整性測(cè)量代理立刻計(jì)算整個(gè)程序的連續(xù)哈希函數(shù)值來確定其完整性。
[0085]3)用戶內(nèi)存保護(hù)要求:①用戶虛擬機(jī)只能執(zhí)行被測(cè)量過的用戶程序。②用戶能夠發(fā)現(xiàn)任何對(duì)測(cè)量過的用戶程序的非法修改。為了保證只執(zhí)行被測(cè)量過的用戶程序,完整測(cè)量代理利用NX-比特頁面保護(hù)標(biāo)識(shí)技術(shù),使得一旦從被具有保護(hù)標(biāo)志的頁面執(zhí)行指令,將會(huì)造成一個(gè)陷入到TVMM的異常。TVMM陷入所有用戶頁面表的更新,測(cè)試其是否匹配任何已完成測(cè)量的程序關(guān)聯(lián)的可執(zhí)行頁面的地址,從而驗(yàn)證從用戶內(nèi)核獲取的信息的完整性。為了避免所有已經(jīng)測(cè)量過的程序被修改,完整性測(cè)量代理將所有測(cè)量過的可執(zhí)行頁面都標(biāo)識(shí)為不可寫。一旦攻擊者試圖修改已測(cè)量頁面,一個(gè)異常將產(chǎn)生,并且將進(jìn)程陷入到TVMM。另外,限制一個(gè)頁面的執(zhí)行操作與寫操作不能同時(shí)發(fā)生。
[0086]有益效果:
[0087]本發(fā)明的凈室云計(jì)算數(shù)據(jù)處理方法及系統(tǒng),以凈室云計(jì)算模型為架構(gòu),以凈室態(tài)安全框架構(gòu)建技術(shù)、凈室態(tài)安全遷移技術(shù)和凈室態(tài)實(shí)時(shí)監(jiān)控技術(shù)為技術(shù)手段;所述的凈室云計(jì)算模型由可信虛擬機(jī)監(jiān)控器(TVMM)、可信節(jié)點(diǎn)管理器(TNM)以及可信節(jié)點(diǎn)(TN)構(gòu)成;通過凈室態(tài)安全框架構(gòu)建技術(shù)實(shí)現(xiàn)可信的虛擬機(jī)監(jiān)控器,保障虛擬機(jī)監(jiān)控器部署、啟動(dòng)和運(yùn)行過程的安全性;通過凈室態(tài)安全遷移技術(shù)實(shí)現(xiàn)虛擬機(jī)在可信節(jié)點(diǎn)的部署,保障虛擬機(jī)遷移過程的安全性;通過凈室態(tài)實(shí)時(shí)監(jiān)控技術(shù),實(shí)現(xiàn)虛擬機(jī)運(yùn)行時(shí)的動(dòng)態(tài)完整性;基于用戶與云服務(wù)提供商(CSP)簽訂的使用協(xié)議,用戶通過可信虛擬機(jī)監(jiān)控器對(duì)服務(wù)執(zhí)行環(huán)境進(jìn)行隱秘的測(cè)量,從而將服務(wù)執(zhí)行環(huán)境限制在安全邊境以內(nèi),來實(shí)現(xiàn)凈室態(tài)的安全隔離/虛擬加鎖機(jī)制;若執(zhí)行環(huán)境的完整性遭到破壞,則可信虛擬機(jī)監(jiān)控器向用戶給出報(bào)警;所述的使用協(xié)議是用戶與CSP之間簽訂的與使用平臺(tái)服務(wù)相關(guān)的費(fèi)用方式和責(zé)任約束內(nèi)容。該凈室云計(jì)算數(shù)據(jù)處理方法及系統(tǒng)具有安全性高的優(yōu)點(diǎn)。
[0088]凈室云計(jì)算理論包含了云服務(wù)的“服務(wù)態(tài)”和“凈室態(tài)”這兩個(gè)全新的科學(xué)概念,以及將虛擬化技術(shù)和可信計(jì)算技術(shù)有機(jī)結(jié)合,實(shí)現(xiàn)凈室態(tài)下的安全隔離/虛擬加鎖機(jī)制。首先,結(jié)合可信計(jì)算技術(shù)與虛擬化技術(shù)實(shí)現(xiàn)TVMM ;然后,通過TVMM與--Μ合作,一方面,將虛擬機(jī)的執(zhí)行限制在可信節(jié)點(diǎn)以內(nèi);另一方面,當(dāng)虛擬機(jī)在網(wǎng)絡(luò)中遷移時(shí)(包括發(fā)起虛擬機(jī)和虛擬機(jī)遷移兩種情況),保護(hù)虛擬機(jī)的狀態(tài)不被監(jiān)控和修改;最后,利用TVMM中的完整性驗(yàn)證代理保證虛擬機(jī)運(yùn)行時(shí)的可信。
[0089]目前,結(jié)合可信計(jì)算技術(shù)和虛擬化技術(shù)是實(shí)現(xiàn)安全云計(jì)算服務(wù)的重要研究方向。一方面,利用虛擬化技術(shù)提供的隔離機(jī)制將實(shí)體運(yùn)行空間分開,通過監(jiān)控機(jī)制動(dòng)態(tài)度量實(shí)體的行為,發(fā)現(xiàn)和排除非預(yù)期的相互干擾。另一方面,通過可信度量機(jī)制保障虛擬機(jī)的動(dòng)態(tài)完整性,通過可信報(bào)告機(jī)制實(shí)現(xiàn)不同虛擬環(huán)境的可信互通,通過可信存儲(chǔ)機(jī)制實(shí)現(xiàn)數(shù)據(jù)遷移、存儲(chǔ)和訪問控制。然而,當(dāng)前的工作致力室化的于實(shí)現(xiàn)特定層次的云服務(wù)的安全,無法到達(dá)云服務(wù)全面凈目標(biāo)。本發(fā)明面向云計(jì)算服務(wù)環(huán)境,借鑒“凈室軟件工程”中開發(fā)“零缺陷”或“接近零缺陷”軟件的思想,結(jié)合虛擬化技術(shù)與可信計(jì)算技術(shù),從凈室態(tài)安全框架構(gòu)創(chuàng)新提供基礎(chǔ)理論支持。
5計(jì)算服務(wù)關(guān)鍵特征為前提,通過最大程度術(shù)作為一種新興的計(jì)算模型能夠真正融入自來水、電、煤氣一樣方便和實(shí)用并且安全
間的轉(zhuǎn)換示意圖;
意圖;
意圖;
過程示意圖;[0107]TN向--Μ注冊(cè),TNM維護(hù)一張注冊(cè)表,用以管理位于安全邊界以內(nèi)的所有節(jié)點(diǎn),并且通過增加/刪除表中的記錄管理動(dòng)態(tài)變化的可信節(jié)點(diǎn)集合,從而保證只有可信節(jié)點(diǎn)能夠參與到虛擬機(jī)部署和遷移過程中,并保證整個(gè)部署和遷移過程的安全性;
[0108]基于用戶與CSP簽訂的使用協(xié)議,用戶通過可信虛擬機(jī)監(jiān)控器對(duì)服務(wù)執(zhí)行環(huán)境進(jìn)行隱秘的測(cè)量;若執(zhí)行環(huán)境的完整性遭到破壞,則可信虛擬機(jī)監(jiān)控器向用戶給出報(bào)警;
[0109]所述的使用協(xié)議確定了 CSP提供服務(wù)的權(quán)限。
[0110]違反所述的使用協(xié)議的情況包括窺視、篡改和破壞服務(wù)執(zhí)行環(huán)境,也即用戶虛擬機(jī)。
[0111]在可信節(jié)點(diǎn)的主板嵌入了可信平臺(tái)模塊(TPM)芯片,以提供可信計(jì)算的信任根;TPM 中有一系列平臺(tái)配置寄存器(Platform Configuration Register, PCR) ;PCR 是 TPM 的測(cè)量信任根程序,通過隱秘監(jiān)測(cè)外部設(shè)備與CPU輸入/輸出控制中心之間的輸入/輸入總線,獲取從外部設(shè)備到平臺(tái)的軟件執(zhí)行環(huán)境的測(cè)量結(jié)果,并且將其記錄在非永久性存儲(chǔ)器中;用戶通過遠(yuǎn)程認(rèn)證方式,即“挑戰(zhàn)-回復(fù)”機(jī)制獲取多個(gè)PCR中的測(cè)量結(jié)果,并且將接收到的測(cè)量列表與期望值比較,從而判斷VMM是否部署在嵌入了可信平臺(tái)模塊的云服務(wù)器上,并判斷VMM的啟動(dòng)過程是否安全;
[0112]遠(yuǎn)程認(rèn)證過程中,獲取VMM的真實(shí)上下文環(huán)境,包括VMM的數(shù)據(jù)和代碼,以及CPU的完整性狀態(tài);認(rèn)證結(jié)果被安全地傳送到遠(yuǎn)程認(rèn)證方,且不被篡改和造假;
[0113]在可信節(jié)點(diǎn)裝備了能夠遠(yuǎn)程觸發(fā)系統(tǒng)管理中斷(System Management Interrupt,SMI)的頻帶外信道(例如,IBM BladerCenter),利用系統(tǒng)管理模式(System ManagementModel, SMM)、智能平臺(tái)管理接口(Intelligent Platform Management Interface, IPMI)、以及底板管理控制器(Baseboard Management Controller, BMC),用戶通過遠(yuǎn)程認(rèn)證的方式對(duì)VMM的運(yùn)行過程的動(dòng)態(tài)完整性進(jìn)行隱密的檢測(cè),且保證驗(yàn)證過程不被中斷或者篡改,獲得真實(shí)、可信、完整的測(cè)量結(jié)果。
`[0114]TVMM的運(yùn)行時(shí)完整性的檢測(cè)由動(dòng)態(tài)管理器(Dynamic Management, DM)執(zhí)行;DM由兩個(gè)組件構(gòu)成:位于系統(tǒng)管理隨機(jī)存取存儲(chǔ)器中的系統(tǒng)管理中斷處理器(SystemManagement Random Access Memory, SMRAM)、以及位于TVMM完整性測(cè)量代理;用戶利用基于IPMI和BMC頻帶外信道,以遠(yuǎn)程調(diào)用DM的方式實(shí)現(xiàn)對(duì)VMM運(yùn)行過程的動(dòng)態(tài)完整性進(jìn)行檢測(cè)。
[0115]在遠(yuǎn)程認(rèn)證過程中:
[0116]①實(shí)現(xiàn)隱秘的測(cè)量:首先由BMC產(chǎn)生的SMI可能被惡意的VMM作廢或者重新路由;如果SMI被撤銷,則遠(yuǎn)程實(shí)體將無法在有限時(shí)間內(nèi)收到測(cè)量結(jié)果,從而推斷SMI被VMM惡意撤銷;其次,VMM具有觸發(fā)SMI的能力,能夠通過偽測(cè)量調(diào)用來隱瞞原始SMI調(diào)用;為了區(qū)分通過頻帶外信道對(duì)SMI的調(diào)用與VMM的偽調(diào)用,采用一系列不能被軟件篡改的狀態(tài)寄存器來存儲(chǔ)SMI調(diào)用的類型,并采用通用輸入端口路由表來記錄每個(gè)通用輸入端口產(chǎn)生的中斷類型,保證只有與BMC相連的通用輸入端口才能觸發(fā)SMI ;
[0117]②保證DM組件的完整性:首先,需要實(shí)現(xiàn)SMI處理器的可信啟動(dòng),從BIOS中的核心可信測(cè)量根(Core Root ofTrust Measurement, CRTM)完整自我檢查以及可執(zhí)行代碼的檢查開始,直到啟動(dòng)過程中所有組件都被測(cè)量完畢;其次,需要保證SMI處理器在調(diào)用測(cè)量代理之前,先計(jì)算測(cè)量代理相關(guān)代碼的哈希值,以驗(yàn)證測(cè)量代理的完整性;[0118]③保證驗(yàn)證過程不被中斷或者篡改:為了保證驗(yàn)證過程一旦開始就不能被中斷或者篡改,保證測(cè)量執(zhí)行過程中一旦發(fā)生了中斷或異常,測(cè)量控制流將直接轉(zhuǎn)到SMI處理器;
[0119]④保證測(cè)量環(huán)境信息的完整性:獲取VMM完整、真實(shí)的上下文環(huán)境,包括VMM的數(shù)據(jù)和代碼,當(dāng)被SMI中斷時(shí),采用回退技術(shù),通過注入一個(gè)導(dǎo)致虛擬機(jī)無條件退出的指令,強(qiáng)迫CPU內(nèi)核從用戶虛擬機(jī)轉(zhuǎn)移到VMM ;回退過程如下:保持所有寄存器中的值,以及下一條指令和地址;注入一個(gè)特權(quán)指令取代下一條指令;一旦一個(gè)事件被計(jì)數(shù),設(shè)置性能寄存器為溢出;修改高級(jí)可編程中斷控制器(Local Advanced Programmable InterruptController, LAPIC)以至于性能寄存器溢出導(dǎo)致一個(gè)SMI中斷;
[0120]模型采用遠(yuǎn)程認(rèn)證方式保證結(jié)果的真實(shí)性:在系統(tǒng)啟動(dòng)過程中,為平臺(tái)產(chǎn)生一個(gè)公鑰/私鑰對(duì),在鎖住SMRAM之前,將私鑰存放在SMRAM中,并且將公鑰存放在TPM的靜態(tài)PCR中;為了獲得測(cè)量過程的結(jié)果,遠(yuǎn)程用戶發(fā)送一個(gè)請(qǐng)求和一個(gè)隨機(jī)數(shù)給驗(yàn)證代理;驗(yàn)證代理將獲得基于隨機(jī)數(shù)而產(chǎn)生兩個(gè)不同的簽名值:第一個(gè)是靜態(tài)認(rèn)證輸出,由TPM私鑰簽名;第二個(gè)是測(cè)量的結(jié)果,由SMI處理器的私鑰簽名;通過比較簽名則可以判斷結(jié)果的真實(shí)性。
[0121 ] TNM維護(hù)一個(gè)可信節(jié)點(diǎn)集合列表,記錄位于安全邊界以內(nèi)的節(jié)點(diǎn)、該節(jié)點(diǎn)的公共背書密鑰、以及期望的測(cè)量列表,并公布自己的背書密鑰公鑰、期望的測(cè)量列表、以及可信密鑰公鑰;TNM與可信節(jié)點(diǎn)之間通過遠(yuǎn)程認(rèn)證驗(yàn)證測(cè)量列表的完整性來相互驗(yàn)證平臺(tái)的可信性;在遷移過程中,源節(jié)點(diǎn)請(qǐng)求TNM驗(yàn)證目的節(jié)點(diǎn)的可信性;如果源節(jié)點(diǎn)與目的節(jié)點(diǎn)都位于可信節(jié)點(diǎn)集合中,TNM允許兩個(gè)節(jié)點(diǎn)直接進(jìn)行通信;源節(jié)點(diǎn)與目的節(jié)點(diǎn)之間協(xié)商一個(gè)會(huì)話密鑰,加密虛擬機(jī)遷移過程中的相關(guān)信息;為了保證虛擬機(jī)遷移過程的完整性和安全性,源節(jié)點(diǎn)計(jì)算虛擬機(jī)身份的哈希值,并且將虛擬機(jī)身份以及哈希值加密后傳遞給目的節(jié)點(diǎn);
[0122]具體可信虛擬機(jī)遷移過程如下:
[0123]1) Ns請(qǐng)求TNM驗(yàn)證Nd的可信性:NS首先選擇一個(gè)向TNM發(fā)起的挑戰(zhàn),然后利用其可信密鑰的私鑰TXg加密挑戰(zhàn)和Nd的身份仍,"最后將產(chǎn)生的密文以及/0%用--Μ的可信密鑰的公鑰加密,并且將產(chǎn)生的結(jié)果發(fā)送給TNM ;
[0124]2) TW驗(yàn)證源節(jié)點(diǎn)與目標(biāo)節(jié)點(diǎn)的可信性:首先,?M利用其可信密鑰的私鑰解密消息,并且驗(yàn)證Ns的身份是否位于可信節(jié)點(diǎn)集合中;如果Ns是可信節(jié)點(diǎn),則利用Ns的可信密鑰的公鑰if解密/D 〃和挑戰(zhàn),并且驗(yàn)證Nd的身份是否位于可信節(jié)點(diǎn)集合中;如果Nd
是可信節(jié)點(diǎn),則利用Ns的可信密鑰的公鑰if加密挑戰(zhàn)以及Nd的可信密鑰的公鑰g ?,最
后,用其可信密鑰的私鑰再次加密生成的密文,并且將結(jié)果返回給Ns ;
[0125]3) Ns與乂之間協(xié)商一個(gè)會(huì)話密鑰SK,以保證VM遷移過程中的狀態(tài)機(jī)密性,Ns解
密消息之后可獲得Nd的可信密鑰的公鑰,Ns首先選擇一個(gè)會(huì)話密鑰SK,并且向Nd發(fā)起一個(gè)挑戰(zhàn);然后,利用其可信密鑰的私鑰加密SK和;最后,利用Nd的可信密鑰的公鑰1:加密自己的身份以及產(chǎn)生的密文,并且將結(jié)果發(fā)送給Nd ;
[0126]4)在接受會(huì)話密鑰之前,Nd先驗(yàn)證Ns是否可信;Nd先利用其可信密鑰的私鑰解密出Ns的身份2?,;然后,Nd向--Μ發(fā)起一個(gè)挑戰(zhàn),并且利用其可信密鑰的私鑰Hg加密挑戰(zhàn)和/0?^最后利用TNM的可信密鑰的公鑰加密產(chǎn)生的密文和/D ^并且將結(jié)果發(fā)送給TW ;
[0127]5) --Μ解密出Ns和Nd的身份,驗(yàn)證兩者是否是可信節(jié)點(diǎn);如果是,則先利用Nd的可信密鑰的私鑰TXg加密挑戰(zhàn)和Ns的可信密鑰的公鑰;最后,用其可信密鑰私鑰TXf加密生成的密文,并且將產(chǎn)生的結(jié)果返回給Nd ;
[0128]6)如果相互認(rèn)證完成,Nd回復(fù)接受會(huì)話密鑰SK,并且利用SK加密挑戰(zhàn)后,發(fā)送給Ns;
[0129]7)為了保證虛擬機(jī)遷移過程的完整性和機(jī)密性,Ns計(jì)算虛擬機(jī)身份的哈希值,并且將虛擬機(jī)身份以及哈希值加密后傳遞給Nd。
[0130]TVMM運(yùn)行兩種類型的虛擬機(jī):用戶虛擬機(jī)和管理虛擬機(jī);管理虛擬機(jī)負(fù)責(zé)配置用戶虛擬機(jī)的存儲(chǔ)空間、內(nèi)存,決定采用的策略,為用戶虛擬機(jī)提供高層次的接口 ;TVMM為管理虛擬機(jī)提供一個(gè)基礎(chǔ)接口來執(zhí)行這些任務(wù),并發(fā)起完整性測(cè)量代理對(duì)用戶虛擬機(jī)的完整性進(jìn)行驗(yàn)證;完整性測(cè)量代理截獲所有進(jìn)程,包括監(jiān)控服務(wù)請(qǐng)求、系統(tǒng)調(diào)用和硬件中斷;系統(tǒng)調(diào)用在轉(zhuǎn)交到用戶操作系統(tǒng)內(nèi)核之前,會(huì)先陷入到TVMM ;此時(shí),完整性測(cè)量代理截獲用戶虛擬機(jī)發(fā)起的所有系統(tǒng)調(diào)用,檢測(cè)截獲的上下文環(huán)境和輸入?yún)?shù);
[0131]凈室態(tài)實(shí)時(shí)監(jiān)控涉及三個(gè)過程:主動(dòng)監(jiān)控、獲取語義感知的完整性測(cè)量結(jié)果、以及保護(hù)用戶內(nèi)存;
[0132]I)主動(dòng)監(jiān)控使得可信VMM能夠保持用戶虛擬機(jī)內(nèi)存布局的最新視圖;一旦內(nèi)存布局改變,即當(dāng)用戶虛擬機(jī)創(chuàng)建、終止或者修改用戶進(jìn)程或內(nèi)核模塊時(shí),TVMM都會(huì)截獲相關(guān)事件,并且重新發(fā)起完整性檢查;包括:①截獲關(guān)鍵用戶事件:為了檢測(cè)用戶虛擬機(jī)發(fā)起事件的上下文環(huán)境和輸入,事件一`旦被陷入到TVMM,完整性測(cè)量代理立刻檢查用戶虛擬機(jī)的寄存器、軟件棧、軟件堆;檢測(cè)的信息包括:事件類型、事件參數(shù)、運(yùn)行程序的指令和棧指針;一旦內(nèi)核完成事件處理,完整性測(cè)量代理將迫使其再次陷入TVMM ;對(duì)于中斷和異常,TVMM將存儲(chǔ)在內(nèi)核中的事件返回地址變成一個(gè)非法地址;一旦事件返回非法地址,將導(dǎo)致陷入TVMM的保護(hù)故障。②截獲系統(tǒng)調(diào)用:采用多返回地址情況下的系統(tǒng)調(diào)用攔截技術(shù)和內(nèi)核重入情況下的系統(tǒng)調(diào)用攔截迫使系統(tǒng)調(diào)用在傳遞到系統(tǒng)內(nèi)核之前被TVMM截獲,并且使得TVMM截獲所有用戶虛擬機(jī)發(fā)送的系統(tǒng)調(diào)用,以及調(diào)用的上下文環(huán)境和輸入?yún)?shù),從而實(shí)現(xiàn)完全的主動(dòng)監(jiān)控;
[0133]完整性測(cè)量代理攔截系統(tǒng)調(diào)用的過程:①進(jìn)程a發(fā)起一個(gè)系統(tǒng)調(diào)用;完整性測(cè)量代理保存所需數(shù)據(jù),并且設(shè)置調(diào)試寄存器;②內(nèi)核暫停正在運(yùn)行的線程,調(diào)用進(jìn)程b ;在上下文轉(zhuǎn)換發(fā)生之前,執(zhí)行被陷入到TVMM,完整性測(cè)量代理復(fù)位調(diào)試寄存器;③進(jìn)程b發(fā)起一個(gè)系統(tǒng)調(diào)用;完整性測(cè)量代理在列表上創(chuàng)建新的一項(xiàng),并且利用新值來設(shè)置調(diào)試寄存器;
④內(nèi)核完成進(jìn)程b的系統(tǒng)調(diào)用,一個(gè)調(diào)試器異常將指令陷入TVMM。在TVMM返回結(jié)果給調(diào)用進(jìn)程之前,完整性測(cè)量代理完成對(duì)其進(jìn)行檢測(cè)的過程內(nèi)核繼續(xù)進(jìn)程a的調(diào)用;完整性測(cè)量代理獲知上下文轉(zhuǎn)換,并且恢復(fù)保持的調(diào)試寄存器的值;⑥調(diào)用完成,完整性測(cè)量代理開始測(cè)量作為調(diào)用結(jié)果的存儲(chǔ)區(qū)域加載頁面之后,一個(gè)保護(hù)異常發(fā)生;這個(gè)過程一直持續(xù)到所有頁面都被加載;⑧完整性測(cè)量代理測(cè)量?jī)?nèi)存區(qū)域,恢復(fù)原始的內(nèi)核輸出,并且返回I虛擬機(jī)監(jiān)控器IV??!、可信節(jié)點(diǎn)管理器I'匪卜位于硬件平臺(tái)與用戶虛擬機(jī)之間的軟件,
I行了可信計(jì)算模塊的節(jié)點(diǎn);
(外,不受的控制,既可以是用戶運(yùn)行的,
電以管理位于安全邊界以內(nèi)的所有節(jié)點(diǎn),并信節(jié)點(diǎn)集合,從而保證只有可信節(jié)點(diǎn)能夠署和遷移過程的安全性;
通過可信虛擬機(jī)監(jiān)控器對(duì)服務(wù)執(zhí)行環(huán)境進(jìn)則可信虛擬機(jī)監(jiān)控器向用戶給出報(bào)警;所
前述的凈室云計(jì)算數(shù)據(jù)處理方法實(shí)施數(shù)據(jù)
【權(quán)利要求】
1.一種凈室云計(jì)算數(shù)據(jù)處理方法,其特征在于,以凈室云計(jì)算模型為架構(gòu); 所述的凈室云計(jì)算模型由可信虛擬機(jī)監(jiān)控器TVMM、可信節(jié)點(diǎn)管理器TNM以及可信節(jié)點(diǎn)TN構(gòu)成; 其中,可信虛擬機(jī)監(jiān)控器即TVMM是一個(gè)位于硬件平臺(tái)與用戶虛擬機(jī)之間的軟件,且位于安全邊界以內(nèi),負(fù)責(zé)監(jiān)控虛擬機(jī)的運(yùn)行; 可信節(jié)點(diǎn)即TN為位于安全邊界以內(nèi)、運(yùn)行了可信計(jì)算模塊TPM的節(jié)點(diǎn); 可信節(jié)點(diǎn)管理器即?m位于安全邊界以外,不受CSP的控制,既可以是用戶運(yùn)行的軟件,也可以是用戶委托可信第三方運(yùn)行的軟件; TN向TNM注冊(cè),TNM維護(hù)一張注冊(cè)表,用以管理位于安全邊界以內(nèi)的所有節(jié)點(diǎn),并且通過增加/刪除表中的記錄管理動(dòng)態(tài)變化的可信節(jié)點(diǎn)集合,從而保證只有可信節(jié)點(diǎn)能夠參與到虛擬機(jī)部署和遷移過程中,并保證整個(gè)部署和遷移過程的安全性; 基于用戶與CSP簽訂的使用協(xié)議,用戶通過可信虛擬機(jī)監(jiān)控器對(duì)服務(wù)執(zhí)行環(huán)境進(jìn)行隱秘的測(cè)量;若執(zhí)行環(huán)境的完整性遭到破壞,則可信虛擬機(jī)監(jiān)控器向用戶給出報(bào)警; 所述的使用協(xié)議確定了 CSP提供服務(wù)的權(quán)限。
2.根據(jù)權(quán)利要求1所述的凈室云計(jì)算數(shù)據(jù)處理方法,其特征在于,違反所述的使用協(xié)議的情況包括窺視、篡改 和破壞服務(wù)執(zhí)行環(huán)境,也即用戶虛擬機(jī)。
3.根據(jù)權(quán)利要求2所述的凈室云計(jì)算數(shù)據(jù)處理方法,其特征在于,在可信節(jié)點(diǎn)的主板嵌入了可信平臺(tái)模塊芯片,以提供可信計(jì)算的信任根;TPM中有一系列平臺(tái)配置寄存器,PCR ;PCR是TPM的測(cè)量信任根程序,通過隱秘監(jiān)測(cè)外部設(shè)備與CPU輸入/輸出控制中心之間的輸入/輸入總線,獲取從外部設(shè)備到平臺(tái)的軟件執(zhí)行環(huán)境的測(cè)量結(jié)果,并且將其記錄在非永久性存儲(chǔ)器中;用戶通過遠(yuǎn)程認(rèn)證方式,即“挑戰(zhàn)-回復(fù)”機(jī)制獲取多個(gè)PCR中的測(cè)量結(jié)果,并且將接收到的測(cè)量列表與期望值比較,從而判斷VMM是否部署在嵌入了可信平臺(tái)模塊的云服務(wù)器上,并判斷VMM的啟動(dòng)過程是否安全; 遠(yuǎn)程認(rèn)證過程中,獲取VMM的真實(shí)上下文環(huán)境,包括VMM的數(shù)據(jù)和代碼,以及CPU的完整性狀態(tài);認(rèn)證結(jié)果被安全地傳送到遠(yuǎn)程認(rèn)證方,且不被篡改和造假; 在可信節(jié)點(diǎn)裝備了能夠遠(yuǎn)程觸發(fā)系統(tǒng)管理中斷的頻帶外信道,利用系統(tǒng)管理模式、智能平臺(tái)管理接口、以及底板管理控制器,用戶通過遠(yuǎn)程認(rèn)證的方式對(duì)VMM的運(yùn)行過程的動(dòng)態(tài)完整性進(jìn)行隱密的檢測(cè),且保證驗(yàn)證過程不被中斷或者篡改,獲得真實(shí)、可信、完整的測(cè)量結(jié)果。 TVMM的運(yùn)行時(shí)完整性的檢測(cè)由動(dòng)態(tài)管理器執(zhí)行;DM由兩個(gè)組件構(gòu)成:位于系統(tǒng)管理隨機(jī)存取存儲(chǔ)器中的系統(tǒng)管理中斷處理器、以及位于TVMM完整性測(cè)量代理;用戶利用基于IPMI和BMC頻帶外信道,以遠(yuǎn)程調(diào)用DM的方式實(shí)現(xiàn)對(duì)VMM運(yùn)行過程的動(dòng)態(tài)完整性進(jìn)行檢測(cè)。 在遠(yuǎn)程認(rèn)證過程中: ①實(shí)現(xiàn)隱秘的測(cè)量:首先由BMC產(chǎn)生的SMI可能被惡意的VMM作廢或者重新路由;如果SMI被撤銷,則遠(yuǎn)程實(shí)體將無法在有限時(shí)間內(nèi)收到測(cè)量結(jié)果,從而推斷SMI被VMM惡意撤銷;其次,VMM具有觸發(fā)SMI的能力,能夠通過偽測(cè)量調(diào)用來隱瞞原始SMI調(diào)用;為了區(qū)分通過頻帶外信道對(duì)SMI的調(diào)用與VMM的偽調(diào)用,采用一系列不能被軟件篡改的狀態(tài)寄存器來存儲(chǔ)SMI調(diào)用的類型,并采用通用輸入端口路由表來記錄每個(gè)通用輸入端口產(chǎn)生的中斷類型,保證只有與BMC相連的通用輸入端口才能觸發(fā)SMI ; ②保證DM組件的完整性:首先,需要實(shí)現(xiàn)SMI處理器的可信啟動(dòng),從BIOS中的核心可信測(cè)量根完整自我檢查以及可執(zhí)行代碼的檢查開始,直到啟動(dòng)過程中所有組件都被測(cè)量完畢;其次,需要保證SMI處理器在調(diào)用測(cè)量代理之前,先計(jì)算測(cè)量代理相關(guān)代碼的哈希值,以驗(yàn)證測(cè)量代理的完整性; ③保證驗(yàn)證過程不被中斷或者篡改:為了保證驗(yàn)證過程一旦開始就不能被中斷或者篡改,保證測(cè)量執(zhí)行過程中一旦發(fā)生了中斷或異常,測(cè)量控制流將直接轉(zhuǎn)到SMI處理器; ④保證測(cè)量環(huán)境信息的完整性:獲取VMM完整、真實(shí)的上下文環(huán)境,包括VMM的數(shù)據(jù)和代碼,當(dāng)被SMI中斷時(shí),采用回退技術(shù),通過注入一個(gè)導(dǎo)致虛擬機(jī)無條件退出的指令,強(qiáng)迫CPU內(nèi)核從用戶虛擬機(jī)轉(zhuǎn)移到VMM ;回退過程如下:保持所有寄存器中的值,以及下一條指令和地址;注入一個(gè)特權(quán)指令取代下一條指令;一旦一個(gè)事件被計(jì)數(shù),設(shè)置性能寄存器為溢出;修改高級(jí)可編程中斷控制器以至于性能寄存器溢出導(dǎo)致一個(gè)SMI中斷; 模型采用遠(yuǎn)程認(rèn)證方式保證結(jié)果的真實(shí)性:在系統(tǒng)啟動(dòng)過程中,為平臺(tái)產(chǎn)生一個(gè)公鑰/私鑰對(duì),在鎖住SMRAM之前,將私鑰存放在SMRAM中,并且將公鑰存放在TPM的靜態(tài)PCR中;為了獲得測(cè)量過程的結(jié)果,遠(yuǎn)程用戶發(fā)送一個(gè)請(qǐng)求和一個(gè)隨機(jī)數(shù)給驗(yàn)證代理;驗(yàn)證代理將獲得基于隨機(jī)數(shù)而產(chǎn)生兩個(gè)不同的簽名值:第一個(gè)是靜態(tài)認(rèn)證輸出,由TPM私鑰簽名;第二個(gè)是測(cè)量的結(jié)果,由SMI處理器的私鑰簽名;通過比較簽名則可以判斷結(jié)果的真實(shí)性。
4.根據(jù)權(quán)利要求2所述的凈室云計(jì)算數(shù)據(jù)處理方法,其特征在于, TNM維護(hù)一個(gè)可信節(jié)點(diǎn)集合列表,記錄位于安全邊界以內(nèi)的節(jié)點(diǎn)、該節(jié)點(diǎn)的公共背書密鑰、以及期望的測(cè)量列表,并公布自己的背書密鑰公鑰、期望的測(cè)量列表、以及可信密鑰公鑰;?m與可信節(jié) 點(diǎn)之間通過遠(yuǎn)程認(rèn)證驗(yàn)證測(cè)量列表的完整性來相互驗(yàn)證平臺(tái)的可信性;在遷移過程中,源節(jié)點(diǎn)請(qǐng)求TNM驗(yàn)證目的節(jié)點(diǎn)的可信性;如果源節(jié)點(diǎn)與目的節(jié)點(diǎn)都位于可信節(jié)點(diǎn)集合中,TNM允許兩個(gè)節(jié)點(diǎn)直接進(jìn)行通信;源節(jié)點(diǎn)與目的節(jié)點(diǎn)之間協(xié)商一個(gè)會(huì)話密鑰,加密虛擬機(jī)遷移過程中的相關(guān)信息;為了保證虛擬機(jī)遷移過程的完整性和安全性,源節(jié)點(diǎn)計(jì)算虛擬機(jī)身份的哈希值,并且將虛擬機(jī)身份以及哈希值加密后傳遞給目的節(jié)點(diǎn); 具體可信虛擬機(jī)遷移過程如下: DNs請(qǐng)求TW驗(yàn)證Nd的可信性:NS首先選擇一個(gè)向TW發(fā)起的挑戰(zhàn),然后利用其可信密鑰的私鑰ZX=加密挑戰(zhàn)和Nd的身份仍^,最后將產(chǎn)生的密文以及/1)%用--Μ的可信密鑰的公鑰加密,并且將產(chǎn)生的結(jié)果發(fā)送給TNM ; 2)TW驗(yàn)證源節(jié)點(diǎn)與目標(biāo)節(jié)點(diǎn)的可信性:首先,TW利用其可信密鑰的私鑰解密消息,并且驗(yàn)證Ns的身份是否位于可信節(jié)點(diǎn)集合中;如果Ns是可信節(jié)點(diǎn),則利用Ns的可信密鑰的公鑰解密仍~和挑戰(zhàn),并且驗(yàn)證Nd的身份是否位于可信節(jié)點(diǎn)集合中;如果Nd是可信節(jié)點(diǎn),則利用Ns的可信密鑰的公鑰if加密挑戰(zhàn)以及Nd的可信密鑰的公鑰;最后,用其可信密鑰的私鑰再次加密生成的密文,并且將結(jié)果返回給Ns ; 3)Ns與Nd之間協(xié)商一個(gè)會(huì)話密鑰SK,以保證VM遷移過程中的狀態(tài)機(jī)密性,Ns解密消息之后可獲得Nd的可信密鑰的公鑰首先選擇一個(gè)會(huì)話密鑰SK,并且向Nd發(fā)起一個(gè)挑戰(zhàn)¥ ;然后,利用其可信密鑰的私鑰Hg加密;最后,利用Nd的可信密鑰的公鑰加密自己的身份以及產(chǎn)生的密文,并且將結(jié)果發(fā)送給Nd ; 4)在接受會(huì)話密鑰之前,Nd先驗(yàn)證Ns是否可信;Nd先利用其可信密鑰的私鑰解密出Ns的身份;然后,Nd向TNM發(fā)起一個(gè)挑,并且利用其可信密鑰的私鑰加密挑戰(zhàn)和--,;最后利用TNM的可信密鑰的公鑰加密產(chǎn)生的密文和W /,并且將結(jié)果發(fā)送給 TNM ; 5)--Μ解密出Ns和Nd的身份,驗(yàn)證兩者是否是可信節(jié)點(diǎn);如果是,則先利用Nd的可信密鑰的私鑰加密挑戰(zhàn)和Ns的可信密鑰的公鑰I,最后,用其可信密鑰私鑰JXf加密生成的密文,并且將產(chǎn)生的結(jié)果返回給Nd ; 6)如果相互認(rèn)證完成,Nd回復(fù)接受會(huì)話密鑰SK,并且利用SK加密挑戰(zhàn),發(fā)送給Ns ; 7)為了保證虛擬機(jī)遷移過程的完整性和機(jī)密性,Ns計(jì)算虛擬機(jī)身份的哈希值,并且將虛擬機(jī)身份以及哈希值加密后傳遞給Nd。
5.根據(jù)權(quán)利要求1-4任一項(xiàng)所述的凈室云計(jì)算數(shù)據(jù)處理方法,其特征在于, TVMM運(yùn)行兩種類型的虛擬機(jī):用戶虛擬機(jī)和管理虛擬機(jī);管理虛擬機(jī)負(fù)責(zé)配置用戶虛擬機(jī)的存儲(chǔ)空間、內(nèi)存,決定采用的策略,為用戶虛擬機(jī)提供高層次的接口 ;TVMM為管理虛擬機(jī)提供一個(gè)基礎(chǔ)接口來執(zhí)行這些任務(wù),并發(fā)起完整性測(cè)量代理對(duì)用戶虛擬機(jī)的完整性進(jìn)行驗(yàn)證;完整性測(cè)量代理截獲所有進(jìn)程,包括監(jiān)控服務(wù)請(qǐng)求、系統(tǒng)調(diào)用和硬件中斷;系統(tǒng)調(diào)用在轉(zhuǎn)交到用戶操作系統(tǒng)內(nèi)核之前,會(huì)先陷入到TVMM ;此時(shí),完整性測(cè)量代理截獲用戶虛擬機(jī)發(fā)起的所有系統(tǒng)調(diào)用,檢測(cè)截獲的上下文環(huán)境和輸入?yún)?shù); 凈室態(tài)實(shí)時(shí)監(jiān)控涉及三個(gè)過程:主動(dòng)監(jiān)控、獲取語義感知的完整性測(cè)量結(jié)果、以及保護(hù)用戶內(nèi)存; I)主動(dòng)監(jiān)控使得可信VMM能夠保持用戶虛擬機(jī)內(nèi)存布局的最新視圖;一旦內(nèi)存布局改變,即當(dāng)用戶虛擬機(jī)創(chuàng)建、終止或者修改用戶進(jìn)程或內(nèi)核模塊時(shí),TVMM都會(huì)截獲相關(guān)事件,并且重新發(fā)起完整性檢查;包括:①截獲關(guān)鍵用戶事件:為了檢測(cè)用戶虛擬機(jī)發(fā)起事件的上下文環(huán)境和輸入,事件一旦被陷入到TVMM,完整性測(cè)量代理立刻檢查用戶虛擬機(jī)的寄存器、軟件棧、軟件堆;檢測(cè)的信息包括:事件類型、事件參數(shù)、運(yùn)行程序的指令和棧指針;一旦內(nèi)核完成事件處理,完整性測(cè)量代理將迫使其再次陷入TVMM ;對(duì)于中斷和異常,TVMM將存儲(chǔ)在內(nèi)核中的事件返回地址變成一個(gè)非法地址;一旦事件返回非法地址,將導(dǎo)致陷入TVMM的保護(hù)故障。②截獲系統(tǒng)調(diào)用:采用多返回地址情況下的系統(tǒng)調(diào)用攔截技術(shù)和內(nèi)核重入情況下的系統(tǒng)調(diào)用攔截迫使系統(tǒng)調(diào)用在傳遞到系統(tǒng)內(nèi)核之前被TVMM截獲,并且使得TVMM截獲所有用戶虛擬機(jī)發(fā)送的系統(tǒng)調(diào)用,以及調(diào)用的上下文環(huán)境和輸入?yún)?shù),從而實(shí)現(xiàn)完全的主動(dòng)監(jiān)控; 完整性測(cè)量代理攔截系統(tǒng)調(diào)用的過程:①進(jìn)程a發(fā)起一個(gè)系統(tǒng)調(diào)用;完整性測(cè)量代理保存所需數(shù)據(jù),并且設(shè)置調(diào)試寄存器;②內(nèi)核暫停正在運(yùn)行的線程,調(diào)用進(jìn)程b ;在上下文轉(zhuǎn)換發(fā)生之前,執(zhí)行被陷入到TVMM,完整性測(cè)量代理復(fù)位調(diào)試寄存器;③進(jìn)程b發(fā)起一個(gè)系統(tǒng)調(diào)用;完整性測(cè)量代理在列表上創(chuàng)建新的一項(xiàng),并且利用新值來設(shè)置調(diào)試寄存器;④內(nèi)核完成進(jìn)程b的系統(tǒng)調(diào)用,一個(gè)調(diào)試器異常將指令陷入TVMM。在TVMM返回結(jié)果給調(diào)用進(jìn)程之前,完整性測(cè)量代理完成對(duì)其進(jìn)行檢測(cè)的過程內(nèi)核繼續(xù)進(jìn)程a的調(diào)用;完整性測(cè)量代理獲知上下文轉(zhuǎn)換,并且恢復(fù)保持的調(diào)試寄存器的值;⑥調(diào)用完成,完整性測(cè)量代理開始測(cè)量作為調(diào)用結(jié)果的存儲(chǔ)區(qū)域加載頁面之后,一個(gè)保護(hù)異常發(fā)生;這個(gè)過程一直持續(xù)到所有頁面都被加載;⑧完整性測(cè)量代理測(cè)量?jī)?nèi)存區(qū)域,恢復(fù)原始的內(nèi)核輸出,并且返回給用戶進(jìn)程; 2)獲取完整并且語義感知的測(cè)量結(jié)果要求操作系統(tǒng)內(nèi)核在運(yùn)行程序之前加載完整的程序,并且由可信VMM立刻驗(yàn)證整個(gè)程序的完整性;攔截相關(guān)系統(tǒng)調(diào)用,并強(qiáng)迫內(nèi)核在運(yùn)行程序之前加載完整程序,以保證能夠獲取完整的測(cè)量信息;當(dāng)程序代碼和初始數(shù)據(jù)分塊加載到內(nèi)存時(shí),要求完整性測(cè)量代理立刻計(jì)算整個(gè)程序的連續(xù)哈希函數(shù)值來確定其完整性; 3)用戶內(nèi)存保護(hù):為了保證只執(zhí)行被測(cè)量過的用戶程序,完整測(cè)量代理利用NX-比特頁面保護(hù)標(biāo)識(shí)技術(shù),使得一旦從被具有保護(hù)標(biāo)志的頁面執(zhí)行指令,將會(huì)造成一個(gè)陷入到TVMM的異常;TVMM陷入所有用戶頁面表的更新,測(cè)試其是否匹配任何已完成測(cè)量的程序關(guān)聯(lián)的可執(zhí)行頁面的地址,從而驗(yàn)證從用戶內(nèi)核獲取的信息的完整性;為了避免所有已經(jīng)測(cè)量過的程序被修改,完整性測(cè)量代理將所有測(cè)量過的可執(zhí)行頁面都標(biāo)識(shí)為不可寫;一旦攻擊者試圖修改已測(cè)量頁面,一個(gè)異常將產(chǎn)生,并且將進(jìn)程陷入到TVMM ;另外,限制一個(gè)頁面的執(zhí)行操作與寫操作不能同時(shí)發(fā)生。
6.一種凈室 云計(jì)算數(shù)據(jù)處理系統(tǒng),其特征在于,由可信虛擬機(jī)監(jiān)控器TVMM、可信節(jié)點(diǎn)管理器TW以及可信節(jié)點(diǎn)TN構(gòu)成; 其中,可信虛擬機(jī)監(jiān)控器即TVMM是一個(gè)位于硬件平臺(tái)與用戶虛擬機(jī)之間的軟件,且位于安全邊界以內(nèi),負(fù)責(zé)監(jiān)控虛擬機(jī)的運(yùn)行; 可信節(jié)點(diǎn)即TN為位于安全邊界以內(nèi)、運(yùn)行了可信計(jì)算模塊TPM的節(jié)點(diǎn); 可信節(jié)點(diǎn)管理器即?m位于安全邊界以外,不受CSP的控制,既可以是用戶運(yùn)行的軟件,也可以是用戶委托可信第三方運(yùn)行的軟件; TN向TNM注冊(cè),TNM維護(hù)一張注冊(cè)表,用以管理位于安全邊界以內(nèi)的所有節(jié)點(diǎn),并且通過增加/刪除表中的記錄管理動(dòng)態(tài)變化的可信節(jié)點(diǎn)集合,從而保證只有可信節(jié)點(diǎn)能夠參與到虛擬機(jī)部署和遷移過程中,并保證整個(gè)部署和遷移過程的安全性; 基于用戶與CSP簽訂的使用協(xié)議,用戶通過可信虛擬機(jī)監(jiān)控器對(duì)服務(wù)執(zhí)行環(huán)境進(jìn)行隱秘的測(cè)量;若執(zhí)行環(huán)境的完整性遭到破壞,則可信虛擬機(jī)監(jiān)控器向用戶給出報(bào)警;所述的使用協(xié)議確定了 CSP提供服務(wù)的權(quán)限; 所述的凈室云計(jì)算數(shù)據(jù)處理系統(tǒng)依據(jù)權(quán)利要求5所述的凈室云計(jì)算數(shù)據(jù)處理方法實(shí)施數(shù)據(jù)處理。
【文檔編號(hào)】G06F9/48GK103841198SQ201410083476
【公開日】2014年6月4日 申請(qǐng)日期:2014年3月7日 優(yōu)先權(quán)日:2014年3月7日
【發(fā)明者】王國(guó)軍, 劉琴, 劉湘勇, 齊芳 申請(qǐng)人:中南大學(xué)
網(wǎng)友詢問留言 已有0條留言
  • 還沒有人留言評(píng)論。精彩留言會(huì)獲得點(diǎn)贊!
1