專利名稱:一種可信計(jì)算系統(tǒng)的制作方法
技術(shù)領(lǐng)域:
本發(fā)明涉及信息安全領(lǐng)域,尤其涉及一種可信計(jì)算系統(tǒng)硬件平臺(tái)實(shí)現(xiàn)及對(duì)硬件平臺(tái)安全可信保護(hù)的方法。
背景技術(shù):
近些年來(lái)可信計(jì)算已經(jīng)成為信息安全領(lǐng)域一個(gè)新的發(fā)展方向,越來(lái)越多的引起相關(guān)研究單位的重視??尚庞?jì)算系統(tǒng)的主要以可信安全芯片為基礎(chǔ),建立一個(gè)用戶可以預(yù)期的安全計(jì)算環(huán)境,保證計(jì)算軟硬件資源會(huì)被惡意篡改。
可信計(jì)算組織(Trusted Computing Group,TCG)最早提出并指定了可信計(jì)算行業(yè)標(biāo)準(zhǔn)。通過(guò)在主板上引入安全芯片來(lái)逐級(jí)建立信任鏈,并保證信任鏈的安全,最后在計(jì)算機(jī)硬件系統(tǒng)上構(gòu)建一個(gè)安全可信的工作環(huán)境。
TCG組織已經(jīng)相繼推出了兩個(gè)版本的可信計(jì)算規(guī)范,其中規(guī)定了可信安全芯片的硬件組成結(jié)構(gòu)、芯片內(nèi)部功能、芯片指令接口、芯片硬件接口、芯片鏈接到主板的方式、芯片的使用方式等相關(guān)內(nèi)容。
現(xiàn)有的可信計(jì)算系統(tǒng)平臺(tái)中,TPM、主板外圍設(shè)備和BOOT ROM被安置在系統(tǒng)設(shè)備控制器的總線上,作為從設(shè)備,由該系統(tǒng)設(shè)備控制器操作。因此,TPM無(wú)法在CPU執(zhí)行BIOS代碼后,通過(guò)系統(tǒng)設(shè)備控制器對(duì)主板外圍設(shè)備和BOOT ROM進(jìn)行保護(hù),也就無(wú)法對(duì)該系統(tǒng)設(shè)備控制器芯片自身的啟動(dòng)及該啟動(dòng)操作之前的動(dòng)作提供可信的計(jì)算環(huán)境;并且,TCG規(guī)范中只提供了操作系統(tǒng)層以下的可信傳遞流程,但并未給出信任傳遞的具體實(shí)現(xiàn)方法,以及對(duì)系統(tǒng)硬件平臺(tái)的安全要求和具體實(shí)現(xiàn)方法,且無(wú)法為OS層以上的計(jì)算提供可信的計(jì)算環(huán)境。
此前,目前有兩種保護(hù)BIOS代碼的方法,一是將BIOS啟動(dòng)代碼放入到TPM模塊內(nèi)部、二是將BIOS代碼固化到ROM只讀存儲(chǔ)體中。方法一好處是保證了BIOS代碼和系統(tǒng)平臺(tái)的安全。缺點(diǎn)沒(méi)有考慮到實(shí)際上BIOS代碼的容量大,做到TPM芯片內(nèi)部費(fèi)用無(wú)法接受;方法二好處是保證了BIOS代碼和系統(tǒng)平臺(tái)的安全。缺點(diǎn)沒(méi)有考慮到實(shí)際上BIOS代碼的實(shí)時(shí)更新的需要。
發(fā)明內(nèi)容
本發(fā)明的目的在于提供一種可信計(jì)算系統(tǒng)硬件平臺(tái)實(shí)現(xiàn)及對(duì)主板外圍設(shè)備的訪問(wèn)控制和對(duì)BIOS代碼的安全保護(hù)策略。
為達(dá)到上述目的,本發(fā)明的技術(shù)方案具體是這樣實(shí)現(xiàn)的 一種可信計(jì)算系統(tǒng),包括主板及主板外圍設(shè)備,主板包括可信安全模塊、中央處理器CPU、主板南橋設(shè)備控制器(認(rèn)為在AMD構(gòu)架下指的是設(shè)備控制器),BOOT ROM; 所述可信安全模塊用于,不可篡改地存儲(chǔ)核心可信度量根、可信存儲(chǔ)根、可信報(bào)告根,對(duì)外圍設(shè)備和BOOT ROM關(guān)鍵代碼進(jìn)行完整性度量與讀寫保護(hù),對(duì)安全控制器和外圍設(shè)備的控制功能; 所述CPU用于,接收到可信安全模塊對(duì)BOOT ROM關(guān)鍵代碼度量完成的指示后,加載并執(zhí)行BOOT ROM中的初始化和啟動(dòng)代碼; 主板外圍設(shè)備用于,接受安全控制器和可信安全模塊的權(quán)限訪問(wèn)控制,針對(duì)不同的用戶提供不同的服務(wù),同時(shí)還用于接受安全控制器和可信安全模塊的特殊病毒特征檢查、實(shí)時(shí)通訊數(shù)據(jù)監(jiān)聽(tīng)和完整性特征值采樣; 所述BOOT ROM用于,存儲(chǔ)可信計(jì)算系統(tǒng)的初始化和啟動(dòng)代碼; 其特征在于設(shè)置安全控制器,該安全控制器通過(guò)通訊線連接到系統(tǒng)主板南橋控制器上,再通過(guò)通信線將BOOT ROM連接到安全控制器上;該安全控制器還分別通過(guò)通訊線連接可信安全模塊以及主板外圍設(shè)備; 所述安全控制器包括總線地址映射單元、安全隔離單元、策略執(zhí)行單元、固化策略單元和動(dòng)態(tài)策略單元組成; 所述安全控制器中的總線地址映射單元,用于完成南橋設(shè)備地址總線和主板外圍設(shè)備總線之間的地址映射; 所述安全控制器中的安全隔離單元,用于隔離計(jì)算機(jī)南橋總線和主板外圍設(shè)備總線,同時(shí)還具有對(duì)總線上數(shù)據(jù)的實(shí)時(shí)采樣功能;安全隔離單元和總線地址映射單元之間通過(guò)兩組總線連接,分別用于連接計(jì)算機(jī)的南橋總線端口和用于連接主板上各外圍設(shè)備的設(shè)備總線端口; 所述安全控制器中的策略執(zhí)行單元,用于實(shí)現(xiàn)固化策略單元和動(dòng)態(tài)策略單元中指定的設(shè)備控制和數(shù)據(jù)監(jiān)測(cè)的安全策略; 所述安全控制器中的固化策略單元,用于固化存儲(chǔ)提供廠家出廠前預(yù)定義的控制策略;所述的固化策略單元由硬件實(shí)現(xiàn); 所述安全控制器中的動(dòng)態(tài)策略單元?jiǎng)討B(tài)策略是廠家預(yù)定義的控制策略的輔助策略;動(dòng)態(tài)策略單元只接受可信安全模塊發(fā)出的策略更新指令;動(dòng)態(tài)策略包括代碼和參數(shù),來(lái)自可信安全模塊。
所述可信安全模塊包括I/O總線接口、控制策略模塊、安全隔離單元、策略執(zhí)行引擎; 所述可信安全模塊內(nèi)部的I/O總線接口用于將可信安全模塊和安全控制器之間的數(shù)據(jù)通訊和向安全控制器發(fā)送控制信號(hào); 所述可信安全模塊內(nèi)部提供控制策略模塊,用于向安全控制器提供動(dòng)態(tài)配置的安全控制策略; 所述可信安全模塊內(nèi)部提供策略執(zhí)行引擎,用于對(duì)安全控制器取得的外圍設(shè)備通訊總線的采樣信息進(jìn)行處理;同時(shí)還用于對(duì)主板外圍設(shè)備發(fā)出使能和禁用控制信號(hào); 所述可信安全模塊內(nèi)部的安全隔離單元,用于防止可信安全模塊外部惡意程序讀取可信安全模塊內(nèi)部存儲(chǔ)單元機(jī)密信息; 所述可信安全模塊的I/O總線,包括至少一組LPC總線和一組通訊總線;所述輸出模式LPC總線,可信安全模塊通過(guò)使用LPC總線,被當(dāng)作設(shè)備接著系統(tǒng)設(shè)備控制器上;所述輸出模式總線,可信安全模塊通過(guò)使用通訊總線,作為訪問(wèn)發(fā)起端,訪問(wèn)安全控制器; 進(jìn)一步,還包括連接安全控制器的BIOS備份存儲(chǔ)器,用于對(duì)BOOT ROM中BIOS代碼的備份。
進(jìn)一步,還包括身份識(shí)別設(shè)備,所述身份識(shí)別設(shè)備通過(guò)身份設(shè)備總線直接連接到可信安全模塊。
所述身份識(shí)別設(shè)備總線是通用輸入輸出GPIO總線、USB總線、ISO7816總線中的一種。
所述安全控制器與BOOT ROM之間的通訊總線,是LPC總線、SPI總線之一。
在主板南橋設(shè)備控制器(認(rèn)為在AMD構(gòu)架下指的是設(shè)備控制器)與主板外圍硬件設(shè)備的控制信號(hào)線之間設(shè)置一個(gè)設(shè)備訪問(wèn)控制器,由可信安全模塊負(fù)責(zé)控制該設(shè)備訪問(wèn)控制器,阻斷或者接通系統(tǒng)設(shè)備控制器與主板外圍硬件設(shè)備的控制信號(hào)線; 所述的設(shè)備訪問(wèn)控制器,系統(tǒng)CPU發(fā)出的設(shè)備訪問(wèn)信號(hào)通過(guò)該設(shè)備訪問(wèn)控制器發(fā)送給主板外圍硬件設(shè)備,達(dá)到對(duì)主板上的所有硬件設(shè)備的訪問(wèn)控制; 所述設(shè)備訪問(wèn)控制器的輸入信號(hào)線,至少包括兩條,其中一條接在系統(tǒng)設(shè)備控制器上,一條接在所述可信計(jì)算控制模塊可信安全模塊的I/O總線上。
可信安全模塊和安全控制器對(duì)主板外圍硬件設(shè)備的安全訪問(wèn)控制,通過(guò)可信安全模塊讀取用戶身份識(shí)別設(shè)備,判斷用戶身份權(quán)限,通過(guò)對(duì)用戶身份級(jí)別的分類,在安全控制器的協(xié)助下,控制用戶對(duì)主板硬件設(shè)備的使用權(quán)限。
本發(fā)明效果 1)可信安全模塊內(nèi)部設(shè)置安全隔離單元提高了可信安全模塊自身的安全性;設(shè)置了控制策略模塊,提高了對(duì)安全控制器控制的靈活性;設(shè)置了監(jiān)控引擎提高了對(duì)主板外圍設(shè)備的安全控制。
2)可信安全模塊、BOOT ROM、BIOS備份存儲(chǔ)器、身份設(shè)備設(shè)備、安全控制器先于CPU啟動(dòng),主動(dòng)的完成對(duì)BOOT ROM中BIOS關(guān)鍵代碼的完整性檢測(cè),并實(shí)現(xiàn)了對(duì)BIOS操作過(guò)程中的安全保護(hù),進(jìn)而保證了在信任鏈傳遞過(guò)程中,BIOS的完整性。
3)通過(guò)該方案中的可信安全模塊和安全控制器的協(xié)助,提供了一種對(duì)主板外圍設(shè)備的訪問(wèn)控制策略,為BIOS代碼管理操作提供了實(shí)時(shí)保護(hù)的方法,同時(shí)也提供了對(duì)主板外圍設(shè)備通訊數(shù)據(jù)的實(shí)時(shí)病毒檢測(cè)功能。
4)可信安全模塊和安全控制器之間使用高速的通訊總線,提高了請(qǐng)求響應(yīng)速度和數(shù)據(jù)傳輸時(shí)間。
5)提供了一種解決計(jì)算機(jī)系統(tǒng)中信息泄露的有效途徑,為解決系統(tǒng)中隱通道問(wèn)題提供了思路。
本發(fā)明對(duì)計(jì)算機(jī)主板的改動(dòng)稍大,提高了主板生產(chǎn)成本。但該方案與將BIOS做到可信計(jì)算芯片中的方案相比,成本的增加還是可以接受的。
圖1可信主板接線圖 圖2安全控制器結(jié)構(gòu)框圖 圖3可信安全模塊結(jié)構(gòu)框圖
具體實(shí)施例方式 計(jì)算機(jī)硬件改造,如圖1所示 1)在計(jì)算機(jī)硬件平臺(tái)上設(shè)置安全控制器,通過(guò)數(shù)據(jù)線可控制信號(hào)線連接到計(jì)算機(jī)主板南橋設(shè)備控制器。
2)BOOT ROM和主板外圍設(shè)備通過(guò)數(shù)據(jù)線和控制信號(hào)線連接到安全控制器的輸出端。
3)可信安全模塊作為從屬設(shè)備,通過(guò)其LPC通訊接口或者USB通訊接口連接到計(jì)算機(jī)南橋設(shè)備控制器上。
4)可信安全模塊作為控制端,通過(guò)通訊總線與安全控制器相連接,用于控制和數(shù)據(jù)傳輸。
5)BOOT ROM、安全控制器、BIOS備份存儲(chǔ)單元、身份識(shí)別設(shè)備和可信安全模塊使用同一個(gè)電源系統(tǒng),并且該電源系統(tǒng)獨(dú)立與計(jì)算機(jī)系統(tǒng)其他硬件設(shè)備的電源系統(tǒng)。
6)可信安全模塊通訊線2中的輸出控制信號(hào)線,直接連接到安全控制器。
7)可信安全模塊通過(guò)安全控制器,完成對(duì)外圍設(shè)備的訪問(wèn)控制、地址映射、數(shù)據(jù)傳輸、實(shí)時(shí)安全檢查、完整性關(guān)鍵值度量操作。
8)其中外圍設(shè)備中包括一塊用FLASH實(shí)現(xiàn)的和BOOT ROM同等大小容量的備份存儲(chǔ)單元,用于受控存儲(chǔ)BIOS備份信息。
使用方法簡(jiǎn)述 1)計(jì)算機(jī)系統(tǒng)開(kāi)機(jī)時(shí),計(jì)算機(jī)電源系統(tǒng)首先給可信安全模塊、控制器、BIOS備份存儲(chǔ)單元、身份識(shí)別設(shè)備和BOOT ROM供電。
2)可信安全模塊通過(guò)通訊線1,實(shí)現(xiàn)與計(jì)算機(jī)南橋設(shè)備控制器之間通訊。
3)可信安全模塊通過(guò)通訊線2,向安全控制器發(fā)送讀取BOOT ROM中BIOS的控制信號(hào)。
4)可信安全模塊接收到BIOS信息后,對(duì)BIOS進(jìn)行完整性標(biāo)準(zhǔn)值的檢查和病毒特征值的檢查。
5)如果完整性特征值的檢查和病毒特征值的檢查都順利通過(guò)后,再給CPU和系統(tǒng)硬件平臺(tái)其他部分上電。
6)如果未通過(guò)完整性特征值的檢查和病毒特征值的檢查,則應(yīng)從BIOS備份存儲(chǔ)單元中恢復(fù)BIOS備份數(shù)據(jù)。
7)安全控制器通過(guò)通訊線3,實(shí)現(xiàn)與BIOS備份存儲(chǔ)器、計(jì)算機(jī)主板外圍設(shè)備通訊 8)安全控制器通過(guò)通訊線4,實(shí)現(xiàn)與BOOT ROM通訊。
9)通過(guò)安全控制器地址映射后,BIOS備份存儲(chǔ)單元只響應(yīng)可信安全模塊發(fā)出的控制信號(hào)。
10)只有當(dāng)可信安全模塊通過(guò)通訊線2中的輸出控制信號(hào)線,向安全控制器發(fā)出外圍設(shè)備時(shí)能信號(hào)時(shí),外圍設(shè)備才能響應(yīng)計(jì)算機(jī)南橋總線控制器發(fā)出的對(duì)計(jì)算機(jī)外圍硬件設(shè)備的控制信號(hào),并開(kāi)始進(jìn)行數(shù)據(jù)傳輸。
11)安全控制器將南橋總線地址映射后,主板外圍設(shè)備相對(duì)于南橋總線來(lái)說(shuō),仍然沿用原來(lái)的地址映射空間。
12)安全控制器用于實(shí)現(xiàn)對(duì)BIOS信息的讀寫控制、防止信號(hào)干擾、保護(hù)度量過(guò)程安全。
13)在外圍設(shè)備通過(guò)安全控制器與計(jì)算機(jī)南橋設(shè)備控制器進(jìn)行數(shù)據(jù)通訊時(shí),安全控制器可以根據(jù)預(yù)定義策略,對(duì)通訊信息進(jìn)行實(shí)時(shí)監(jiān)測(cè)。監(jiān)測(cè)內(nèi)容包括通訊數(shù)據(jù)流量、設(shè)備占用時(shí)間、是否含有病毒特征值、是否有惡意攻擊。
安全控制器,如圖2所示 硬件組成 1)安全控制器由總線地址映射單元、安全隔離單元、策略執(zhí)行單元、固化策略單元和動(dòng)態(tài)策略單元組成。
2)總線地址映射單元用于完成南橋設(shè)備地址總線和主板外圍設(shè)備總線之間的地址映射。
3)安全隔離單元用于隔離計(jì)算機(jī)南橋總線和主板外圍設(shè)備總線,同時(shí)還具有對(duì)總線上數(shù)據(jù)的實(shí)時(shí)采樣功能。安全隔離單元和總線地址映射單元之間通過(guò)兩組總線連接,分別用于連接計(jì)算機(jī)的南橋總線端口和用于連接主板上各外圍設(shè)備的設(shè)備總線端口。
4)策略執(zhí)行單元用于實(shí)現(xiàn)固化策略單元和動(dòng)態(tài)策略單元中指定的設(shè)備控制和數(shù)據(jù)監(jiān)測(cè)的安全策略。
5)固化策略單元用于固化存儲(chǔ)提供廠家出廠前預(yù)定義的控制策略。固化策略單元由硬件實(shí)現(xiàn)。
6)動(dòng)態(tài)策略單元?jiǎng)討B(tài)策略是廠家預(yù)定義的控制策略的輔助策略。動(dòng)態(tài)策略單元只接受可信安全模塊發(fā)出的策略更新指令。動(dòng)態(tài)策略包括代碼和參數(shù),主要來(lái)自可信安全模塊。
硬件特征 1)安全控制器通過(guò)系統(tǒng)總線連接到計(jì)算機(jī)南橋設(shè)備總線控制器上。
2)安全控制器通過(guò)高速通訊總線和可信安全模塊連接。
3)安全控制器通過(guò)各種設(shè)備總線和使能控制信號(hào)線連接到主板外圍設(shè)備和BOOT ROM上。
使用方法 1)連接到計(jì)算機(jī)南橋設(shè)備總線控制器上,用于完成對(duì)計(jì)算機(jī)南橋設(shè)備控制器的總線地址映射。
2)連接到可信安全模塊上,用于實(shí)時(shí)接受可信安全模塊的監(jiān)控和數(shù)據(jù)傳輸要求。
3)連接到主板外圍設(shè)備和BOOT ROM上,用于完成對(duì)主板外圍設(shè)備和BOOT ROM的數(shù)據(jù)傳輸和控制操作。
4)提供對(duì)從外圍設(shè)備流入到系統(tǒng)的數(shù)據(jù)流進(jìn)行實(shí)時(shí)采樣和檢查的功能。
5)同時(shí)具有數(shù)據(jù)隔離和安全保護(hù)功能,防止惡意數(shù)據(jù)侵入計(jì)算機(jī)系統(tǒng)。
6)及時(shí)響應(yīng)可信安全模塊對(duì)實(shí)時(shí)數(shù)據(jù)的采樣和檢查的要求。
7)提供固化策略單元和可配置的動(dòng)態(tài)控制策略單元,存儲(chǔ)出廠固化的預(yù)定義安全控制策略或者由可信安全控制模塊動(dòng)態(tài)設(shè)置的安全控制策略。
8)可配置的控制策略單元配合可信安全模塊實(shí)現(xiàn)對(duì)硬件設(shè)備的訪問(wèn)控制。
可信安全模塊,如圖1所示由I/O接口、安全隔離單元、控制策略模塊、監(jiān)控處理引擎、密碼協(xié)處理器、密鑰生成器、自主密碼引擎、隨即數(shù)發(fā)生器、執(zhí)行部件、電源檢測(cè)、非揮發(fā)性存儲(chǔ)器、揮發(fā)性存儲(chǔ)器和內(nèi)部通訊總線。
方法 1)可信安全模塊內(nèi)部提供一組主動(dòng)讀取BOOT ROM的數(shù)據(jù)總線接口,用于主動(dòng)讀取并對(duì)BIOS信息的檢查工作。
2)可信安全模塊內(nèi)部提供高速通訊總線控制器,用于連接安全控制器,進(jìn)行高速傳輸BIOS信息和安全控制器提供的主板外圍設(shè)備通過(guò)程的采樣信息。
3)可信安全控制模塊內(nèi)部提供安全隔離單元,用于芯片內(nèi)部的I/O控制器和可信安全模塊內(nèi)部各單元隔離開(kāi),防止I/O接口惡意讀寫可信安全模塊內(nèi)部存儲(chǔ)單元。
4)可信安全模塊內(nèi)部提供身份識(shí)別控制器接口,用于連接身份識(shí)別設(shè)備。
5)可信安全模塊內(nèi)部提供控制策略模塊,用于向安全控制器提供動(dòng)態(tài)配置的安全控制策略。
6)可信計(jì)算系統(tǒng)的用戶可以通過(guò)指令形式通知可信安全模塊,如何進(jìn)行安全可控制策略的生成。
7)可信安全模塊內(nèi)部提供監(jiān)控處理引擎,用于對(duì)安全控制器取得的外圍設(shè)備通訊總線的采樣信息進(jìn)行處理。同時(shí)還用于對(duì)主板外圍設(shè)備發(fā)出使能和禁用控制信號(hào)。
一、工作流程 1、開(kāi)機(jī)啟動(dòng)階段工作流程 1)計(jì)算機(jī)開(kāi)機(jī),總電源通電后,計(jì)算機(jī)電源系統(tǒng)首先給可信安全模塊、控制器、BIOS備份存儲(chǔ)單元、身份識(shí)別設(shè)備和BOOT ROM供電。
2)此時(shí),南橋未啟動(dòng),通訊線1無(wú)通訊信號(hào)。如果可信安全模塊功能使能,則首先完成初始化工作。
3)安全控制器執(zhí)行出廠預(yù)定義的計(jì)算機(jī)啟動(dòng)過(guò)程安全控制策略。只接受來(lái)自可信安全模塊的控制命令。
4)可信安全模塊首先通過(guò)身份識(shí)別設(shè)備認(rèn)證用戶的合法性及對(duì)計(jì)算機(jī)系統(tǒng)的使用權(quán)限。
5)可信安全模塊通過(guò)對(duì)用戶的認(rèn)證后,向安全控制器發(fā)出讀BOOT ROM中BIOS的控制命令。
6)安全控制器讀取BOOT ROM中的指定地址上的數(shù)據(jù)信息,并對(duì)該信息進(jìn)行特殊病毒檢查,同時(shí)將BIOS信息轉(zhuǎn)發(fā)給可信安全模塊處理。
7)安全控制器對(duì)BIOS進(jìn)行的特殊病毒檢查,檢查對(duì)象主要是指對(duì)針對(duì)BIOS進(jìn)行攻擊的惡意代碼。
8)在可信安全模塊和安全控制器對(duì)BIOS進(jìn)行檢查時(shí),安全控制器應(yīng)隔離計(jì)算機(jī)南橋控制器和主板外圍硬件設(shè)備對(duì)整個(gè)過(guò)程的干擾。主要是指對(duì)外部信號(hào)的隔離,防止發(fā)生串?dāng)_和外界發(fā)出的惡意攻擊。
9)可信安全模塊對(duì)安全控制器轉(zhuǎn)發(fā)來(lái)的BIOS關(guān)鍵代碼進(jìn)行完整性特征值的檢查。
10)當(dāng)可信安全模塊對(duì)BIOS的完整性特征值檢查通過(guò)以及安全控制器對(duì)BIOS信息進(jìn)行特殊病毒檢查完成,且未發(fā)現(xiàn)病毒代碼后,才可以向可信計(jì)算平臺(tái)上其他備份供電。如果完整性特征值檢查和特殊病毒檢查中任意一項(xiàng)沒(méi)有通過(guò),則應(yīng)立即通過(guò)輸出信號(hào)的方式通知系統(tǒng)管理員,并可以進(jìn)行對(duì)BIOS代碼的恢復(fù)操作。
11)當(dāng)可信安全模塊接受到管理員發(fā)出的恢復(fù)BIOS備份信息的指令后,應(yīng)立即通知安全控制單元,將BIOS備份存儲(chǔ)單元中的BIOS代碼恢復(fù)到BOOT ROM中。如果系統(tǒng)執(zhí)行BIOS備份數(shù)據(jù)的恢復(fù)操作后,應(yīng)立即重新啟動(dòng)計(jì)算機(jī)。
12)當(dāng)可信安全模塊和安全控制器順利的完成對(duì)BIOS的檢查后,應(yīng)立即向總電源發(fā)出其他部件供電的控制命令。
13)整個(gè)系統(tǒng)完全供電后,CPU發(fā)出讀取BIOS的命令,通過(guò)南橋和安全控制器完成對(duì)BIOS代碼的讀取操作,并執(zhí)行BIOS代碼,完成計(jì)算機(jī)系統(tǒng)初始化操作。
14)CPU讀取BIOS并執(zhí)行時(shí),安全控制器始終禁用除鍵盤、鼠標(biāo)、顯示器、BIOS備份存儲(chǔ)單元之外的所有主板外圍設(shè)備。并且安全控制器始終監(jiān)聽(tīng)CPU對(duì)BIOS的讀取過(guò)程,防止整個(gè)過(guò)程收到外部干擾,保證系統(tǒng)啟動(dòng)過(guò)程的安全可信。
2、計(jì)算機(jī)系統(tǒng)關(guān)機(jī)過(guò)程 1)當(dāng)按下計(jì)算機(jī)關(guān)機(jī)按鈕或者通過(guò)操作系統(tǒng)命令執(zhí)行關(guān)機(jī)操作后,可信安全模塊應(yīng)能夠立即接收到關(guān)機(jī)中斷,并通過(guò)安全控制器禁用除BIOS備份存儲(chǔ)單元和身份識(shí)別設(shè)備外的主板外圍設(shè)備。
2)可信安全模塊通知安全控制器共同完成對(duì)BIOS關(guān)鍵代碼的特殊病毒檢查和完整性特征值的檢查操作。
3)如果上述檢查操作出現(xiàn)錯(cuò)誤,則可信安全模塊應(yīng)立即通知管理員進(jìn)行BIOS的恢復(fù)操作或者繼續(xù)完成關(guān)機(jī)操作。
4)同時(shí)安全控制器也要完成對(duì)主板外圍設(shè)備的完整性特征值的檢查工作。如果檢查沒(méi)有通過(guò),也應(yīng)及時(shí)通過(guò)硬件顯示方式告知系統(tǒng)管理員,并由系統(tǒng)管理員進(jìn)行操作。
5)關(guān)機(jī)之前,安全控制器一直負(fù)責(zé)監(jiān)聽(tīng)來(lái)自南橋控制器的數(shù)據(jù)流,保證系統(tǒng)對(duì)BIOS檢查過(guò)程無(wú)干擾。
3、正常工作過(guò)程中對(duì)主板外圍設(shè)備和BIOS的訪問(wèn)控制過(guò)程 ●對(duì)主板外圍設(shè)備的訪問(wèn)控制過(guò)程 1)當(dāng)計(jì)算機(jī)南橋控制器對(duì)主板外圍硬件設(shè)備發(fā)出控制信號(hào)時(shí),安全控制器先檢查當(dāng)前用戶對(duì)南橋控制器所請(qǐng)求響應(yīng)的設(shè)備,是否具有使用權(quán)限、是否已經(jīng)使能和使用權(quán)限等級(jí)。
2)如果有使用權(quán)限,且已經(jīng)對(duì)該外部外圍設(shè)備進(jìn)行了使能操作,則可以響應(yīng)南橋控制器的訪問(wèn)請(qǐng)求,可以正常使用。同時(shí)安全控制器還要對(duì)通訊的數(shù)據(jù)流就行實(shí)時(shí)采樣進(jìn)行分析檢查或者傳送給可信安全模塊進(jìn)行檢查。如果實(shí)時(shí)檢查發(fā)現(xiàn)問(wèn)題,則應(yīng)立即停止數(shù)據(jù)傳送,并告知當(dāng)前用戶。
3)如果當(dāng)前用戶對(duì)該設(shè)備沒(méi)有使用權(quán)限,則南橋控制器不能對(duì)該設(shè)備進(jìn)行正常的訪問(wèn)控制。安全控制器向南橋返回不可用的響應(yīng)信號(hào)。
4)如果當(dāng)前用戶對(duì)該設(shè)備有使用權(quán)限,但當(dāng)前沒(méi)有使能該設(shè)備,則安全控制器應(yīng)先向可信安全模塊發(fā)出使能該設(shè)備的請(qǐng)求。如果可信安全模塊響應(yīng)該請(qǐng)求,并通過(guò)身份識(shí)別設(shè)備對(duì)當(dāng)前用戶進(jìn)行再次身份認(rèn)證后,則安全控制器可以使能該主板外圍設(shè)備。
5)當(dāng)可信安全模塊收到管理員命令修改用戶對(duì)主板外圍設(shè)備使用權(quán)限時(shí),可信安全模塊首先向安全控制器發(fā)出控制信號(hào),立即修改使用權(quán)限,禁用制定設(shè)備,并通知該用戶。可信安全模塊維護(hù)著用戶對(duì)主板外圍設(shè)備的使用信息,每次關(guān)機(jī)前應(yīng)禁用除鍵盤、鼠標(biāo)、顯示器、BIOS備份存儲(chǔ)器、身份識(shí)別設(shè)備以外的所有主板外圍設(shè)備,在計(jì)算機(jī)開(kāi)機(jī)時(shí)再根據(jù)用戶指令相繼啟用。
●對(duì)BIOS的訪問(wèn)控制過(guò)程 1)讀BIOS過(guò)程 a)首先,CPU通過(guò)南橋控制器想安全控制器發(fā)出讀取BIOS的請(qǐng)求。
b)其次,由于已經(jīng)進(jìn)入到了可信工作環(huán)境中,安全控制器可以直接讀取BIOS代碼并轉(zhuǎn)發(fā)給南橋控制器,進(jìn)而CPU執(zhí)行BIOS代碼。
c)再次,在CPU讀取BIOS的短暫過(guò)程中,安全控制器要對(duì)主板外圍設(shè)備應(yīng)進(jìn)行通訊通道的嚴(yán)格劃分,提供相互隔離的通訊通道,并進(jìn)行行為監(jiān)控,防止惡意代碼篡改正在傳輸?shù)腂IOS代碼數(shù)據(jù)流,同時(shí)防止主板外圍設(shè)備對(duì)BIOS數(shù)據(jù)傳輸通道進(jìn)行監(jiān)聽(tīng)。
d)正讀取BIOS的過(guò)程中,短暫禁用用戶沒(méi)有請(qǐng)求使用的主板外圍硬件設(shè)備,保證通訊過(guò)程不被外界干擾。通訊結(jié)束后,再使能相應(yīng)主板外圍設(shè)備。
2)更新BIOS過(guò)程 a)更新BIOS的過(guò)程中,禁止當(dāng)前用戶對(duì)除鍵盤、鼠標(biāo)、顯示器、身份識(shí)別設(shè)備、BIOS備份存儲(chǔ)單元外的所有設(shè)備的使用。
b)當(dāng)用戶要對(duì)BIOS進(jìn)行更新時(shí),應(yīng)先向可信安全模塊發(fā)出更新BIOS的請(qǐng)求信號(hào),BIOS接收到該請(qǐng)求信號(hào)后,立即通過(guò)身份識(shí)別設(shè)備對(duì)當(dāng)前用戶進(jìn)行身份識(shí)別認(rèn)證,確認(rèn)該用戶是否有對(duì)BIOS進(jìn)行更新的權(quán)限。如果沒(méi)有該權(quán)限,則對(duì)該用戶發(fā)出拒絕更新請(qǐng)求。如果有對(duì)BIOS的更新權(quán)限,則可信安全模塊立即向安全控制器發(fā)出使能BOOT ROM的控制指令,并接收南橋控制器發(fā)出的BIOS更新代碼。
c)在BIOS代碼更新的過(guò)程中,可信安全模塊通過(guò)安全控制器短暫禁用當(dāng)前用戶沒(méi)有請(qǐng)求使用的所有外圍設(shè)備,更新完成后,再次開(kāi)啟。同時(shí),安全控制器還為BIOS代碼數(shù)據(jù)流單獨(dú)開(kāi)辟獨(dú)立的通訊通道,并實(shí)時(shí)監(jiān)控主板外圍設(shè)備的行為,為BIOS的更新過(guò)程提供安全通道。
d)在BIOS代碼更新的過(guò)程中,可信安全模塊通過(guò)安全控制器對(duì)BIOS代碼進(jìn)行實(shí)時(shí)采樣,記錄關(guān)鍵特征數(shù)據(jù),并進(jìn)行完整性特征參考值計(jì)算,并將該參考值記錄在可信安全模塊中,作為完整性度量檢查的標(biāo)準(zhǔn)值。
e)在BIOS代碼更新的過(guò)程中,安全控制器也要對(duì)BIOS代碼進(jìn)行特殊病毒的檢查。如果發(fā)現(xiàn)有疑似病毒特征,應(yīng)立即通過(guò)可信安全模塊想當(dāng)前用戶告知當(dāng)前BIOS代碼被病毒感染,并等待當(dāng)前用戶執(zhí)行確認(rèn)判斷。如果當(dāng)前用戶確認(rèn)為正常代碼,則繼續(xù)執(zhí)行更新操作。如果當(dāng)前用戶無(wú)法確認(rèn)或者確認(rèn)BIOS代碼可能存在被病毒感染風(fēng)險(xiǎn)時(shí),安全控制器應(yīng)立即停止BIOS更新,并向可信安全模塊發(fā)出恢復(fù)BIOS的請(qǐng)求并告知用戶。由當(dāng)前用戶決定是否執(zhí)行恢復(fù)BIOS的操作。
3)恢復(fù)BIOS過(guò)程 a)恢復(fù)BIOS的操作由當(dāng)前用戶決定。當(dāng)用戶向可信安全模塊發(fā)出更新BIOS的指令后,可信安全模塊立即向安全控制器發(fā)出恢復(fù)BIOS的控制信號(hào),安全控制器應(yīng)立即短暫關(guān)閉說(shuō)有主板外圍設(shè)備,為BIOS備份存儲(chǔ)單元和BOOT ROM建立單獨(dú)的通訊通道,并保證通訊過(guò)程中,不受其他主板外圍設(shè)備和南橋控制器的干擾。
b)恢復(fù)BIOS的恢復(fù)過(guò)程中安全控制器對(duì)BIOS代碼流進(jìn)行實(shí)時(shí)監(jiān)控。同時(shí)可信安全模塊通過(guò)安全控制器對(duì)BIOS代碼進(jìn)行實(shí)時(shí)采樣,記錄關(guān)鍵特征數(shù)據(jù),并進(jìn)行完整性特征參考值計(jì)算,并將該參考值存儲(chǔ)在可信安全模塊中,作為完整性度量檢查的標(biāo)準(zhǔn)值。
c)BIOS完成恢復(fù)操作后,應(yīng)恢復(fù)短暫禁用的硬件設(shè)備,并告知當(dāng)前用戶BIOS恢復(fù)操作結(jié)束。
4)備份BIOS過(guò)程 a)被授權(quán)的當(dāng)前用戶或者管理員可以向可信安全模塊發(fā)出備份BIOS的指令。
b)可信安全模塊接受備份BIOS指令后,應(yīng)控制計(jì)算機(jī)系統(tǒng)總電源,重新啟動(dòng)計(jì)算機(jī)。
c)重新啟動(dòng)計(jì)算機(jī)后,只有可信安全模塊、安全控制器、BOOT ROM和BIOS備份存儲(chǔ)器上電工作。
d)可信安全模塊通過(guò)身份認(rèn)證設(shè)備對(duì)當(dāng)前用戶再次進(jìn)行身份認(rèn)證,確定當(dāng)前用戶身份有備份BIOS的權(quán)限。如果沒(méi)有該權(quán)限,則給出提示,并再次提示驗(yàn)證身份。三次沒(méi)有通過(guò)身份認(rèn)證后,可信安全模塊向總電源發(fā)出計(jì)算機(jī)關(guān)機(jī)信號(hào),計(jì)算機(jī)系統(tǒng)關(guān)機(jī)。
e)如果通過(guò)身份認(rèn)證,則可信安全模塊通過(guò)安全控制器確認(rèn)是否禁用了除鼠標(biāo)、鍵盤、顯示器、BOOT ROM、身份識(shí)別設(shè)備、BIOS備份存儲(chǔ)器外的主板所有外圍設(shè)備。如果沒(méi)有禁用,則立即執(zhí)行短暫禁用操作。
f)主板外圍設(shè)備禁用后,安全控制器應(yīng)立即對(duì)BIOS代碼執(zhí)行特殊病毒特征檢查,如果未查出病毒特征,則繼續(xù)進(jìn)行備份操作。如果查處疑似病毒特征,則應(yīng)通過(guò)可信安全模塊通知當(dāng)前用戶,并等待用戶處理。用戶處理包括停止備份、關(guān)機(jī)、重新啟動(dòng)計(jì)算機(jī)、恢復(fù)BIOS代碼。進(jìn)行病毒檢查的同時(shí),安全控制器應(yīng)向可信安全模塊發(fā)送BIOS完整性特征值采樣。由可信安全模塊對(duì)BIOS進(jìn)行完整性參考值計(jì)算,并將該標(biāo)準(zhǔn)參考值存儲(chǔ)到可信安全模塊內(nèi)部。
如果沒(méi)有發(fā)現(xiàn)病毒特征,則安全控制器立即為BOOT ROM和BIOS存儲(chǔ)器建立獨(dú)立的通訊通道,隔離計(jì)算機(jī)南橋控制器和主板外圍設(shè)備發(fā)出的任何干擾信號(hào),并立即執(zhí)行對(duì)BIOS的備份操作,將BOOT ROM中的BIOS代碼讀入到BIOS備份存儲(chǔ)單元中。
權(quán)利要求
1.一種可信計(jì)算系統(tǒng),包括主板及主板外圍設(shè)備,主板包括可信安全模塊、中央處理器CPU、系統(tǒng)設(shè)備控制器,BOOT ROM;
所述可信安全模塊用于,不可篡改地存儲(chǔ)核心可信度量根、可信存儲(chǔ)根、可信報(bào)告根,對(duì)外圍設(shè)備和BOOT ROM關(guān)鍵代碼進(jìn)行完整性度量與讀寫保護(hù),對(duì)安全控制器和外圍設(shè)備的控制功能;
所述CPU用于,接收到可信安全模塊對(duì)BOOT ROM關(guān)鍵代碼度量完成的指示后,加載并執(zhí)行BOOT ROM中的初始化和啟動(dòng)代碼;
主板外圍設(shè)備用于,接受安全控制器和可信安全模塊的權(quán)限訪問(wèn)控制,針對(duì)不同的用戶提供不同的服務(wù),同時(shí)還用于接受安全控制器和可信安全模塊的特殊病毒特征檢查、實(shí)時(shí)通訊數(shù)據(jù)監(jiān)聽(tīng)和完整性特征值采樣;
所述BOOT ROM用于,存儲(chǔ)可信計(jì)算系統(tǒng)的初始化和啟動(dòng)代碼;
其特征在于設(shè)置安全控制器,該安全控制器通過(guò)通訊線連接到系統(tǒng)主板南橋控制器上,再通過(guò)通信線將BOOT ROM連接到安全控制器上;該安全控制器還分別通過(guò)通訊線連接可信安全模塊以及主板外圍設(shè)備;
所述安全控制器包括總線地址映射單元、安全隔離單元、策略執(zhí)行單元、固化策略單元和動(dòng)態(tài)策略單元組成;
所述安全控制器中的總線地址映射單元,用于完成南橋設(shè)備地址總線和主板外圍設(shè)備總線之間的地址映射;
所述安全控制器中的安全隔離單元,用于隔離計(jì)算機(jī)南橋總線和主板外圍設(shè)備總線,同時(shí)還具有對(duì)總線上數(shù)據(jù)的實(shí)時(shí)采樣功能;安全隔離單元和總線地址映射單元之間通過(guò)兩組總線連接,分別用于連接計(jì)算機(jī)的南橋總線端口和用于連接主板上各外圍設(shè)備的設(shè)備總線端口;
所述安全控制器中的策略執(zhí)行單元,用于實(shí)現(xiàn)固化策略單元和動(dòng)態(tài)策略單元中指定的設(shè)備控制和數(shù)據(jù)監(jiān)測(cè)的安全策略;
所述安全控制器中的固化策略單元,用于固化存儲(chǔ)提供廠家出廠前預(yù)定義的控制策略;所述的固化策略單元由硬件實(shí)現(xiàn);
所述安全控制器中的動(dòng)態(tài)策略單元?jiǎng)討B(tài)策略是廠家預(yù)定義的控制策略的輔助策略;動(dòng)態(tài)策略單元只接受可信安全模塊發(fā)出的策略更新指令;
所述可信安全模塊包括I/O總線接口、控制策略模塊、安全隔離單元、策略執(zhí)行引擎;
所述可信安全模塊內(nèi)部的I/O總線接口用于將可信安全模塊和安全控制器之間的數(shù)據(jù)通訊和向安全控制器發(fā)送控制信號(hào);
所述可信安全模塊內(nèi)部提供控制策略模塊,用于向安全控制器提供動(dòng)態(tài)配置的安全控制策略;
所述可信安全模塊內(nèi)部提供策略執(zhí)行引擎,用于對(duì)安全控制器取得的外圍設(shè)備通訊總線的采樣信息進(jìn)行處理;同時(shí)還用于對(duì)主板外圍設(shè)備發(fā)出使能和禁用控制信號(hào);
所述可信安全模塊內(nèi)部的安全隔離單元,用于防止可信安全模塊外部惡意程序讀取可信安全模塊內(nèi)部存儲(chǔ)單元機(jī)密信息;
所述可信安全模塊的I/O總線,包括至少一組LPC總線和一組通訊總線;所述輸出模式LPC總線,可信安全模塊通過(guò)使用LPC總線,被當(dāng)作設(shè)備接著系統(tǒng)設(shè)備控制器上;所述輸出模式總線,可信安全模塊通過(guò)使用通訊總線,作為訪問(wèn)發(fā)起端,安全控制器。
2.根據(jù)權(quán)利要求1所述的可信計(jì)算系統(tǒng),其特征在于,主板外圍設(shè)備還包括連接安全控制器的BIOS備份存儲(chǔ)器,用于對(duì)BOOT ROM中BIOS代碼的備份。
3.根據(jù)權(quán)利要求1所述的可信計(jì)算系統(tǒng),其特征在于,主板外圍設(shè)備還包括身份識(shí)別設(shè)備,所述身份識(shí)別設(shè)備通過(guò)身份設(shè)備總線直接連接到可信安全模塊;所述身份識(shí)別設(shè)備總線是通用輸入輸出GPIO總線、USB總線、ISO7816總線中的一種。
4.根據(jù)權(quán)利要求1所述的可信計(jì)算系統(tǒng),其特征在于,所述安全控制器與BOOT ROM之間的通訊總線,是LPC總線、SPI總線之一。
5.根據(jù)權(quán)利要求1所述的可信計(jì)算系統(tǒng),其特征在于,由可信安全模塊負(fù)責(zé)控制所述的安全控制器,阻斷或者接通系統(tǒng)主板設(shè)備控制器與主板外圍硬件設(shè)備的控制信號(hào)線;
所述的安全控控制器,系統(tǒng)CPU發(fā)出的設(shè)備訪問(wèn)信號(hào)通過(guò)所述的安全控制器發(fā)送給主板外圍硬件設(shè)備,達(dá)到對(duì)主板上的所有硬件設(shè)備的訪問(wèn)控制;
所述安全控制器的輸入信號(hào)線,至少包括兩條,其中一條接在系統(tǒng)主板設(shè)備控制器上,一條接在所述可信安全模塊的I/O總線上。
全文摘要
一種可信計(jì)算系統(tǒng)屬于信息安全領(lǐng)域。其特征在于設(shè)置安全控制器,該安全控制器通過(guò)通訊線連接到系統(tǒng)主板南橋控制器上,再通過(guò)通信線將BOOT ROM連接到安全控制器上;該安全控制器還分別通過(guò)通訊線連接可信安全模塊以及主板外圍設(shè)備;所述安全控制器包括總線地址映射單元、安全隔離單元、策略執(zhí)行單元、固化策略單元和動(dòng)態(tài)策略單元組成。通過(guò)該方案中的可信安全模塊和安全控制器的協(xié)助,提供了一種對(duì)主板外圍設(shè)備的訪問(wèn)控制策略,為BIOS代碼管理操作提供了實(shí)時(shí)保護(hù)的方法,同時(shí)也提供了對(duì)主板外圍設(shè)備通訊數(shù)據(jù)的實(shí)時(shí)病毒檢測(cè)功能。
文檔編號(hào)G06F21/00GK101281570SQ20081011312
公開(kāi)日2008年10月8日 申請(qǐng)日期2008年5月28日 優(yōu)先權(quán)日2008年5月28日
發(fā)明者興 張, 毛軍捷, 姜廣智, 劉賢剛, 瑜 孫, 莊俊璽, 李萌萌, 瑜 李 申請(qǐng)人:北京工業(yè)大學(xué)