一种嵌套页表度量方法、装置及相关设备制造方法及图纸

技术编号:27134633 阅读:15 留言:0更新日期:2021-01-25 20:35
本发明专利技术实施例提供了一种嵌套页表度量方法、装置及相关设备,其中,安全处理器可以在虚拟机为运行状态时,度量所述虚拟机的NPT,得到所述虚拟机的NPT度量结果,并在所述NPT度量结果为异常时,向所述虚拟机发送异常通知,从而使虚拟机基于所述异常通知,执行所述虚拟机的异常处理流程,保证了虚拟机的NPT的完整性,提高了虚拟机的安全性。高了虚拟机的安全性。高了虚拟机的安全性。

【技术实现步骤摘要】
一种嵌套页表度量方法、装置及相关设备


[0001]本专利技术实施例涉及可信度量
,具体涉及一种嵌套页表度量方法、装置及相关设备。

技术介绍

[0002]通过虚拟化技术(Virtualization),物理主机可虚拟化出多台虚拟机(Virtual Machine,VM),从而最大化的利用物理主机的硬件资源;虚拟化出的每台虚拟机可被分配内存(空间),每台虚拟机分配的内存可加载支持虚拟机运行所用的虚拟机代码。
[0003]目前虚拟化技术中,虚拟机的嵌套页表(Nested Page Table,NPT)由主机维护,从而使得主机可以通过篡改虚拟机的页表的信息,并结合其它攻击技术使虚拟机泄露机密信息或执行未授权代码,对虚拟机内存数据的安全造成威胁。

技术实现思路

[0004]有鉴于此,本专利技术实施例提供一种嵌套页表度量方法、装置及相关设备,以提高虚拟机的安全性。
[0005]为实现上述目的,本专利技术实施例提供如下技术方案:
[0006]第一方面,本专利技术实施例提供一种嵌套页表度量方法,应用于安全处理器,包括:
[0007]检测虚拟机的状态;
[0008]在所述虚拟机为运行状态时,度量所述虚拟机的NPT,得到所述虚拟机的NPT度量结果;
[0009]在所述NPT度量结果为异常时,向所述虚拟机发送异常通知。
[0010]第二方面,本专利技术实施例提供一种嵌套页表度量方法,应用于虚拟机,包括:
[0011]获取安全处理器发送的异常通知;
>[0012]基于所述异常通知,执行所述虚拟机的异常处理流程。
[0013]第三方面,本专利技术实施例提供一种嵌套页表度量装置,包括:
[0014]检测模块,用于检测虚拟机的状态;
[0015]度量模块,用于在所述虚拟机为运行状态时,度量所述虚拟机的NPT,得到所述虚拟机的NPT度量结果;
[0016]异常通知发送模块,用于在所述NPT度量结果为异常时,向所述虚拟机发送异常通知。
[0017]第四方面,本专利技术实施例提供一种嵌套页表度量装置,包括:
[0018]异常通知获取模块,用于获取安全处理器发送的异常通知;
[0019]异常处理执行模块,用于基于所述异常通知,执行所述虚拟机的异常处理流程。
[0020]第五方面,本专利技术实施例提供一种安全处理器,用于执行第一方面所述的嵌套页表度量方法。
[0021]第六方面,本专利技术实施例提供一种安全处理器,所述安全处理器包括嵌套页表度
量模块,所述嵌套页表度量模块用于执行第一方面所述的嵌套页表度量方法。
[0022]第七方面,本专利技术实施例提供一种虚拟机,用于执行第二方面所述的嵌套页表度量方法。
[0023]第八方面,本专利技术实施例提供一种虚拟机,所述虚拟机包括异常处理模块,所述异常处理模块用于执行第二方面所述的嵌套页表度量方法。
[0024]第九方面,本专利技术实施例提供一种存储介质,所述存储介质存储有,实现第一方面所述的嵌套页表度量方法的程序,或,实现第二方面所述的嵌套页表度量方法的程序。
[0025]第十方面,本专利技术实施例提供一种计算机系统,包括:第五至六任一方面所述的安全处理器和第七至八任一方面所述的虚拟机。
[0026]本专利技术实施例提供的嵌套页表度量方法、装置及相关设备,其中,安全处理器可以在虚拟机为运行状态时,度量所述虚拟机的NPT,得到所述虚拟机的NPT度量结果,并在所述NPT度量结果为异常时,向所述虚拟机发送异常通知,从而使虚拟机基于所述异常通知,执行所述虚拟机的异常处理流程,保证了虚拟机的NPT的完整性,提高了虚拟机的安全性。
附图说明
[0027]为了更清楚地说明本申请实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本申请的实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据提供的附图获得其他的附图。
[0028]图1是本专利技术实施例虚拟化环境的系统架构示意图;
[0029]图2是本专利技术实施例虚拟化环境的系统架构示意图;
[0030]图3是本专利技术实施例启动并运行虚拟机的一种可选流程图;
[0031]图4是本专利技术实施例NPT度量的一种可选方法流程图;
[0032]图5是本专利技术实施例虚拟机执行异常处理的一种可选方法流程图;
[0033]图6是本专利技术实施例确认度量结果为异常的一种可选方法流程图;
[0034]图7是本专利技术实施例为虚拟机和安全处理器建立安全通信连接的一种可选方法流程图;
[0035]图8是本专利技术实施例嵌套页表度量装置的一种可选框图;
[0036]图9是本专利技术实施例嵌套页表度量装置的另一种可选框图。
具体实施方式
[0037]在虚拟化
,虚拟机内的数据或代码对主机都是可见的,当主机不可信或受到攻击时,虚拟机的安全性就无法保证。加密虚拟化基于CPU(Central Processing Unit,处理器)内置的安全处理器,使用随机生成的秘钥对虚拟机的内存进行加密保护,以提高虚拟机的安全性。
[0038]其中,加密虚拟化技术在生成秘钥时,针对不同的虚拟机生成的不同的随机秘钥,且秘钥只对安全处理器内可见,对主机不可见,使主机在读取虚拟机内存时,读到的均为密文,避免了主机或其他虚拟机窃取虚拟机内的信息,以增强虚拟机内信息的机密性。
[0039]然而,在虚拟机内程序访问内存时,通常使用虚拟地址(Guest Virtual Address,
GVA),GVA由处理器(Central Processing Unit,CPU)上的内存管理硬件模块经过两套页表:客户机页表(Guest Page Table,GPT)和嵌套页表(Nested Page Table,NPT),最终翻译成宿主机物理地址(Host Physical Address,HPA)才能实现对物理内存的访问。GPT完全由虚拟机自身维护,位于虚拟机内存中,有加密保护;但是NPT不在虚拟机加密的保护范围内,且由主机维护,从而为主机上程序攻击加密虚拟机提供了可能。主机上的程序可以通过篡改NPT并结合其它攻击技术使虚拟机泄露机密信息或执行未授权代码,对虚拟机内存数据的安全造成威胁。
[0040]基于此,本专利技术实施例提供了一种嵌套页表度量方法、装置及相关设备,其中,安全处理器可以在虚拟机为运行状态时,度量所述虚拟机的NPT,得到所述虚拟机的NPT度量结果,并在所述NPT度量结果为异常时,向所述虚拟机发送异常通知,从而使虚拟机基于所述异常通知,执行所述虚拟机的异常处理流程,保证了虚拟机的NPT的完整性,提高了虚拟机的安全性。
[0041]下面将结合本专利技术实施例中的附图,对本专利技术实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本专利技术一部分实施例,而不是全部的实施例。基于本专利技术中的实施例,本领域普通本文档来自技高网...

