本發(fā)明專利技術(shù)提供了一種利用可信平臺(tái)模塊完善系統(tǒng)引導(dǎo)過程的方法及其系統(tǒng),將啟動(dòng)操作系統(tǒng)內(nèi)核的引導(dǎo)過程分為幾個(gè)相對(duì)獨(dú)立的層,以可信平臺(tái)模塊(TPM)為信任根,下層度量驗(yàn)證上層完整性,傳遞系統(tǒng)的運(yùn)行控制權(quán),層層迭代,直至控制權(quán)傳予操作系統(tǒng)內(nèi)核,構(gòu)建一條完善的信任鏈,同時(shí)完整性驗(yàn)證失敗時(shí)給出相應(yīng)的恢復(fù)方案,在進(jìn)入操作系統(tǒng)之前將引導(dǎo)日志記錄在文件系統(tǒng)中,為操作系統(tǒng)所用。本發(fā)明專利技術(shù)綜合考慮了完整性驗(yàn)證、驗(yàn)證失敗恢復(fù)以及啟動(dòng)日志與操作系統(tǒng)交互等情況,形成一個(gè)完整的引導(dǎo)體系,由此引導(dǎo)進(jìn)入的操作系統(tǒng),可被認(rèn)為其最初環(huán)境是安全可信的,同時(shí)該操作系統(tǒng)還可以利用引導(dǎo)過程的日志文件向其他平臺(tái)證明自身啟動(dòng)環(huán)境的安全性。
【技術(shù)實(shí)現(xiàn)步驟摘要】
本專利技術(shù)主要涉及可信計(jì)算領(lǐng)域內(nèi)的系統(tǒng)引導(dǎo),更確切地是涉及一種利用安全芯片即可信平臺(tái)模塊完善系統(tǒng)引導(dǎo)過程的方法,以及一種可信引導(dǎo)系統(tǒng)。
技術(shù)介紹
隨著計(jì)算機(jī)使用的普及,計(jì)算機(jī)之間通信越來(lái)越頻繁,計(jì)算機(jī)安全受到了越來(lái)越多的關(guān)注。而要保證計(jì)算機(jī)系統(tǒng)的安全,僅僅從系統(tǒng)本身的角度出發(fā)來(lái)考慮是遠(yuǎn)遠(yuǎn)不夠的。在計(jì)算機(jī)系統(tǒng)中,啟動(dòng)過程是系統(tǒng)一切行為的基礎(chǔ)。啟動(dòng)過程不但加載操作系統(tǒng)、負(fù)責(zé)初始化計(jì)算機(jī)系統(tǒng)的物理設(shè)備及操作系統(tǒng)本身狀態(tài),還啟動(dòng)系統(tǒng)維持正常運(yùn)行所必要的可信進(jìn)程及相關(guān)的服務(wù)程序。由于啟動(dòng)過程任何錯(cuò)誤和疏漏都可能使操作系統(tǒng)進(jìn)入不可預(yù)測(cè)的危險(xiǎn)狀態(tài)。所以如果計(jì)算機(jī)上電到系統(tǒng)完全啟動(dòng)的這個(gè)過程都是不可信不安全的,那么在這基礎(chǔ)上談?wù)撓到y(tǒng)安全是毫無(wú)意義的。最近提出的可信計(jì)算概念,在可信計(jì)算組織、Microsoft、Intel等研究機(jī)構(gòu)的不斷努力推動(dòng)下,其發(fā)展極為迅速,成為學(xué)術(shù)界和工業(yè)界的熱點(diǎn)。可信計(jì)算主要就是利用一個(gè)可信平臺(tái)模塊(TPM),也就是嵌入在主板上的一個(gè)獨(dú)立芯片,來(lái)參與計(jì)算機(jī)的計(jì)算過程并提高計(jì)算的安全性。可信計(jì)算組織TCG的成立就是為了規(guī)范基于硬件的可信計(jì)算以及安全技術(shù)方面的標(biāo)準(zhǔn),該組織開發(fā)了一系列可信計(jì)算技術(shù)方面的技術(shù)規(guī)范,解決了系統(tǒng)可信根的問題,提出了可信傳遞的概念,闡述了系統(tǒng)從加電開始應(yīng)該如何展開安全度量,并將系統(tǒng)運(yùn)行控制權(quán)轉(zhuǎn)移到操作系統(tǒng)直至應(yīng)用程序的基本原則和過程。如何保證引導(dǎo)系統(tǒng)的過程是可信的,以及如何應(yīng)用可信引導(dǎo)過程來(lái)為計(jì)算機(jī)安全服務(wù),是我們討論計(jì)算機(jī)安全的最基本問題。結(jié)合可信計(jì)算的基本框架,實(shí)現(xiàn)利用TPM芯片驗(yàn)證整個(gè)引導(dǎo)過程的完整性,以確保引導(dǎo)系統(tǒng)的過程是可信的。而在引導(dǎo)過程的完整性驗(yàn)證失敗時(shí),采取怎樣的挽救措施,以及引導(dǎo)過程的完整性驗(yàn)證與系統(tǒng)安全之間發(fā)生如何的交互,都是可信引導(dǎo)應(yīng)該考慮的范疇。AEGIS系統(tǒng)是基于一嵌入式的安全模塊,將系統(tǒng)引導(dǎo)分為多個(gè)層次,在引導(dǎo)過程的每一層之間轉(zhuǎn)移的時(shí)候都進(jìn)行完整性驗(yàn)證,轉(zhuǎn)移間完整性驗(yàn)證失敗時(shí)涉及到了一個(gè)恢復(fù)過程。波鴻大學(xué)的Trusted Grub和IBM的TCG Grub都是利用系統(tǒng)的TPM芯片,遵循了TCG規(guī)范,但只提供了簡(jiǎn)單的引導(dǎo)過程的度量。其中,波鴻大學(xué)的Trusted Grub項(xiàng)目介紹及其實(shí)現(xiàn)成果可參考http//www.prosec.rub.de/trusted grub details.html;IBM的TCGGrub項(xiàng)目介紹可參考http//trousers.sourceforge.net/grub.html,同時(shí)ReinerSailer,Xiaolan Zhang,Trent Jaeger和Leendert Van Doorn發(fā)表在Proceedings of the13thUSENIX Security Symposium,2004上的名為“Design and Implementation of aTCG-based Integrity Measurement Architecture”的研究報(bào)告對(duì)其度量過程進(jìn)行了闡述。目前還沒有一種完善的引導(dǎo)系統(tǒng)的可信的方法。
技術(shù)實(shí)現(xiàn)思路
針對(duì)上述問題,本專利技術(shù)的一個(gè)目的在于提供一種可信引導(dǎo)方法,即將啟動(dòng)操作系統(tǒng)內(nèi)核的引導(dǎo)過程分為幾個(gè)相對(duì)獨(dú)立的層,以可信平臺(tái)模塊(TPM)為信任根,下層度量驗(yàn)證上層完整性,傳遞系統(tǒng)的運(yùn)行控制權(quán),層層迭代,直至控制權(quán)傳予操作系統(tǒng)內(nèi)核,構(gòu)建一條完善的信任鏈,同時(shí)完整性驗(yàn)證失敗時(shí)給出了相應(yīng)的恢復(fù)方案保證引導(dǎo)過程的順利執(zhí)行。此外,引導(dǎo)過程中的度量操作等以日志文件的形式記錄下來(lái),可以被操作系統(tǒng)所用實(shí)施進(jìn)一步的安全操作。本專利技術(shù)的另一個(gè)目的在于提供一種相應(yīng)的安全啟動(dòng)操作系統(tǒng)的完善的引導(dǎo)系統(tǒng)。該引導(dǎo)系統(tǒng)囊括了完全進(jìn)入系統(tǒng)內(nèi)核之前的所有引導(dǎo)過程,主要是對(duì)傳統(tǒng)的系統(tǒng)引導(dǎo)管理器的一種安全上的改進(jìn)。計(jì)算機(jī)上電啟動(dòng)之后,就會(huì)運(yùn)行該引導(dǎo)系統(tǒng),引導(dǎo)系統(tǒng)的正確執(zhí)行保證安全地啟動(dòng)操作系統(tǒng)內(nèi)核(kernel),即保證啟動(dòng)的操作系統(tǒng)內(nèi)核是安全可信的。本專利技術(shù)的可信引導(dǎo)方法,其步驟包括1)計(jì)算機(jī)上電啟動(dòng)后,可信平臺(tái)模塊對(duì)BIOS代碼進(jìn)行度量,將度量值存儲(chǔ)在可信平臺(tái)模塊的平臺(tái)配置寄存器(PCR)中,BIOS擁有系統(tǒng)的運(yùn)行控制權(quán);2)BIOS借助可信平臺(tái)模塊對(duì)系統(tǒng)引導(dǎo)管理器的代碼進(jìn)行度量,并與預(yù)存的相應(yīng)的標(biāo)準(zhǔn)度量值進(jìn)行比較驗(yàn)證,驗(yàn)證正確后將度量值擴(kuò)展存入平臺(tái)配置寄存器中,同時(shí)BIOS將運(yùn)行控制權(quán)轉(zhuǎn)交給系統(tǒng)引導(dǎo)管理器,否則將存儲(chǔ)在安全設(shè)備上的引導(dǎo)程序備份文件中相應(yīng)的地址信息拷貝過來(lái)覆蓋失敗組件的內(nèi)存空間,重新進(jìn)行度量并驗(yàn)證;3)系統(tǒng)引導(dǎo)管理器借助可信平臺(tái)模塊對(duì)系統(tǒng)中關(guān)鍵文件進(jìn)行度量,并與預(yù)存的相應(yīng)的標(biāo)準(zhǔn)度量值進(jìn)行比較驗(yàn)證,驗(yàn)證正確后將度量值擴(kuò)展存入平臺(tái)配置寄存器中,否則將存儲(chǔ)在安全設(shè)備上的引導(dǎo)程序備份文件中相應(yīng)的地址信息拷貝過來(lái)覆蓋失敗組件的內(nèi)存空間,重新進(jìn)行度量并驗(yàn)證;4)系統(tǒng)引導(dǎo)管理器借助可信平臺(tái)模塊對(duì)操作系統(tǒng)內(nèi)核文件進(jìn)行度量,并與預(yù)存的相應(yīng)的標(biāo)準(zhǔn)度量值進(jìn)行比較驗(yàn)證,驗(yàn)證正確后將度量值擴(kuò)展存入平臺(tái)配置寄存器中,否則由系統(tǒng)引導(dǎo)管理器通過網(wǎng)絡(luò)啟動(dòng)一安全操作系統(tǒng),對(duì)所述操作系統(tǒng)進(jìn)行恢復(fù);5)系統(tǒng)引導(dǎo)管理器在文件系統(tǒng)中記錄下整個(gè)引導(dǎo)度量日志,同時(shí)將運(yùn)行控制權(quán)轉(zhuǎn)交給操作系統(tǒng)。上述步驟3)中系統(tǒng)管理器并不轉(zhuǎn)移文件運(yùn)行控制權(quán),關(guān)鍵文件不屬于度量層中的一層,只是一個(gè)補(bǔ)充,做為安全啟動(dòng)系統(tǒng)的一個(gè)保障。在步驟3)中系統(tǒng)引導(dǎo)管理器借助可信平臺(tái)模塊對(duì)系統(tǒng)關(guān)鍵文件度量驗(yàn)證后,還可以擴(kuò)展相關(guān)命令,對(duì)用戶選定的文件或代碼進(jìn)行度量,以及查詢平臺(tái)配置存儲(chǔ)器的狀態(tài)。當(dāng)計(jì)算機(jī)系統(tǒng)包括不同的操作系統(tǒng)時(shí),上述步驟4)分別對(duì)不同的系統(tǒng)內(nèi)核文件進(jìn)行度量驗(yàn)證,并將度量值分別擴(kuò)展存入平臺(tái)配置寄存器中。在引導(dǎo)過程中,每進(jìn)行一次度量,擴(kuò)展一次平臺(tái)配置寄存器,均通過日志的形式記錄在可信平臺(tái)模塊中。上述步驟5)是在引導(dǎo)啟動(dòng)過程中且在進(jìn)入操作系統(tǒng)之前將引導(dǎo)日志記錄在文件系統(tǒng)中,為操作系統(tǒng)所用。可通過擴(kuò)展命令對(duì)系統(tǒng)日志進(jìn)行查詢。本專利技術(shù)的方法在計(jì)算機(jī)上電開啟后,將整個(gè)引導(dǎo)過程由下往上分為四個(gè)層次,即TPM、BIOS、系統(tǒng)引導(dǎo)管理器和操作系統(tǒng)內(nèi)核。下層在將運(yùn)行控制權(quán)轉(zhuǎn)交給上層前,必須先對(duì)上層進(jìn)行度量,這樣層層遞歸下來(lái),最終構(gòu)建成信任鏈,達(dá)到最后安全啟動(dòng)系統(tǒng)內(nèi)核的目的。當(dāng)度量驗(yàn)證失敗,也就是完整性值不正確的時(shí)候,可以從信任源處恢復(fù)失敗的組件,確保啟動(dòng)進(jìn)入的操作系統(tǒng)是安全可信的。在度量過程中每步度量結(jié)果都會(huì)有日志記錄保存,并且其結(jié)果會(huì)傳遞給操作系統(tǒng),為操作系統(tǒng)進(jìn)行其他安全操作提供可以驗(yàn)證的基礎(chǔ)。該方法中涉及的操作內(nèi)容主要有三個(gè)部分,即度量、恢復(fù)和啟動(dòng)日志。在度量操作部分中,本專利技術(shù)主要利用了計(jì)算機(jī)上的可信平臺(tái)模塊TPM的功能。在一部分代碼中實(shí)現(xiàn)對(duì)另一部分代碼的度量,實(shí)際上就是在這一部分代碼中利用可信平臺(tái)模塊的安全引擎對(duì)另一部分代碼進(jìn)行hash操作,得到的hash值也就是本專利技術(shù)所需要的完整性值。只要該完整性值是正確的,則認(rèn)為系統(tǒng)運(yùn)行到目前這個(gè)階段是安全可信的,是沒有被篡改的。系統(tǒng)每往前運(yùn)行一步,對(duì)代碼計(jì)算得到的hash值都會(huì)進(jìn)行相應(yīng)的存儲(chǔ),其存儲(chǔ)位置就是可信平臺(tái)模塊中的平臺(tái)配置寄存器PCR。TCG規(guī)范已經(jīng)定義好了可信平臺(tái)模塊中各個(gè)PCR與度量代碼的對(duì)應(yīng)關(guān)系,只需要將其度量值與相應(yīng)P本文檔來(lái)自技高網(wǎng)...
【技術(shù)保護(hù)點(diǎn)】
一種可信引導(dǎo)方法,包括如下步驟:1)計(jì)算機(jī)上電啟動(dòng)后,可信平臺(tái)模塊對(duì)BIOS代碼進(jìn)行度量,將度量值存儲(chǔ)在可信平臺(tái)模塊的平臺(tái)配置寄存器中,BIOS擁有系統(tǒng)的運(yùn)行控制權(quán);2)BIOS借助可信平臺(tái)模塊對(duì)系統(tǒng)引導(dǎo)管理器的代碼進(jìn)行度量,并與預(yù)存的相應(yīng)的標(biāo)準(zhǔn)度量值進(jìn)行比較驗(yàn)證,驗(yàn)證正確后將度量值擴(kuò)展存入平臺(tái)配置寄存器中,同時(shí)BIOS將運(yùn)行控制權(quán)轉(zhuǎn)交給系統(tǒng)引導(dǎo)管理器,否則將存儲(chǔ)在安全設(shè)備上的引導(dǎo)程序備份文件中相應(yīng)的地址信息拷貝過來(lái)覆蓋失敗組件的內(nèi)存空間,重新進(jìn)行度量并驗(yàn)證;3)系統(tǒng)引導(dǎo)管理器借助可信平臺(tái)模塊對(duì)系統(tǒng)中關(guān)鍵文件進(jìn)行度量,并與預(yù)存的相應(yīng)的標(biāo)準(zhǔn)度量值進(jìn)行比較驗(yàn)證,驗(yàn)證正確后將度量值擴(kuò)展存入平臺(tái)配置寄存器中,否則將存儲(chǔ)在安全設(shè)備上的引導(dǎo)程序備份文件中相應(yīng)的地址信息拷貝過來(lái)覆蓋失敗組件的內(nèi)存空間,重新進(jìn)行度量并驗(yàn)證;4)系統(tǒng)引導(dǎo)管理器借助可信平臺(tái)模塊對(duì)操作系統(tǒng)內(nèi)核文件進(jìn)行度量,并與預(yù)存的相應(yīng)的標(biāo)準(zhǔn)度量值進(jìn)行比較驗(yàn)證,驗(yàn)證正確后將度量值擴(kuò)展存入平臺(tái)配置寄存器中,否則由系統(tǒng)引導(dǎo)管理器通過網(wǎng)絡(luò)啟動(dòng)一安全操作系統(tǒng),對(duì)所述操作系統(tǒng)進(jìn)行恢復(fù);5)系統(tǒng)引導(dǎo)管理器在文件系統(tǒng)中記錄下整個(gè)引導(dǎo)度量日志,同時(shí)將運(yùn)行控制權(quán)轉(zhuǎn)交給操作系統(tǒng)。...
【技術(shù)特征摘要】
【專利技術(shù)屬性】
技術(shù)研發(fā)人員:馮登國(guó),徐震,張立武,秦宇,汪丹,
申請(qǐng)(專利權(quán))人:中國(guó)科學(xué)院軟件研究所,
類型:發(fā)明
國(guó)別省市:11[中國(guó)|北京]
還沒有人留言評(píng)論。發(fā)表了對(duì)其他瀏覽者有用的留言會(huì)獲得科技券。