文/劉雷波
如何確保CPU芯片的硬件安全,是學術界和產業界一直面臨但尚未解決的國際公認難題。清華大學硬件安全與密碼芯片實驗室團隊提出了基于高安全、高靈活可重構芯片架構的“CPU硬件安全動態監測管控(DSC)技術”,可有效應對CPU硬件漏洞威脅,首次實現了芯片內第三方硅監控的CPU硬件安全解決方案,大幅提升CPU芯片的硬件安全性。
CPU芯片是計算系統中的核心部件。CPU硬件安全的攻擊可能帶來災難性的后果,比如,去年被曝光的“熔斷”“幽靈”CPU硬件漏洞,主流高性能處理器幾乎無一幸免,現存億萬臺服務器、臺式機、手機存在信息泄露風險,引發了安全領域的一場大地震。
實際上,隨著計算機和半導體技術的發展,CPU芯片已經成為高度復雜的芯片,其設計、制造、封裝及測試等過程涉及到全球化的產業分工,對所有環節實施有效監管幾乎不可能。
要在組成CPU的數十億到上百億顆晶體管中發現僅由數十顆晶體管就可以組成的惡意硬件,也是不可能完成的任務。而人為疏忽或技術限制造成的硬件漏洞,更是難尋蹤跡,防不勝防。
傳統的通過檢查CPU芯片的設計源碼、網表、版圖、管芯來查找惡意硬件和硬件漏洞的方法,就如同大海撈針,完全不可行。除硬件漏洞以外,還包括后門,例如CPU內嵌子系統PSP,可被遠程控制;前門,例如CPU微碼(uCode,即CPU硬件補丁)被惡意利用后,可改變指令行為;其他一些可能存在的惡意硬件,例如硬件木馬等。
清華大學研發的這項新技術可通過動態、實時監控CPU運行過程中的“合法行為”來發現“非法行為”,從根本上克服了傳統的CPU安全隱患、技術漏洞難以被監測和發現的困難。硬件木馬、硬件漏洞(如“熔斷”“幽靈”)、硬件后門,以及惡意利用硬件前門的行為,都能被該技術迅速發現并根據需要進行管控。
DSC技術充分利用了可重構動態監測管控芯片的特性,能夠在CPU運行過程中快速檢測出由于遭受惡意硬件攻擊或者由于硬件漏洞、前門、后門被非法利用而引起的CPU非預期行為。在此基礎上,再根據用戶需要對CPU芯片進行技術管控,例如,在檢查出非預期行為后,可隨即暫停CPU的工作,可報警并繼續收集攻擊數據然后再暫停CPU的工作,也可切斷惡意硬件攻擊的信號路徑等。
該技術將CPU從邏輯上分為兩部分:一部分是CPU運算引擎,另一部分是CPU監測管控電路。其中,運算引擎用于完成通常的運算任務,而監測控制電路則借助可重構計算邏輯。在不影響運算引擎正常工作的情況下,通過對比CPU運行時硬件的實際行為與指令集給出的預期行為的差異,來實時判斷CPU是否產生了非預期的操作,進而判定其是否存在硬件安全威脅。
基于這一技術和相關芯片,設計完成了首款具備硬件安全管控能力的服務器CPU芯片。目前,有多家服務器企業已基于該技術完成了高性能商用服務器的研制,部分產品已上市銷售。