[发明专利]基于Xen的操作系统识别方法有效
| 申请号: | 201310477287.2 | 申请日: | 2013-10-13 |
| 公开(公告)号: | CN103544089A | 公开(公告)日: | 2014-01-29 |
| 发明(设计)人: | 张驰;杨超;马建峰;王照羽;侯琬婷;黄为 | 申请(专利权)人: | 西安电子科技大学 |
| 主分类号: | G06F11/30 | 分类号: | G06F11/30;G06F21/57 |
| 代理公司: | 陕西电子工业专利中心 61205 | 代理人: | 张问芬;王品华 |
| 地址: | 710071*** | 国省代码: | 陕西;61 |
| 权利要求书: | 查看更多 | 说明书: | 查看更多 |
| 摘要: | |||
| 搜索关键词: | 基于 xen 操作系统 识别 方法 | ||
技术领域
本发明属于计算机虚拟化技术领域,具体地说是一种在虚拟化环境下识别操作系统类别的方法。应用于虚拟化环境下操作系统类别的识别。
背景技术
随着近年来,虚拟化技术成为计算机系统结构的发展趋势,并为安全监控提供了一种解决思路。由于虚拟机管理器具有更高的权限和更小的可信计算基,利用虚拟机管理器在单独的虚拟机中部署安全工具能够对目标虚拟机进行检测。这种方法能够保证监控工具的有效性和防攻击性。
虚拟机监控与传统的监控有很大的差异。传统的监控是在操作系统内部进行监控,是针对单一系统的监控,在操作系统内部实现监控不存在获取系统事件以及理解其语意的障碍。而在虚拟机监控方面,外部监控是在管理域中监控客户域中的操作系统,监控软件是在客户操作系统的外部。
传统的监控软件是针对特定系统开发的,当这部分软件运用于虚拟机监控方面,如何获取客户操作系统中的事件并且转换成其可以理解的语意信息,是一个关键问题。目前的研究成果大部分需要修改客户域中的操作系统或者提前知道所要监控客户系统的类别信息。
XenAccess实现了虚拟机监控内存自省功能,是应用十分广泛的内存自省工具,但它需要手动识别操作系统类别。VMDriver实现了在管理域中恢复语义,但它需要手动识别操作系统类别。CoPilot、April、XENKimono、SecVisor等都是虚拟化监控领域重要的研究,但是它们都需要被监控操作系统的信息,需要手动识别操作系统。虚拟机监控器上可以同时运行多个虚拟机,各个虚拟机可以运行不同类型的操作系统,若每个系统都需要修改或手动来获取系统的信息,不仅不便捷,而且在客户域中安装了文件或者人工识别操作系统,会造成了潜在的威胁,这就使得这些研究成果的实用性有所降低。
虚拟化环境架构和传统架构的不同,给虚拟化监控领域带来了机遇也带来了挑战。目前的虚拟化监控研究,倾向于虚拟机监控的通用性方面。而识别操作系统是虚拟化监控通用性的关键步骤。识别操作系统的类型,不仅是虚拟机监控通用性研究的关键步骤,而且本身也必须具有很好的通用性:首先,它不修改客户域中的操作系统;其次,它提供一个通用的库,方便监控软件通过统一接口获得系统识别的信息。
发明内容
本发明所要解决的技术问题是针对在现有的虚拟化环境下识别操作系统均需要手动修改或手动来获取系统的信息,从而影响虚拟机监控的通用性的缺陷,而提出了一种基于Xen的操作系统识别方法,在不修改客户操作系统的条件下,实现了从管理域识别客户域操作系统。
本发明解决技术问题的主要方案概括为:采用细粒度的精确识别与粗粒度的弹性识别相结合的方法,全方位识别操作系统。细粒度的精确识别采用中断描述符表和全局描述符表基址两种识别方式进行识别,细粒度的精确识别能够在客户域中精确的识别客户域中的操作系统的类别。当细粒度精确识别操作系统失效,利用TCP指纹粗粒度地识别客户域操作系统类型。具体识别过程如下:
(1)在管理域中判别客户域是半虚拟化还是硬件虚拟化环境。
(2)当客户域是半虚拟化环境
2a)在管理域中,利用libxc的库函数,直接获取客户域操作系统中断描述符表的内容;
2b)对中断描述符表进行哈希操作,获取半虚拟化中断描述符表的指纹;
2c)将中断描述符表的指纹与半虚拟化中断描述符表指纹库进行对比,精确识别半虚拟化操作系统的类别;
2d)半虚拟化中断描述符表精确识别失败的时候,进行TCP指纹被动识别。抓取客户域操作系统的网络数据包,提取指纹关键字来粗粒度识别操作系统的类别。
(3)当客户域是硬件虚拟化环境
3a)在管理域中利用libxc库函数,获取客户域操作系统中断描述符表的线性基址;将该地址进行地址转换,使其从线性地址转换为伪物理地址;
3b)把中断描述符表的伪物理地址所在的内存页面从客户域映射到管理域,在管理域中读取客户域中操作系统的中断描述符表;对该表进行哈希操作,获取硬件虚拟化中断描述符表的指纹,对比硬件虚拟化中断描述符表的指纹库,精确识别硬件虚拟化操作系统的类别。
3c)当中断描述符表识别失败的时候,通过全局描述符表基址来识别操作系统的类别。利用libxc库函数获取客户域操作系统的全局描述符表的基址,将该基址与硬件虚拟化全局描述符表表基址的指纹库对比,精确识别硬件虚拟化操作系统的类型。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于西安电子科技大学,未经西安电子科技大学许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/201310477287.2/2.html,转载请声明来源钻瓜专利网。
- 上一篇:多阳离子粘弹性组合物
- 下一篇:一种制备多功能共轭化合物的方法