【技术保护点】

【技术特征摘要】
1.一种嵌套页表度量方法,其特征在于,应用于安全处理器,包括:检测虚拟机的状态;在所述虚拟机为运行状态时,度量所述虚拟机的嵌套页表,得到所述虚拟机的嵌套页表度量结果;在所述嵌套页表度量结果为异常时,向所述虚拟机发送异常通知。2.根据权利要求1所述的嵌套页表度量方法,其特征在于,还包括:在所述虚拟机为启动状态时,且在虚拟机管理器创建所述虚拟机的嵌套页表后,度量所述虚拟机的嵌套页表,得到所述虚拟机的嵌套页表度量值;将度量所述虚拟机的嵌套页表度量值作为所述虚拟机的嵌套页表的度量基准值。3.根据权利要求2所述的嵌套页表度量方法,其特征在于,所述在所述虚拟机为启动状态时,且在虚拟机管理器创建所述虚拟机的嵌套页表后,度量所述虚拟机的嵌套页表的步骤,在虚拟机管理器装载所述虚拟机的虚拟机镜像至所述虚拟机分配的内存的步骤之前。4.根据权利要求2所述的嵌套页表度量方法,其特征在于,所述在所述虚拟机为运行状态时,度量所述虚拟机的嵌套页表,得到所述虚拟机的嵌套页表度量结果,包括:度量所述虚拟机的嵌套页表,得到对应所述虚拟机的嵌套页表的度量值;比较所述度量值和所述虚拟机的嵌套页表的度量基准值,确定所述虚拟机的嵌套页表度量结果。5.根据权利要求1所述的嵌套页表度量方法,其特征在于,在所述嵌套页表度量结果为异常时,向所述虚拟机发送异常通知之后,还包括:接收所述虚拟机发送的异常确认命令,所述异常确认命令用于指示确认所述虚拟机的嵌套页表的度量结果是否为异常;确认所述虚拟机的嵌套页表的度量结果是否为异常,得到对应所述异常确认命令的异常确认结果;发送所述异常确认结果至所述虚拟机。6.根据权利要求2所述的嵌套页表度量方法,其特征在于,在运行虚拟机之后,在所述虚拟机为运行状态时,度量所述虚拟机的嵌套页表之前,还包括:建立与所述虚拟机通信的安全通信连接。7.根据权利要求6所述的嵌套页表度量方法,其特征在于,所述建立与所述虚拟机通信的安全通信连接,包括:接收虚拟机发送的证书发送请求;基于所述证书发送请求,发送所述安全处理器证书至所述虚拟机;在所述虚拟机验证所述安全处理器证书后,与所述虚拟机协商生成主密钥;基于所述主密钥,推导得到与所述虚拟机通信的加密密钥和一致性密钥;其中,所述加密密钥和一致性密钥用于在与所述虚拟机通信时进行加密和一致性验证。8.一种嵌套页表度量方法,其特征在于,应用于虚拟机,包括:获取安全处理器发送的异常通知;基于所述异常通知,执行所述虚拟机的异常处理流程。9.根据权利要求8所述的嵌套页表度量方法,其特征在于,所述执行所述虚拟机的异常
处理流程,包括:确认所述虚拟机的嵌套页表的度量结果是否为异常;在所述嵌套页表的度量结果为异常时,对所述虚...

【专利技术属性】
技术研发人员:陈善应志伟
申请(专利权)人:海光信息技术股份有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1