[发明专利]一种响应Xen客户硬件虚拟域可信计算TOCTOU攻击的方法无效
| 申请号: | 201010246036.X | 申请日: | 2010-08-05 |
| 公开(公告)号: | CN101950333A | 公开(公告)日: | 2011-01-19 |
| 发明(设计)人: | 常晓林;邢彬;左向晖;韩臻;刘吉强;窦招辉 | 申请(专利权)人: | 北京交通大学 |
| 主分类号: | G06F21/00 | 分类号: | G06F21/00 |
| 代理公司: | 北京正理专利代理有限公司 11257 | 代理人: | 张文祎 |
| 地址: | 100044*** | 国省代码: | 北京;11 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 一种 响应 xen 客户 硬件 虚拟 可信 计算 toctou 攻击 方法 | ||
1.一种响应Xen客户硬件虚拟域可信计算TOCTOU攻击的方法,其特征在于:该方法的组件包括在特权域可信仿真设备模块中实现的转发模块PickM和攻击信号处理模块FpakM、在特权域内核空间实现的转发模块AgentM和在虚拟机监控器中实现攻击管理模块VMMmon;此外,在特权域与虚拟机监控器之间定义1个超级调用T_hypercall和10个虚拟中断T_vIRQ;响应方法的具体步骤如下:
步骤1,启动计算机,运行带有VMMmon模块、T_hypercall和T_vIRQ的Xen虚拟机监控器,并运行带有T_hypercall、T_vIRQ、FpakM和PickM的特权域系统,然后加载AgentM模块,在AgentM模块完成初始化过程后,接着在特权域执行启动客户硬件虚拟域的命令;在客户硬件虚拟域的内核启动之前,该客户硬件虚拟域所对应的可信仿真设备模块将以线程方式运行PickM模块,PickM模块在其初始化过程中将客户硬件虚拟域的DomID传递给AgentM模块,然后AgentM模块将DomID与T_vIRQ的绑定信息通过T_hypercall发送给VMMmon;
步骤2,VMMmon模块接到AgentM模块发送来的绑定信息,并从中获取T_vIRQ,接着判断其维护的数据表是否有关于该T_vIRQ的信息,如果有,则用收到的绑定信息替代数据表中原有的信息,然后保存;如果没有,则直接保存收到的绑定信息;其中VMMmon所维护的数据表是在Xen虚拟机监控器刚运行时创建的;
步骤3,Xen虚拟机监控器检测到客户硬件虚拟域发生可信计算TOCTOU攻击后,立即通知VMMmon模块,VMMmon模块首先获得被攻击的客户硬件虚拟域的DomID,然后在其维护的数据表中获得与DomID相对应的T_vIRQ,最后将攻击信号通过该T_vIRQ发送给AgentM模块;
步骤4,AgentM模块将接到攻击信号转发给PickM模块,然后PickM模块通过设置变量forevar的值将攻击信号传递给FpakM模块,最后FpakM模块伪造一个用于更新PCR的TPM指令并发送给相应的虚拟可信设备,并等待虚拟可信设备的处理结果;其中forcevar是在可信仿真设备模块中定义的一个全局变量,该变量的初始值为0;
步骤5,FpakM模块收到虚拟可信设备的处理结果后,首先删除收到的处理结果,然后修改仍保存在可信仿真设备模块中的客户硬件虚拟域尚未取走的TPM指令处理结果。
2.基于权利要求1所述的一种响应Xen客户硬件虚拟域可信计算TOCTOU攻击的方法,其特征在于所述步骤1的AgentM模块的初始化过程的具体步骤如下:
步骤2.1,AgentM模块被加载到特权域内核后,首先创建一个数据表,然后使用XenStore的“watch”监听机制监视XenStore的“/tool”路径。
3.基于权利要求1所述的一种响应Xen客户硬件虚拟域可信计算TOCTOU攻击的方法,其特征在于步骤1的PickM模块的初始化过程的具体步骤如下:
步骤3.1,PickM模块被加载到特权域内核后,首先获取其所对应的客户硬件虚拟域的DomID,然后在XenStore的“/tool”路径下创建一个文件名为<DomID>的文件,同时将该文件内容设置为<DomID>;其中<DomID>表示DomID的值;
步骤3.2,使用XenStore的“watch”监听机制监视XenStore中的“/local/domain/0/backend/vtpm/<DomID>/0”路径下文件名为“Attack”的文件。
4.基于权利要求1所述的一种响应Xen客户硬件虚拟域可信计算TOCTOU攻击的方法,其特征在于步骤1中VMMmon获得绑定信息的具体步骤如下:
步骤4.1,AgentM模块收到XenStore产生的关于“/tool”路径的触发消息后,AgentM模块首先从触发消息中获取文件名,该文件名是一个客户硬件虚拟域的DomID,然后获取该文件的内容,如果该文件内容为正数,则在所定义的虚拟中断中选取一个未被分配的T_vIRQ,将该T_vIRQ和DomID绑定并记录在数据表中,同时将绑定信息通过T_hypercall发送给VMMmon;如果文件内容为负数,则在数据表中删除与DomID有关的绑定关系,并释放T_vIRQ。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京交通大学,未经北京交通大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201010246036.X/1.html,转载请声明来源钻瓜专利网。





