,,,*
(1.清華大學(xué)微電子學(xué)研究所,北京10084;2.瀾起科技股份有限公司,上海200233)
網(wǎng)絡(luò)空間的發(fā)展帶來大數(shù)據(jù)的爆發(fā),海量數(shù)據(jù)的存儲(chǔ)與處理離不開高性能服務(wù)器的支持。作為網(wǎng)絡(luò)空間的重要節(jié)點(diǎn),服務(wù)器一直是網(wǎng)絡(luò)攻擊者的攻擊目標(biāo)和安全問題的重災(zāi)區(qū)。層出不窮的計(jì)算機(jī)病毒、木馬程序、軟件后門、間諜軟件、系統(tǒng)文件惡意篡改、破壞訪問權(quán)限等安全問題,嚴(yán)重威脅服務(wù)器的安全運(yùn)行。
中央處理器是服務(wù)器中最核心、最重要,也是最復(fù)雜的元器件。2018年1月,媒體披露了熔斷[1]和幽靈[2]漏洞,該漏洞已經(jīng)在處理器中存在了20年,利用的是現(xiàn)代高速處理器在性能提升時(shí)普遍使用的一種技術(shù),包括高速緩存、亂序執(zhí)行和推測執(zhí)行。尤其是幽靈,其影響范圍幾乎涵蓋市場上所有微處理器廠商。隨著時(shí)間的發(fā)展,業(yè)界的共識(shí)是:徹底解決該漏洞需要重新設(shè)計(jì)并更換處理器。這個(gè)事件說明,處理器硬件設(shè)計(jì)中的漏洞一直存在,將來也會(huì)存在于系統(tǒng)中。這些漏洞無法依靠軟件來解決,軟件只能增加漏洞被利用的難度,徹底解決需要處理器架構(gòu)顛覆性革新。但是,處理器結(jié)構(gòu)顛覆性革新并不容易,且大規(guī)模的存量服務(wù)器也不可能一朝一夕之間全部更新?lián)Q代。更為突出的是,以處理器為代表的芯片生產(chǎn)過程存在嚴(yán)重的安全隱患[3-9],尤其是處理器芯片的設(shè)計(jì)、制造、封裝及測試等過程已變得極其復(fù)雜,不可避免地要借助全球化分工與協(xié)作才能完成。在這個(gè)背景下,設(shè)計(jì)制造的每個(gè)環(huán)節(jié)甚至每個(gè)具體的步驟都有可能會(huì)引入以惡意硬件為代表的安全威脅。在處理器芯片設(shè)計(jì)階段,采用形式化驗(yàn)證手段可使惡意硬件的插入變得困難[10-13],但需要處理器黃金模型和惡意硬件模型等先驗(yàn)知識(shí)的導(dǎo)入,而這些先驗(yàn)知識(shí)極難獲得。在CPU芯片制造階段,依靠光學(xué)檢查[14]和功能測試[15-19]來查找惡意硬件費(fèi)用高昂、覆蓋率低,實(shí)現(xiàn)全面的安全監(jiān)控是非常困難的[20]。熔斷和幽靈等漏洞,以及硬件木馬的威脅,讓處理器硬件安全可信問題從學(xué)術(shù)研究領(lǐng)域或者小眾領(lǐng)域走入主流大眾的視野。
在這樣復(fù)雜嚴(yán)峻的軟硬件安全形勢下,必須從處理器芯片、服務(wù)器硬件結(jié)構(gòu)和操作系統(tǒng)等方面綜合采取措施,從根本上提高處理器及其服務(wù)器的安全性。清華大學(xué)經(jīng)過多年深耕,在可重構(gòu)技術(shù)基礎(chǔ)上提出了CPU硬件安全動(dòng)態(tài)監(jiān)測管控(DSC)技術(shù),與當(dāng)前可信計(jì)算技術(shù)結(jié)合,從硬件層面保證處理器芯片行為的可信,從系統(tǒng)層面保證服務(wù)器軟件行為的可信,為服務(wù)器的可信框架提供了新的思路。
本文通過對現(xiàn)有的處理器芯片安全風(fēng)險(xiǎn)的分析,探討了硬件安全面臨的風(fēng)險(xiǎn),指出基于可信處理器芯片的服務(wù)器軟硬件可信框架和應(yīng)用價(jià)值,最后對可信處理器芯片及其服務(wù)器可信框架的意義和價(jià)值進(jìn)行了探討。
本節(jié)將介紹當(dāng)前處理器芯片的特征,并對其硬件漏洞和安全風(fēng)險(xiǎn)做出分析,最后給出可信處理器芯片的實(shí)現(xiàn)原理和設(shè)計(jì)思路。
處理器芯片遵循芯片設(shè)計(jì)的規(guī)范流程,全生命周期包括設(shè)計(jì)、驗(yàn)證、生產(chǎn)、封裝、測試、應(yīng)用等眾多環(huán)節(jié),其復(fù)雜度和集成度極高,電路規(guī)模龐大(約10億~200億顆晶體管),是整個(gè)服務(wù)器的“大腦”。
處理器芯片的安全決定了整個(gè)服務(wù)器的安全,也是由服務(wù)器構(gòu)成的信息系統(tǒng)、網(wǎng)絡(luò)系統(tǒng)的安全基礎(chǔ)。目前我國高端處理器芯片的全生命周期嚴(yán)重依賴國外技術(shù)和廠家,存在巨大的安全風(fēng)險(xiǎn)和不穩(wěn)定因素。
根據(jù)上述特征,處理器芯片主要面臨如下安全風(fēng)險(xiǎn):
①在競爭激烈的處理器市場,更高性能的處理器芯片意味著更高的市場份額和利潤,處理器廠商在性能上大做文章,卻有意或無意地忽視了對處理器安全性的保障。同時(shí),處理器廠商為便于后期升級(jí)與維護(hù),通常會(huì)在處理器芯片中遺留后門,扮演“全知全能的上帝”,卻為用戶帶來了極大的安全隱患。
②芯片設(shè)計(jì)中涉及到的環(huán)節(jié)眾多、流程復(fù)雜,設(shè)計(jì)人員的疏忽所帶來的硬件漏洞或者前門,或別有用心者故意設(shè)計(jì)的硬件木馬,再或者不可信的程序代碼造成的敏感信息泄露,都會(huì)帶來潛在的系統(tǒng)安全風(fēng)險(xiǎn)。
③處理器芯片的硬件風(fēng)險(xiǎn)行為不受監(jiān)管,不留痕跡,且操作系統(tǒng)、殺毒軟件毫不知情。對處理器芯片的硬件行為不了解、不清楚、不控制,存在巨大的安全隱患。
可信處理器芯片的設(shè)計(jì)思路是將通用處理器芯片與清華大學(xué)可重構(gòu)計(jì)算處理器(RCP)芯片緊密耦合,利用RCP芯片的安全特性與可信屬性,對處理器芯片的硬件行為進(jìn)行監(jiān)測與管控,為服務(wù)器上的可信計(jì)算環(huán)境構(gòu)建標(biāo)準(zhǔn)軟硬件可信根。具體來說,可信處理器芯片的實(shí)現(xiàn)原理可以分為以下3部分:
①通過集成RCP安全芯片作為TPCM,實(shí)現(xiàn)對處理器芯片的直接控制,使TPCM成為服務(wù)器上電后第一個(gè)執(zhí)行部件,對其他部件進(jìn)行度量。只有每一環(huán)節(jié)都度量通過,服務(wù)器才會(huì)正常啟動(dòng)。
②通過集成RCP安全芯片,跟蹤監(jiān)測處理器芯片所有數(shù)據(jù)出入和運(yùn)行狀態(tài),一旦發(fā)現(xiàn)風(fēng)險(xiǎn)行為,即刻執(zhí)行預(yù)定安全策略,直至停止處理器芯片的運(yùn)行。
③通過控制處理器芯片的微碼更新,實(shí)現(xiàn)對處理器芯片微碼的安全管控。
基于可信處理器芯片的服務(wù)器軟硬件可信框架集成了清華大學(xué)CPU硬件安全動(dòng)態(tài)監(jiān)測管控(DSC)技術(shù)和現(xiàn)有的可信計(jì)算設(shè)計(jì)思想,針對服務(wù)器的各個(gè)主要軟件部件以及處理器芯片硬件部件提出了一整套可信解決方案,構(gòu)建了從軟件到硬件的全方位可信計(jì)算環(huán)境。同時(shí),集成的RCP芯片也可以提供高性能的國密算法分載服務(wù),內(nèi)部的可重構(gòu)硬件單元可靈活配置,支持用戶自定義算法。DSC技術(shù)同時(shí)可以管理BIOS/微碼等關(guān)鍵固件的更新,配合軟件漏洞防護(hù)機(jī)制,可以有效防止利用ME/熔斷/幽靈等漏洞的攻擊手段。可信框架組成如圖1所示。
圖1 基于可信處理器芯片的服務(wù)器軟硬件可信框架Fig.1 Server software and hardware trusted framework based on trusted CPU chip
基于可信處理器芯片的服務(wù)器區(qū)別于其他通用服務(wù)器的特征之一是依托國密SM2/3/4算法,采用可信計(jì)算TPCM設(shè)計(jì)思想,并將RCP安全芯片作為TPCM創(chuàng)新性的與處理器芯片緊密耦合。此方案為TPCM創(chuàng)造了可以直接控制處理器芯片、直接訪問處理器數(shù)據(jù)通道的獨(dú)特優(yōu)勢。
基于可信處理器芯片的服務(wù)器上電后,可信處理器芯片中的RCP安全芯片最先獲得執(zhí)行權(quán),先于CPU啟動(dòng)。依托國密算法的安全啟動(dòng)流程采用“環(huán)環(huán)相扣”的安全設(shè)計(jì)理念,以RCP內(nèi)部的BootLoader啟動(dòng)為起點(diǎn),OTP(one time programmable)數(shù)據(jù)為黃金標(biāo)準(zhǔn),依次完成后續(xù)各項(xiàng)數(shù)據(jù)的驗(yàn)證與啟動(dòng),最終達(dá)到安全啟動(dòng)操作系統(tǒng)的目的。
BootLoader是固化在RCP內(nèi)部ROM中的啟動(dòng)程序,ROM數(shù)據(jù)不可修改的特性保證了它的安全可靠性。BootLoader的任務(wù)是啟動(dòng)RCP Firmware,啟動(dòng)前需要進(jìn)行解密和驗(yàn)簽過程。RCP Firmware存儲(chǔ)在主板的閃存芯片中。該閃存芯片是可多次擦寫的存儲(chǔ)器,為保證Firmware不被篡改與剖析,其上所有的數(shù)據(jù)均使用國密算法簽名后加密存儲(chǔ)。
RCP固件校驗(yàn)通過后會(huì)啟動(dòng)度量BIOS過程。BIOS作為底層系統(tǒng)固件,是通用服務(wù)器上電后首個(gè)運(yùn)行程序,極易受到攻擊。未經(jīng)可信性驗(yàn)證的BIOS固件,是極大的系統(tǒng)安全隱患。攻擊者可通過執(zhí)行特定的BIOS代碼,啟動(dòng)非法設(shè)備,在操作系統(tǒng)未啟動(dòng)的情況下獲取硬盤敏感數(shù)據(jù),干擾服務(wù)器正常運(yùn)行?;诳尚盘幚砥餍酒姆?wù)器BIOS固件經(jīng)過安全化改造,內(nèi)置標(biāo)準(zhǔn)X.509格式的證書,配合標(biāo)準(zhǔn)的商業(yè)級(jí)CA系統(tǒng)與簽名系統(tǒng),可實(shí)現(xiàn)國密驗(yàn)簽以及對CA身份的鑒別。同時(shí),BIOS支持主備分區(qū)度量,任意分區(qū)BIOS度量可信后,RCP安全芯片將釋放處理器,處理器執(zhí)行可信BIOS代碼。此時(shí),度量失敗的BIOS固件分區(qū),會(huì)被自動(dòng)強(qiáng)制恢復(fù)。
BIOS執(zhí)行的最后階段會(huì)強(qiáng)制啟動(dòng)對系統(tǒng)引導(dǎo)程序的度量。系統(tǒng)引導(dǎo)程序首先要經(jīng)過CA的簽名認(rèn)證,然后與證書一起被寫入存儲(chǔ)介質(zhì)。BIOS通過預(yù)先存儲(chǔ)的CA信息庫可以對證書及系統(tǒng)引導(dǎo)程序進(jìn)行校驗(yàn)和度量,實(shí)現(xiàn)國密驗(yàn)簽以及對CA身份的鑒別。若度量成功,則說明該系統(tǒng)引導(dǎo)程序是CA認(rèn)證過的可信的數(shù)據(jù),信任鏈繼續(xù)傳遞。
系統(tǒng)引導(dǎo)程序執(zhí)行對系統(tǒng)程序、重要配置參數(shù)和可信計(jì)算應(yīng)用執(zhí)行環(huán)境進(jìn)行度量,度量通過會(huì)自動(dòng)啟動(dòng)系統(tǒng)程序。若度量失敗,會(huì)暫停啟動(dòng),向用戶告警此時(shí)可信計(jì)算運(yùn)行環(huán)境出現(xiàn)異常,用戶可自行選擇是否進(jìn)入系統(tǒng)。
可信計(jì)算應(yīng)用執(zhí)行環(huán)境會(huì)依據(jù)預(yù)先配置好的可信策略,確認(rèn)應(yīng)用程序、可執(zhí)行文件、系統(tǒng)內(nèi)核、文件系統(tǒng)、程序進(jìn)程等是否正常運(yùn)行。一旦檢測到非可信應(yīng)用程序執(zhí)行或者非可信行為,即阻斷異常狀態(tài),上報(bào)異常情況,必要時(shí)可以掛起系統(tǒng)或強(qiáng)行關(guān)機(jī)。需要強(qiáng)調(diào)的是,可信計(jì)算應(yīng)用執(zhí)行環(huán)境采用了RCP安全芯片提供的硬件國密SM2/3/4算法服務(wù)和標(biāo)準(zhǔn)可信密碼模塊接口,與處理器芯片緊密耦合,用戶無需再為服務(wù)器另行配置TCM或者密碼卡。RCP安全芯片與處理器芯片緊密耦合,大大降低了可信根被替換、硬件密碼模塊被攻擊的可能性,具備極高的安全性和穩(wěn)定性。
處理器運(yùn)行時(shí)硬件安全關(guān)乎信息系統(tǒng)安全,確保處理器芯片的硬件安全一直是學(xué)術(shù)界和產(chǎn)業(yè)界都難以解決的問題。2018年初大量出現(xiàn)的CPU安全漏洞“熔斷”、“幽靈”和至今無法解決的后續(xù)影響就印證了這一困境。為打破這一困局,清華大學(xué)提出“CPU硬件安全動(dòng)態(tài)監(jiān)測管控(DSC)技術(shù)”,有效應(yīng)對處理器硬件漏洞威脅,首次實(shí)現(xiàn)了片內(nèi)第3方硅監(jiān)控的處理器硬件安全解決方案,大幅提升處理器芯片的硬件安全性。該技術(shù)能夠在處理器芯片運(yùn)行過程中快速檢測出由于遭受惡意硬件攻擊或者由于硬件漏洞、前門、后門被非法利用而引起的處理器芯片非預(yù)期行為。在此基礎(chǔ)上,再根據(jù)用戶需要對處理器芯片進(jìn)行技術(shù)管控。
該技術(shù)將處理器從邏輯上分為2部分:一是處理器運(yùn)算引擎,二是處理器監(jiān)測管控電路,其中,運(yùn)算引擎用于完成通常的運(yùn)算任務(wù),而監(jiān)測控制電路則借助可重構(gòu)計(jì)算邏輯,在不影響運(yùn)算引擎正常工作的情況下,通過對比處理器運(yùn)行時(shí)硬件的實(shí)際行為與指令集給出的預(yù)期行為的差異來實(shí)時(shí)判斷處理器是否產(chǎn)生了非預(yù)期的操作,進(jìn)而判定其是否存在硬件安全威脅。該技術(shù)不完全依賴硬件漏洞、前門、后門的先驗(yàn)知識(shí),能夠在處理器部署后的真實(shí)運(yùn)行場景中檢測出硬件安全威脅并消除其危害,具有優(yōu)異的動(dòng)態(tài)重構(gòu)、局部重構(gòu)和白片特性,相對于傳統(tǒng)計(jì)算電路,具有很高的硬件安全性。在芯片制造后還能夠被重新編程配置,使得同一監(jiān)測管控電路能夠適配多種處理器芯片運(yùn)算引擎。
基于可信處理器芯片的服務(wù)器依托于RCP安全芯片的獨(dú)特優(yōu)勢,以及清華大學(xué)最新的DSC技術(shù),實(shí)現(xiàn)了處理器動(dòng)態(tài)監(jiān)測管控功能,重點(diǎn)解決處理器硬件行為是否可信的問題。
在處理器動(dòng)態(tài)監(jiān)測管控方案中,采用處理器動(dòng)態(tài)安全檢查模塊對一個(gè)或多個(gè)處理器的行為進(jìn)行實(shí)時(shí)的監(jiān)視和判斷,以保證正在運(yùn)行的處理器的功能行為符合處理器廠商公布的運(yùn)行基準(zhǔn),比如處理器的軟件運(yùn)行規(guī)格說明書(software developing manual/specification),保證“處理器的非預(yù)期行為(unexpected behavior)”可以被快速檢測出來。
處理器動(dòng)態(tài)安全檢查模塊對目標(biāo)處理器行為的實(shí)時(shí)監(jiān)控和判斷發(fā)生且僅發(fā)生在一些離散的時(shí)間片內(nèi),將這些離散的時(shí)間片稱為監(jiān)控區(qū)間(monitor interval),每個(gè)監(jiān)控區(qū)間的開始與結(jié)束,均由處理器動(dòng)態(tài)安全檢查模塊控制。
在監(jiān)控區(qū)間內(nèi),處理器動(dòng)態(tài)安全檢查模塊對目標(biāo)處理器的執(zhí)行過程進(jìn)行監(jiān)控,對執(zhí)行過程中的有效行為進(jìn)行判斷,判斷目標(biāo)處理器的行為是否完全并嚴(yán)格遵守處理器廠商公布的運(yùn)行基準(zhǔn)。執(zhí)行過程中的有效行為指的是在監(jiān)控區(qū)間內(nèi)導(dǎo)致處理器狀態(tài)、內(nèi)存、I/O發(fā)生改變的行為。
在DSC方案中,目標(biāo)處理器正常運(yùn)行時(shí),處理器動(dòng)態(tài)安全監(jiān)控模塊按照設(shè)定的檢查點(diǎn)進(jìn)行周期性的采集、回放分析與驗(yàn)證,對檢測出來的“處理器的非預(yù)期行為”進(jìn)行報(bào)告,并根據(jù)用戶需求對處理器進(jìn)行安全控制。
基于可信處理器芯片的服務(wù)器算法分載是指將加解密運(yùn)算的任務(wù)從處理器芯片中卸載到RCP安全芯片硬件密碼模塊上執(zhí)行,可以實(shí)現(xiàn)對密碼算法的加速,同時(shí)降低處理器芯片的占用率。RCP安全芯片內(nèi)部集成的可重構(gòu)硬件單元具有優(yōu)異的動(dòng)態(tài)重構(gòu)、局部重構(gòu)和白片特性[21-22],相對于傳統(tǒng)計(jì)算電路,如指令驅(qū)動(dòng)處理器、專用集成電路、可編程邏輯門陣列等,具有很高的硬件安全性。此外,可重構(gòu)硬件單元兼具高能效性和高靈活性,在芯片制造后還能夠被重新編程配置,能夠適配多種密碼算法。
基于可信處理器芯片的服務(wù)器算法分載支持公鑰、分組、摘要、消息算法和流算法在內(nèi)的多種主流密碼算法和工作模式,支持國密SM2/3/4算法和國際上流行的密碼算法或用戶自定義算法,支持Library/SDK/IDE 3種使用方式。Library方式對用戶而言是最便利的。DSC提供的密碼算法驅(qū)動(dòng)模塊中已經(jīng)實(shí)現(xiàn)了OpenSSL引擎,因此,對于基于OpenSSL開發(fā)的用戶應(yīng)用程序,無需修改代碼或重新編譯,即可以直接通過OpenSSL引擎調(diào)用算法分載模塊提供的高速硬件密碼算法,享受高性能的計(jì)算加速功能。SDK方式可以讓用戶基于DSC算法分載模塊提供的密碼算法庫來做二次開發(fā)。SDK封裝了DSC算法分載模塊的硬件驅(qū)動(dòng),用戶可基于SDK提供的密碼算法API進(jìn)行編程,只需要關(guān)心密碼算法的使用,極大地簡化了開發(fā)工作。算法分載模塊還提供可視化的IDE集成開發(fā)環(huán)境,基于內(nèi)部集成的高性能的可重構(gòu)運(yùn)算單元。用戶可以通過IDE,針對可重構(gòu)運(yùn)算單元開發(fā)自定義的密碼或安全算法,并進(jìn)行在線調(diào)試。
在處理器安全領(lǐng)域,有一類威脅來自廠商提供的、用于處理器和主板相關(guān)的功能管理的子系統(tǒng),比如:Intel板載主動(dòng)管理技術(shù)的載體ME(management engine)。對于處理器來說,ME是獨(dú)立的子系統(tǒng),ME軟件和BIOS固件打包在一起,帶有網(wǎng)絡(luò)接口,處理器廠商會(huì)用來給用戶提供類似遠(yuǎn)程管理功能。ME運(yùn)行在非常底層的系統(tǒng),這決定了ME可以控制處理器運(yùn)行狀態(tài),任意獲取系統(tǒng)信息,一旦被非法利用,就是一個(gè)功能強(qiáng)大的后門[23]。
基于可信處理器芯片的服務(wù)器可針對ME功能進(jìn)行管理,僅允許啟動(dòng)Mini ME。相比于全功能ME,Mini ME禁用了容易引入漏洞的遠(yuǎn)程管理和訪問功能,阻斷了ME訪問用戶運(yùn)算空間的邏輯路徑,僅保留基本的南橋芯片管理功能,如芯片初始化和上電時(shí)序設(shè)置,上電時(shí)序相關(guān)的功能控制和更新等,規(guī)避了ME引發(fā)的安全風(fēng)險(xiǎn)。ME的固件將和BIOS一起進(jìn)行簽名。同時(shí),ME固件升級(jí)也和BIOS鏡像一起,必須通過驗(yàn)簽,確保是安全的ME固件才允許被更新至服務(wù)器。此外,透過ME等子系統(tǒng)對系統(tǒng)的訪問都可以被DSC技術(shù)捕獲,并且發(fā)出預(yù)警。
微碼更新(microcode update)是由處理器廠商制定的一種基于微碼補(bǔ)丁文件,修復(fù)處理器芯片漏洞和升級(jí)的機(jī)制。處理器廠商會(huì)根據(jù)發(fā)現(xiàn)的漏洞以及更新需要,定期發(fā)布微碼文件,同BIOS、OEM廠商、OS協(xié)作對處理器進(jìn)行漏洞修復(fù)和升級(jí)。
微碼設(shè)計(jì)用于修補(bǔ)處理器漏洞和升級(jí),如果不使用最新的微碼,部分硬件設(shè)計(jì)問題可能無法得到修復(fù),給系統(tǒng)帶來風(fēng)險(xiǎn)。一個(gè)典型的例子是:在已有解決方案中,“幽靈” 的部分變種必須通過微碼的更新來進(jìn)行修復(fù),如果沒有修復(fù)那么虛擬機(jī)的隔離性可能存在漏洞,虛擬機(jī)用戶可以輕松獲取主機(jī)內(nèi)存中的敏感信息。而貿(mào)然使用未經(jīng)長時(shí)間認(rèn)證的微碼也會(huì)存在問題,例如2018年“幽靈”和“熔斷”事件中,某些CPU廠商提供微碼更新后不久就進(jìn)行了召回,原因是更新的微碼存在導(dǎo)致系統(tǒng)穩(wěn)定性的問題。
綜合起來,作為對安全性要求較高的用戶,微碼更新在用戶端首先需要能夠受控,以滿足安全可控的要求;其次需要提供對微碼的驗(yàn)證機(jī)制。傳統(tǒng)的處理器在使用過程中微碼被更新,不同途徑更新的微碼僅僅能夠保證微碼來自于廠商,但是用戶并沒有足夠的手段對系統(tǒng)中處理器核心的微碼進(jìn)行管控。
基于可信處理器芯片的服務(wù)器設(shè)計(jì)了微碼更新安全管理機(jī)制,只有經(jīng)過安全認(rèn)證的微碼才允許升級(jí),增加了微碼升級(jí)的安全可控性和微碼更新文件的可追溯性。
在微碼更新的BIOS路徑中,服務(wù)器通過安全啟動(dòng)的功能對BIOS進(jìn)行簽名,作為BIOS一部分的處理器微碼版本可以得到管控。而在運(yùn)行時(shí),面臨多種來源的微碼更新途徑和需求,DSC服務(wù)層由于工作在用戶操作系統(tǒng)底層與硬件層之間,除了提供正常的處理器檢查功能以外,可以對微碼更新的操作進(jìn)行過濾:僅用戶指定的微碼可以被更新到處理器中,用戶指定這一操作是通過對微碼文件進(jìn)行的簽名來完成的。
經(jīng)過用戶特殊簽名后的微碼文件,可以像正常的微碼一樣被用戶操作系統(tǒng)所識(shí)別,并被嘗試寫入到處理器中。寫入微碼的操作會(huì)被DSC服務(wù)層攔截,DSC服務(wù)層可以進(jìn)一步檢測該微碼的特殊簽名是否正確,這一步驟是通過使用預(yù)制的證書來完成,如果簽名認(rèn)證通過,那么微碼更新流程將會(huì)繼續(xù)進(jìn)行,物理處理器中的微碼得到升級(jí);如果簽名認(rèn)證未能夠通過,或者微碼本身不包含用戶的特殊簽名(例如:直接從處理器廠商拿到的微碼文件),該微碼更新將會(huì)被拒絕,從根本上保障了微碼更新的各種途徑都是可控的。
瀾起科技發(fā)布的津逮處理器平臺(tái)[24]為基于可信處理器芯片的服務(wù)器軟硬件可信框架提供了驗(yàn)證平臺(tái)與應(yīng)用環(huán)境。津逮處理器將Intel至強(qiáng)處理器與RCP安全芯片在硅級(jí)別集成互聯(lián),統(tǒng)一封裝。津逮處理器結(jié)構(gòu)示意圖如圖2所示。
圖2 津逮處理器結(jié)構(gòu)示意圖Fig.2 Structure diagram of Jintide CPU
津逮處理器平臺(tái)集成了目前成熟的可信計(jì)算技術(shù),并且在清華大學(xué)DSC技術(shù)的基礎(chǔ)上,實(shí)現(xiàn)了處理器動(dòng)態(tài)監(jiān)測管控、國密/自定義算法分載、漏洞防護(hù)和固件管理等安全功能,為服務(wù)器安全可信提供了從硬件到軟件的一攬子安全可信解決方案。
處理器芯片的硬件安全是計(jì)算系統(tǒng)的安全根基,若無法確保處理器的硬件安全可信,則無法保證運(yùn)行其上的軟件的安全,與之緊密關(guān)聯(lián)的系統(tǒng)安全和網(wǎng)絡(luò)安全也會(huì)受到嚴(yán)重威脅。基于可信處理器芯片的服務(wù)器可信框架集成了現(xiàn)有可信計(jì)算的成熟技術(shù),實(shí)現(xiàn)了清華大學(xué)的DSC技術(shù),并提供高性能算法分載功能、漏洞防護(hù)和固件管理功能,從硬件安全、軟件安全、系統(tǒng)安全、密碼服務(wù)支持、可信服務(wù)支持等各方面提供了整套的解決方案。服務(wù)器可信框架的可信根源于可信處理器芯片集成的安全模塊,即RCP安全芯片,安全性更高,終端用戶無需在通用服務(wù)器上再次配置可信計(jì)算環(huán)境。
基于可信處理器芯片的服務(wù)器可信框架不局限于處理器芯片的運(yùn)行原理、架構(gòu),不與現(xiàn)有的安全可信框架沖突,相反,處理器動(dòng)態(tài)監(jiān)測管控功能從硬件安全角度出發(fā),在不影響處理器正常工作的前提下,對處理器芯片的硬件行為進(jìn)行監(jiān)測和管控,具有良好的生態(tài)兼容性安全互補(bǔ)性。
在高安全性應(yīng)用場景下,可信處理器芯片集成的安全模塊具有對處理器芯片完全的控制權(quán),并支持動(dòng)態(tài)配置的硬件安全監(jiān)測顆粒度,在必要時(shí)可以直接停止處理器的運(yùn)行。
目前,基于可信處理器芯片的服務(wù)器可信框架正處于研發(fā)階段,其主要功能已在瀾起科技發(fā)布的津逮處理器平臺(tái)上得到了驗(yàn)證。本文分析了現(xiàn)有的處理器芯片安全風(fēng)險(xiǎn),給出了可信處理器芯片的定義和實(shí)現(xiàn)原理,并對基于可信處理器芯片的服務(wù)器軟硬件可信框架的安全功能進(jìn)行逐一分析,闡明了基于可信處理器芯片的服務(wù)器可信框架的意義和價(jià)值。