发明名称 一种净室可信虚拟机监控器的远程认证方法
摘要 本发明提供了一种净室可信虚拟机监控器的远程认证方法,该方法采用回退技术,通过注入一个导致虚拟机无条件退出的指令,强迫CPU内核从用户虚拟机转移到VMM,保证测量代理可以测量VMM的完整性,并且能够防止VMM对认证过程进行伪造、篡改;在初始化设置步骤中,将系统管理中断处理器SMI调用的类型标识存储于CR3控制寄存器中,一旦有中断发生,系统终端处理器首先会将发生的中断类型与存储在CR3控制寄存器中的中断类型进行匹配;若未匹配成功则不允许此中断运行,从而防止“恶意”中断运行。充分保证了隐密地对VMM进行测量,验证过程的原子性,测量环境信息的完整性以及测量结果的真实性。
申请公布号 CN105786588A 申请公布日期 2016.07.20
申请号 CN201610096110.1 申请日期 2016.02.22
申请人 中南大学 发明人 王国军;朱小玉;舒扬;郑瑾
分类号 G06F9/455(2006.01)I;G06F21/55(2013.01)I 主分类号 G06F9/455(2006.01)I
代理机构 长沙市融智专利事务所 43114 代理人 龚燕妮
主权项 一种净室可信虚拟机监控器的远程认证方法,其特征在于,包括以下步骤:步骤1:初始化设置;步骤1.1:在待监控的目标节点上安装能够远程触发系统管理中断处理器SMI的频带外信道软件,同时对系统管理中断处理器SMI调用的类型标识存储空间进行设置,并将系统管理中断处理器代码以及数据的SHA1值储存到可信平台模块TPM中的非易失防篡改存储器当中;所述系统管理中断处理器SMI调用的类型标识存储于CR3控制寄存器中;步骤1.2:在基于传统BIOS的可信计算平台上安装虚拟机监控器;步骤1.3:在虚拟机监控器当中增加测量代理模块,并将增加的测量代理模块的数据以及代码的哈希值保存在可信平台模块TPM中的非易失防篡改存储器当中,且所述测量代理模块采用回退机制和异常中断机制;步骤1.4:利用虚拟器监控器中的增加的测量代理模块计算所述虚拟机监控器中数据以及代码的哈希函数值,并将此哈希函数值存储在可信平台模块TPM中的非易失防篡改存储器当中;步骤1.5:在目标节点的系统中安装一个远程认证代理模块,同时将远程认证代理模块的数据及代码的哈希值保存到可信平台模块TPM中的非易失防篡改存储器当中;步骤2:可信启动目标节点系统;步骤2.1:利用符合TCG规范的不可刷写BIOS代码片段作为起点,启动目标节点的系统BIOS;步骤2.2:利用信任链传递机制,基于可信平台TPM模块可信启动目标节点系统;步骤2.3:利用可信平台TPM模块中的RSA公钥密码算法生成一对公钥和私钥,在目标节点系统锁住系统管理随机存取储存器SMRAM之前,将私钥存放在系统管理随机存取储存器SMRAM中,并且将公钥存放在可信平台模块TPM的静态平台配置寄存器PCR中;步骤2.4:验证远程认证代理的完整性;利用可信平台模块TPM中的SHA1函数生成器计算远程认证代理的数据及代码的SHA1值,并将其与初始化设置步骤1.5中存储在TPM中的非易失性存储器当中的远程认证代理的数据及代码的SHA1值进行匹配,若匹配成功,则远程认证代理完整,进入步骤2.5;否则,发出认证环境完整性失败报告至远程认证端,然后重置远程认证代理,并重新进行验证步骤2.4;步骤2.5:验证虚拟机监控器当中的测量代理和SMI处理器的完整性;若通过完整性验证,则进入步骤2.6;若未通过完整性验证,则进入步骤5;步骤2.6:等待远程认证中断,当中断信号产生后利用初始化设置步骤1.3中虚拟监控器中的测量代理模块对目标节点的系统动态完整性进行测量,并将测量结果发送至远程认证端;步骤3:远程认证用户向目标节点中的认证代理模块发送认证请求,同时发送一个随机数;步骤4:生成TPM私钥签名和SMI私钥签名;所述目标节点中的认证代理模块将收到的随机数分别发送可信平台模块TPM和系统管理中断处理器SMI,所述可信平台模块TPM和系统管理中断处理器SMI针对收到的随机数分别利用存放在SMRAM中的私钥进行签名,生成TPM私钥签名和SMI私钥签名后,将签名发送至认证代理模块;步骤5:认证代理模块将收到的TPM私钥签名和SMI私钥签名利用自带的公钥进行验证,并将验证结果发送至远程认证端;同时,将目标节点的系统启动过程中的步骤2.4、步骤2.5,步骤2.6中的验证结果通过步骤3中存储在SMRAM中的私钥进行签名返回至远程认证用户,完成认后证过程,获得认证结果。远程认证端获得了验证测量环境完整性的结果和目标节点运行过程的动态测量的结果。
地址 410083 湖南省长沙市岳麓区麓山南路932号