一種適用于電力系統(tǒng)通用計(jì)算平臺(tái)的可信計(jì)算密碼平臺(tái)的制作方法
【技術(shù)領(lǐng)域】
[0001] 本發(fā)明涉及可信計(jì)算技術(shù)領(lǐng)域,具體涉及一種適用于電力系統(tǒng)通用計(jì)算平臺(tái)的可 信計(jì)算密碼平臺(tái)。
【背景技術(shù)】
[0002] 信息系統(tǒng)不安全的根源是由于PC結(jié)構(gòu)的簡(jiǎn)化,對(duì)系統(tǒng)中的進(jìn)程、程序沒(méi)有校驗(yàn),導(dǎo) 致可執(zhí)行程序、進(jìn)程在非授權(quán)情況下任意執(zhí)行,實(shí)施惡意行為,而傳統(tǒng)的防火墻、防病毒、 IDS,都是以外圍封堵、事后升級(jí)病毒代碼庫(kù)為主,不能主動(dòng)防御、積極防御。
[0003] 可信計(jì)算通過(guò)在硬件上引入可信芯片,從結(jié)構(gòu)上解決了個(gè)人計(jì)算機(jī)體系結(jié)構(gòu)簡(jiǎn)化 帶來(lái)的脆弱性問(wèn)題,基于硬件芯片,從平臺(tái)加電開(kāi)始,到應(yīng)用程序的執(zhí)行,構(gòu)建完整的信任 鏈,一級(jí)認(rèn)證一級(jí),一級(jí)信任一級(jí),未獲認(rèn)證的程序不能執(zhí)行,從而使信息系統(tǒng)實(shí)現(xiàn)自身免 疫,構(gòu)建高安全等級(jí)的信息系統(tǒng)。
【發(fā)明內(nèi)容】
[0004] 為克服上述現(xiàn)有技術(shù)的不足,本發(fā)明提供一種適用于電力系統(tǒng)通用計(jì)算平臺(tái)的可 信計(jì)算密碼平臺(tái)。為業(yè)務(wù)系統(tǒng)提供基于白名單的業(yè)務(wù)系統(tǒng)惡意代碼免疫機(jī)制,提供操作系 統(tǒng)可信引導(dǎo)機(jī)制,同時(shí)自身具備安全策略的保護(hù)和管理機(jī)制。通過(guò)對(duì)系統(tǒng)軟件的來(lái)源及運(yùn) 行進(jìn)行管理,保證軟件的可信、可識(shí)別和可控,按照預(yù)設(shè)的配置策略對(duì)程序的關(guān)鍵模塊和進(jìn) 程的資源訪問(wèn)進(jìn)行控制,實(shí)現(xiàn)對(duì)已知/未知惡意代碼的主動(dòng)防御,降低可執(zhí)行程序被破壞被 篡改的風(fēng)險(xiǎn),保障可執(zhí)行程序安全穩(wěn)定運(yùn)行。
[0005] 實(shí)現(xiàn)上述目的所采用的解決方案為:
[0006] -種適用于電力系統(tǒng)通用計(jì)算平臺(tái)的可信計(jì)算密碼平臺(tái),所述密碼平臺(tái)包括:可 信計(jì)算密碼模塊和可信軟件系統(tǒng);
[0007] 所述可信計(jì)算密碼模塊包括可信度量根、可信存儲(chǔ)根、可信報(bào)告根,是平臺(tái)信任鏈 傳遞的起點(diǎn);
[0008] 所述可信軟件系統(tǒng)包括:可信計(jì)算密碼驅(qū)動(dòng)模塊、度量模塊和審計(jì)模塊,為操作系 統(tǒng)和應(yīng)用軟件提供使用可信計(jì)算密碼平臺(tái)的接口。
[0009] 優(yōu)選的,所述可信計(jì)算密碼模塊包括硬件板卡形態(tài)和軟件形態(tài);
[0010] 所述硬件板卡形態(tài)包括:執(zhí)行引擎、非易失性存儲(chǔ)單元、易失性存儲(chǔ)單元、隨機(jī)數(shù) 發(fā)生器、密碼算法引擎、密鑰生成器和定時(shí)器,為可信軟件系統(tǒng)提供硬件的密碼算法和策略 存儲(chǔ)、保護(hù)與更新機(jī)制;
[0011]所述軟件形態(tài)為可信軟件系統(tǒng)提供軟件形態(tài)的密碼算法和策略存儲(chǔ)、保護(hù)與更新 機(jī)制。
[0012] 優(yōu)選的,所述可信計(jì)算密碼驅(qū)動(dòng)模塊為所述可信計(jì)算密碼模塊提供驅(qū)動(dòng);
[0013] 所述度量模塊用于對(duì)所述可信計(jì)算密碼平臺(tái)后續(xù)軟件的完整性度量;
[0014] 所述后續(xù)軟件包括:核心動(dòng)態(tài)加載模塊、動(dòng)態(tài)庫(kù)、不可控操作系統(tǒng)核心,以及不可 控操作系統(tǒng)上的應(yīng)用程序;
[0015] 所述審計(jì)模塊用于截獲上層應(yīng)用或者不可控操作系統(tǒng)的特定行為,進(jìn)行行為審計(jì) 和分析,并觸發(fā)預(yù)定的響應(yīng)動(dòng)作。
[0016] 進(jìn)一步的,所述完整性度量包括靜態(tài)度量和動(dòng)態(tài)度量;
[0017] 所述靜態(tài)度量的內(nèi)容包括系統(tǒng)中的可執(zhí)行程序、動(dòng)態(tài)庫(kù)和內(nèi)核模塊,靜態(tài)度量對(duì) 該三類文件進(jìn)行文件內(nèi)容的哈希計(jì)算,并將計(jì)算結(jié)果與預(yù)期結(jié)果進(jìn)行比較,以此來(lái)判斷度 量對(duì)象的完整性是否遭受破壞;
[0018]所述動(dòng)態(tài)度量為在度量對(duì)象啟動(dòng)前完成對(duì)度量對(duì)象預(yù)期值的收集,并依據(jù)收集的 預(yù)期值,在系統(tǒng)運(yùn)行中對(duì)度量對(duì)象進(jìn)行驗(yàn)證。
[0019] 優(yōu)選的,所述可信計(jì)算密碼平臺(tái)提供白名單機(jī)制和基于安全標(biāo)簽的強(qiáng)制訪問(wèn)控 制;
[0020] 所述白名單機(jī)制為在軟件安裝過(guò)程中通過(guò)掃描接口掃描生成白名單庫(kù),程序運(yùn)行 時(shí)依據(jù)所述白名單庫(kù)判斷是否允許程序運(yùn)行;
[0021 ]所述基于安全標(biāo)簽的強(qiáng)制訪問(wèn)控制包括:
[0022] (1)人機(jī)發(fā)起服務(wù)訪問(wèn)請(qǐng)求;
[0023] (2)部署在SCADA服務(wù)器上的可信軟件系統(tǒng)截獲此請(qǐng)求;
[0024] (3)從請(qǐng)求的第一個(gè)數(shù)據(jù)包中提取主體安全標(biāo)簽;
[0025] (4)根據(jù)服務(wù)的端口號(hào)在端口和服務(wù)對(duì)應(yīng)列表中尋找對(duì)應(yīng)的服務(wù)名稱;
[0026] (5)根據(jù)服務(wù)名稱在客體標(biāo)簽列表找到相應(yīng)的客體標(biāo)簽;
[0027] (6)將主體安全標(biāo)簽與客體標(biāo)簽中的權(quán)限值進(jìn)行異或運(yùn)算;
[0028] (7)如果權(quán)限判定通過(guò),放行數(shù)據(jù)包;
[0029] (8)此請(qǐng)求的后續(xù)數(shù)據(jù)將直接放行,不在進(jìn)行權(quán)限判定。
[0030] 與現(xiàn)有技術(shù)相比,本發(fā)明具有以下有益效果:
[0031] (1)通過(guò)對(duì)系統(tǒng)軟件的來(lái)源及運(yùn)行進(jìn)行管理,保證軟件的可信、可識(shí)別和可控。
[0032] (2)能夠按照預(yù)設(shè)的配置策略對(duì)程序的關(guān)鍵模塊和進(jìn)程的資源訪問(wèn)進(jìn)行控制。
[0033] (3)實(shí)現(xiàn)對(duì)已知/未知惡意代碼的主動(dòng)防御,降低可執(zhí)行程序被破壞被篡改的風(fēng) 險(xiǎn),保障可執(zhí)行程序安全穩(wěn)定運(yùn)行。
【附圖說(shuō)明】
[0034]附圖1:本發(fā)明的可信計(jì)算密碼平臺(tái)體系結(jié)構(gòu)圖;
[0035] 附圖2:本發(fā)明的可信計(jì)算密碼模塊組成;
[0036] 附圖3:本發(fā)明的靜態(tài)度量體系結(jié)構(gòu)圖;
[0037] 附圖4:本發(fā)明的動(dòng)態(tài)度量總體實(shí)現(xiàn)框架;
[0038] 附圖5:本發(fā)明的內(nèi)核關(guān)鍵數(shù)據(jù)度量框圖;
[0039] 附圖6:本發(fā)明的進(jìn)程運(yùn)行狀態(tài)度量框圖;
[0040] 附圖7:本發(fā)明的進(jìn)程系統(tǒng)調(diào)用行為的度量框圖;
[0041]附圖8:本發(fā)明的白名單-軟件安裝控制機(jī)制;
[0042] 附圖9:本發(fā)明的可信計(jì)算密碼平臺(tái)和進(jìn)程強(qiáng)制訪問(wèn)關(guān)系圖;
[0043] 附圖10:本發(fā)明的基于安全標(biāo)簽的強(qiáng)制訪問(wèn)控制。
【具體實(shí)施方式】
[0044]下面結(jié)合附圖對(duì)本發(fā)明的【具體實(shí)施方式】做進(jìn)一步的詳細(xì)說(shuō)明。
[0045]當(dāng)系統(tǒng)啟動(dòng)時(shí),可信芯片首先對(duì)BIOS的完整性進(jìn)行度量,把度量結(jié)果與系統(tǒng)初始 運(yùn)行時(shí)采集的、保存在可信芯片中的預(yù)期值行比較。若結(jié)果一致,則表明BIOS沒(méi)有被篡改, 是可信的,BIOS中的度量代碼將對(duì)OS Loader(包括主引導(dǎo)扇區(qū)MBR、操作系統(tǒng)引導(dǎo)扇區(qū)等) 進(jìn)行度量,當(dāng)判定〇S Loader是可信的情況下,執(zhí)行操作系統(tǒng)的加載程序。OS Loader在加載 操作系統(tǒng)前,首先對(duì)操作系統(tǒng)和可信計(jì)算密碼平臺(tái)進(jìn)行度量,當(dāng)判定其可信后,加載并執(zhí)行 操作系統(tǒng)和可信計(jì)算密碼平臺(tái)。操作系統(tǒng)啟動(dòng)后,可信計(jì)算密碼平臺(tái)獲得控制權(quán),對(duì)應(yīng)用程 序啟動(dòng)和相關(guān)配置文件的完整性進(jìn)行度量,若應(yīng)用和重要配置文件是可信的,操作系統(tǒng)加 載并執(zhí)行該應(yīng)用程序。通過(guò)上述操作,可信計(jì)算平臺(tái)為系統(tǒng)啟動(dòng)建立了由BI0S、0S Loader、 操作系統(tǒng)、可信計(jì)算密碼平臺(tái)和應(yīng)用組成的完整的信任鏈,從根本上消除了系統(tǒng)被植入病 毒、木馬進(jìn)行破壞的可能性。
[0046]在系統(tǒng)運(yùn)行過(guò)程中,對(duì)系統(tǒng)和進(jìn)程是否處于可信的狀態(tài)進(jìn)行實(shí)時(shí)檢測(cè),對(duì)進(jìn)程的 系統(tǒng)調(diào)用行為,以及對(duì)運(yùn)行狀態(tài)中的內(nèi)核關(guān)鍵數(shù)據(jù)(例如系統(tǒng)調(diào)用表、中斷描述符表、關(guān)鍵 操作集指針等)、內(nèi)核代碼段、進(jìn)程代碼段、進(jìn)程共享庫(kù)列表等進(jìn)行度量,檢測(cè)系統(tǒng)和進(jìn)程空 間的完整性是否被篡改。若完整性被破壞,進(jìn)程的系統(tǒng)調(diào)用行為將被阻止,從而以主動(dòng)防御 的方式有效防范了利用系統(tǒng)漏洞將惡意代碼注入系統(tǒng)和進(jìn)程空間對(duì)系統(tǒng)進(jìn)行滲透性攻擊 的安全風(fēng)險(xiǎn)。
[0047] ?可信計(jì)算密碼平臺(tái)組成及工作原理:
[0048] 可信計(jì)算密碼平臺(tái)以密碼技術(shù)為構(gòu)建基礎(chǔ),由可信計(jì)算密碼模塊和可信軟件系統(tǒng) 組成,體系結(jié)構(gòu)如圖1所示。其中可信計(jì)算密碼模塊為信任根,為可信計(jì)算密碼平臺(tái)的運(yùn)行 提供可信環(huán)境,可信軟件系統(tǒng)是可信計(jì)算密碼平臺(tái)功能及服務(wù)實(shí)現(xiàn)的核心,并為可信計(jì)算 密碼平臺(tái)的管理提供保障。
[0049] 可信計(jì)算密碼平臺(tái)通過(guò)自下而上的可信支撐和信任的逐層傳遞,建立貫穿系統(tǒng)的 可信鏈,構(gòu)建可信計(jì)算環(huán)境。在終端主板上新增的可信計(jì)算密碼模塊是可信平臺(tái)的信任根, 包括可信度量根、可信存儲(chǔ)根、可信報(bào)告根,是平臺(tái)信任鏈傳遞的起點(diǎn)??尚哦攘扛峭暾?性度量的可信根,可信存儲(chǔ)根是數(shù)據(jù)存儲(chǔ)保護(hù)的可信根,可信報(bào)告根是完整性報(bào)告的可信 根;可信計(jì)算密碼平臺(tái)以可信計(jì)算密碼模塊自主可信根(RT)為核心部件實(shí)現(xiàn)完整性度量和 存儲(chǔ)機(jī)制,并實(shí)現(xiàn)可信引導(dǎo)和信任鏈的建立。可信軟件系統(tǒng)是可信計(jì)算密碼平臺(tái)的支撐軟 件,為操作系統(tǒng)和應(yīng)用軟件提供一個(gè)使用可信計(jì)算密碼平臺(tái)的接口,同時(shí),它