本發(fā)明涉及芯片安全,具體涉及一種通用處理器硬件安全綜合評價方法及系統(tǒng)。
背景技術(shù):
1、通用處理器芯片應(yīng)用與通信、制造、軌道交通等大量重要行業(yè)中。隨著技術(shù)的發(fā)展,上述行業(yè)對處理器芯片的硬件安全性開始關(guān)注。如何對處理器芯片整體硬件安全性進行綜合評估,是本發(fā)明要解決的關(guān)鍵問題。
2、現(xiàn)有的分析方法在涉及到處理器安全評價時,有以下不足:
3、1.主要以文檔分析為主,缺乏有效的技術(shù)分析手段;
4、2.未綜合考慮安全功能和安全漏洞對整體安全性的影響;
5、3.缺乏綜合安全評價的計算方法。
技術(shù)實現(xiàn)思路
1、本發(fā)明提出了一種通用處理器硬件安全綜合評價方法及系統(tǒng),通過結(jié)合確定性測試和隨機測試對處理器芯片的安全要求進行測試,同時,制定了基于安全要求及其重要性的綜合打分方法,實現(xiàn)對通用處理器硬件安全的綜合評估。
2、為實現(xiàn)上述目的,本發(fā)明的技術(shù)方案包括以下內(nèi)容。
3、一種通用處理器的硬件安全綜合評價方法,所述方法包括:
4、構(gòu)建處理器芯片的硬件安全要求,所述硬件安全要求包含功能正確性要求、數(shù)據(jù)完整性要求、信息私密性要求和系統(tǒng)可用性要求;
5、根據(jù)每一硬件安全要求對處理器芯片的影響,對該硬件安全要求進行重要性賦值;
6、基于處理器的微架構(gòu)示意圖,獲取該處理器對應(yīng)的硬件安全要求集合;其中,每一硬件安全要求對應(yīng)多個測試用例;
7、基于所述測試用例完成該處理器的確定檢測和/或隨機測試;
8、依據(jù)所述檢測結(jié)果與硬件安全要求的重要性賦值,得到該處理器的硬件安全綜合評價結(jié)果。
9、進一步地,所述據(jù)完整性要求包括:基本完整性要求和高級完整性要求;其中,
10、所述基本完整性要求包括:
11、涉及處理器基本功能的配置/控制寄存器、狀態(tài)寄存器不應(yīng)被篡改;
12、和/或,
13、處理器包含對多級電壓和時鐘毛刺的檢查電路或傳感器;
14、和/或,
15、不存在涉及完整性的高危cve漏洞和cwe缺陷;
16、所述高級完整性要求包括:
17、在可信檢驗過程中,存放可信驗證、測量結(jié)果的寄存器、或者用來執(zhí)行可信檢驗的可信根root?of?trust不被篡改或繞過;
18、和/或,
19、涉及安全域的配置/控制寄存器、狀態(tài)寄存器不被篡改;
20、和/或,
21、不存在涉及完整性的中危cve漏洞和cwe缺陷。
22、進一步地,所述信息私密性要求包括:基本機密性要求和高級機密性要求;其中,
23、所述基本機密性要求包括:
24、處理器中涉及共享和權(quán)限控制的對象不出現(xiàn)跨權(quán)限的非法訪問錯誤;
25、和/或,
26、處理器的物理訪問控制機制,不應(yīng)使未經(jīng)授權(quán)的參與者訪問需保護的區(qū)域;
27、和/或,
28、處理器的調(diào)試功能,不應(yīng)使未授權(quán)的參與者在特定模式下,篡改或訪問需保護的區(qū)域;
29、和/或,
30、處理器的加解密模塊,不應(yīng)出現(xiàn)側(cè)信道信息泄露;
31、和/或,
32、不存在涉及機密性的高危cve漏洞和cwe缺陷;
33、所述高級機密性要求包括:
34、存在安全域的處理器,不應(yīng)發(fā)生跨安全域的非法信息訪問;
35、和/或,
36、處理器中涉及共享和權(quán)限控制的對象,不應(yīng)將信息進行跨權(quán)限域的轉(zhuǎn)發(fā);
37、和/或,
38、不存在涉及機密性的中危cve漏洞和cwe缺陷。
39、進一步地,所述系統(tǒng)可用性要求包括:基本系統(tǒng)可用性要求和高級系統(tǒng)可用性要求;其中,
40、所述基本系統(tǒng)可用性要求包括:
41、不存在涉及可用性的高危cve漏洞和cwe缺陷;
42、和/或,
43、處理器的平均失效時間、平均無故障時間、平均修復時間不低于需求方對整個信息系統(tǒng)的可靠性要求;
44、所述高級系統(tǒng)可用性要求包括:不存在涉及可用性的中危cve漏洞和cwe缺陷。
45、進一步地,所述基于處理器的微架構(gòu)示意圖,獲取該處理器對應(yīng)的硬件安全要求集合,包括:
46、識別所述微架構(gòu)示意圖的邊框;
47、判斷邊框區(qū)域內(nèi)存在標注文字;
48、在存在標注文字的情況下,基于標注文字進行對象單元識別,得到該處理器的型號;
49、在不存在標注文字的情況下,基于單元庫對微架構(gòu)示意圖進行圖像匹配,得到該處理器的型號;
50、獲取該處理器的型號所對應(yīng)的安全要求集合。
51、進一步地,基于所述測試用例完成該處理器的確定檢測,包括:
52、按照測試用例要求的輸入指令序列及操作數(shù),生成測試輸入;
53、基于所述測試輸入,檢測處理器的輸出是否符合測試用例輸出要求;
54、若符合輸出要求,則該測試用例的測試通過;
55、若不符合輸出要求,則該測試用例的測試不通過。
56、進一步地,基于所述測試用例完成該處理器的隨機測試,包括:
57、提取測試用例的被測地址與輸入指令序列;
58、根據(jù)該被測地址與輸入指令序列,生成測試輸入序列;
59、基于所述測試輸入,檢測處理器的輸出是否符合測試用例輸出要求;
60、若不符合輸出要求,則該測試用例的測試不通過;
61、若符合輸出要求,則根據(jù)測試用例中覆蓋的指令數(shù)量和操作數(shù)的數(shù)量計算覆蓋率(nt+mt)/(n+m),并結(jié)合一設(shè)定閾值,判斷該測試用例的測試是否通過;其中,nt為實際測試中用到的指令數(shù)量,mt為實際測試中用到的操作數(shù)數(shù)量,n為處理器可用的指令數(shù)量,[0,m-1]為處理器可用的操作數(shù)范圍;
62、在基于覆蓋率得到該測試用例的測試不通過的情況下,變異指令及操作數(shù)后,重新執(zhí)行所述基于所述測試輸入,檢測處理器的輸出是否符合測試用例輸出要求。
63、進一步地,依據(jù)所述檢測結(jié)果與硬件安全要求的重要性賦值,得到該處理器的硬件安全綜合評價結(jié)果,包括:
64、計算每一硬件安全要求的測試扣分其中,di表示第i條硬件安全要求的重要性賦值,qi表示確定檢測中測試通過的第i條硬件安全要求對應(yīng)的測試用例數(shù)量,pi表示第i條安全要求對應(yīng)的確定檢測測試用例數(shù)量,tnpi表示隨時測試中未通過的測試用例集合,si表示第i條安全要求對應(yīng)的隨機檢測測試用例數(shù)量,cj表示隨機檢測中第j個測試用例對應(yīng)的工具檢測覆蓋率;
65、計算該處理器的硬件安全得分其中,a表示要求總分;
66、基于所述硬件安全得分z,得到該處理器的硬件安全綜合評價結(jié)果。
67、一種通用處理器的硬件安全綜合評價系統(tǒng),所述系統(tǒng)包括:
68、構(gòu)建模塊,用于構(gòu)建處理器芯片的硬件安全要求,所述硬件安全要求包含功能正確性要求、數(shù)據(jù)完整性要求、信息私密性要求和系統(tǒng)可用性要求;
69、賦值模塊,用于根據(jù)每一硬件安全要求對處理器芯片的影響,對該硬件安全要求進行重要性賦值;
70、處理模塊,同意基于處理器的微架構(gòu)示意圖,獲取該處理器對應(yīng)的硬件安全要求集合;其中,每一硬件安全要求對應(yīng)多個測試用例;
71、測試模塊,用于基于所述測試用例完成該處理器的確定檢測和/或隨機測試;
72、評估模塊,用于依據(jù)所述檢測結(jié)果與硬件安全要求的重要性賦值,得到該處理器的硬件安全綜合評價結(jié)果。
73、一種電子設(shè)備,其特征在于,所述電子設(shè)備包括:處理器以及存儲有計算機程序指令的存儲器;所述處理器執(zhí)行所述計算機程序指令時實現(xiàn)上述任一項所述的通用處理器的硬件安全綜合評價方法。
74、與現(xiàn)有技術(shù)相比,本發(fā)明至少具有以下有益效果。
75、1.采用安全要求集合的方式,定義了處理器硬件安全檢測應(yīng)包含的內(nèi)容。包含功能正確性、數(shù)據(jù)完整性、信息私密性和系統(tǒng)可用性四個維度。
76、2.采用重要性賦值的方法,對每個安全要求的重要程度進行定義,重要性賦值影響測試后的扣分分值。
77、3.采用確定測試和隨機測試相結(jié)合的測試方法,并將是否采用隨機測試納入到最終的安全評價分級依據(jù)中。