本發明提出了一種基于可信計算的虛擬機啟動的保護方法,屬于信息安全。
背景技術:
1、云計算通過互聯網按需提供計算資源和服務,已成為現代信息技術的基石。它使得企業和個人可以方便地獲取計算能力、存儲、網絡資源和應用服務,而無需管理底層的物理硬件。云計算的優勢在于其靈活性、可擴展性和成本效益,使得用戶可以根據需求動態調整資源。虛擬化是實現云計算的關鍵技術之一,通過它可以將物理硬件資源抽象成多個虛擬機,每個虛擬機都運行獨立的操作系統和應用程序,彼此隔離。盡管虛擬化帶來了諸多便利和效率,但在虛擬機啟動和運行過程中仍然面臨多種安全問題,這些問題需要特別關注和應對。
2、在虛擬機的生命周期中,可分成運行、掛起、關機等狀態,其中在運行狀態存在著虛擬機內部的動態保障機制,但是在虛擬機的關機與掛起的非運行狀態,虛擬機以靜態文件存在于宿主機上。缺少相關的機制進行保護,同時虛擬機被非授權的主體修改,造成數據泄露等問題;如果虛擬機監視器被rootkit那么虛擬機的完整性就會被攻擊。目前在虛擬化環境中使用的保護技術主要有以下兩類:第一,虛擬機硬件中添加虛擬機可信模塊。在建立虛擬機監控器中的物理信任鏈之后,加入基于虛擬可信模塊的虛擬機信任鏈,從而實現從物理機啟動到虛擬機啟動的完整信任鏈。這種技術可以在一定程度上減輕來自虛擬機內部的rootkit攻擊風險,但虛擬機的磁盤依然以明文形式存儲,攻擊者可以通過獲取磁盤文件來讀取其中的數據。
3、第二,在虛擬機監控器中運行程序對虛擬機磁盤進行加密。這種技術使得虛擬機磁盤通常以密文形式存儲,即使攻擊者獲得了磁盤文件,也無法讀取其中的數據。然而,由于虛擬機磁盤的加解密操作是在虛擬機監控器中完成的,這使得存在于虛擬機監控器中的rootkit有可能獲取解密密鑰。
4、本發明是解決虛擬機非運行狀態時虛擬機鏡像可能被篡改,虛擬機更新時可能被冒用身份的問題,即使虛擬機監視器被rootkit也無法獲取解密密鑰。
技術實現思路
1、本發明提供了一種基于可信計算的虛擬機啟動完整性的保護方法,利用可信根實現對虛擬配置文件虛擬機鏡像文件的完整性的保護方法
2、為了解決現有的技術問題,本發明所采用的技術方案是:
3、一種基于可信計算的虛擬機啟動的保護方法,其特征在于:
4、(1)當檢測虛擬機管理器創建虛擬機時
5、①創建虛擬機身份密鑰;
6、②對虛擬機的鏡像及配置文件進行度量;
7、③將度量值加密存儲在度量基準值庫;
8、④將虛擬機身份密鑰私鑰加密存儲與虛擬機配置文件中,虛擬機身份密鑰公鑰存儲在密鑰管理庫中;
9、(2)當檢測虛擬機管理器開啟虛擬機時
10、①利用虛擬機自身的uuid查找并讀取密鑰管理庫中的虛擬機身份密鑰的公鑰與虛擬機配置文件中的虛擬機身份密鑰的私鑰認證虛擬機的身份;
11、②對虛擬機的硬盤文件及配置文件進行度量;
12、③從度量基準值庫中取得度量基準值;
13、④比對度量基準值與度量值,如果度量值與基準值一致,則繼續啟動虛擬機,否則終止啟動虛擬機;
14、(3)當檢測虛擬機管理器即將修改虛擬機配置時
15、①利用虛擬機uuid查找并讀取密鑰管理庫中的虛擬機身份密鑰的公鑰與虛擬機配置文件中的虛擬機身份密鑰的私鑰認證虛擬機的身份;
16、②驗證通過后,計算配置文件的新基準值;
17、③將新基準值更新虛擬機基準值庫中的基準值;
18、(4)當檢測虛擬機管理器將虛擬機掛起后或關機后
19、①利用虛擬機uuid查找并讀取密鑰管理庫中的虛擬機身份密鑰的公鑰與虛擬機配置文件中的虛擬機身份密鑰的私鑰認證虛擬機的身份;
20、②驗證通過后,計算硬盤及快照及配置文件的基準值;
21、③將新基準值更新虛擬機基準值庫中的基準值;
22、(5)當檢測虛擬機管理器即將繼續虛擬機時
23、①利用虛擬機uuid查找并讀取密鑰管理庫中的虛擬機身份密鑰的公鑰與虛擬機配置文件中的虛擬機身份密鑰的私鑰認證虛擬機的身份;
24、②對虛擬機的硬盤文件及配置文件進行度量;
25、③從度量基準值庫中取得度量基準值;
26、④比對度量基準值與度量值,如果度量值與基準值一致,則繼續啟動虛擬機,否則終止啟動虛擬機。
27、進一步的,以上所有加密及解密均在可信根中進行,因為可以保護密鑰不被非授權竊取。
28、本發明的有益效果是:解決虛擬機非運行狀態時虛擬機鏡像可能被篡改,而惡意用戶無法獲取該密鑰。所以保證了虛擬機數據的完整性,即使虛擬機監視器被rootkit也無法獲取解密密鑰。
1.一種基于可信計算的虛擬機啟動的保護方法,其特征在于: