一种基于虚拟化技术的主机信息采集方法技术

技术编号:26375472 阅读:39 留言:0更新日期:2020-11-19 23:44
本发明专利技术提出一种基于虚拟化技术的主机信息采集方法,包括以下步骤:在int80/sysenter指令执行结束后与下一条指令执行之前设置捕获点,捕获客户机中发起行为的进程相关信息;对捕获的发起行为的进程相关信息进行语义重构,将底层信息翻译为操作系统级的语义信息;当获取可疑进程的ID或出现某一进程与受控进程存在依赖关系时,对该进程进行备份处理;根据捕获到的行为类型形成进程间的依赖关系,并对进程行为进行相应控制。本发明专利技术方法设置监控点位于虚拟机监控器中,无需在用户虚拟机中部署监控代理,同时,虚拟机内部的操作无法更改监控层代码,保证了透明性与安全性。

【技术实现步骤摘要】
一种基于虚拟化技术的主机信息采集方法
本专利技术涉及虚拟化监控
,提供了一种基于虚拟化技术的主机信息采集方法。
技术介绍
当前许多高级恶意代码运行之前会检测运行环境,一旦发现自己在虚拟机环境中,会改变操作行为隐蔽恶意动作,逃避检测。为了不影响恶意代码的原有行为,可以利用虚拟化技术构建虚拟高仿真网络系统,使攻击者无法分辨真实网络目标和虚拟环境。构建虚拟高仿真网络系统,需要对构建的虚拟化系统进行监控,采集目标主机信息。目前,大多数细粒度的监控系统都是从虚拟机的内部进行信息采集。内部监控是修改目标操作系统内核,通过Hook进行内部事件捕获,如文件读写、进程创建等事件。但是,由于需要修改操作系统内核,这种技术对被监控的操作系统不透明。并且,目标操作系统不可信,这种信息采集方法容易被攻击,内核中的Hook函数需要虚拟机监视器(VMM)添加内核保护模块进行额外保护,因此内部监控方式不具有通用性。相反,外部监控从目标操作系统的外部进行监控,将监控点部署在虚拟机监控器当中,不需要在目标操作系统中植入任何模块,并且一定可以拦截到目标虚拟机的本文档来自技高网...

【技术保护点】
1.一种基于虚拟化技术的主机信息采集方法,包括以下步骤:/n在int80/sysenter指令执行结束后与下一条指令执行之前设置捕获点,捕获客户机中发起行为的进程相关信息;/n对捕获的发起行为的进程相关信息进行语义重构,将底层信息翻译为操作系统级的语义信息;/n当获取可疑进程的ID或出现某一进程与受控进程存在依赖关系时,对该进程进行备份处理;/n根据捕获到的行为类型形成进程间的依赖关系,并对进程行为进行相应控制。/n

【技术特征摘要】
1.一种基于虚拟化技术的主机信息采集方法,包括以下步骤:
在int80/sysenter指令执行结束后与下一条指令执行之前设置捕获点,捕获客户机中发起行为的进程相关信息;
对捕获的发起行为的进程相关信息进行语义重构,将底层信息翻译为操作系统级的语义信息;
当获取可疑进程的ID或出现某一进程与受控进程存在依赖关系时,对该进程进行备份处理;
根据捕获到的行为类型形成进程间的依赖关系,并对进程行为进行相应控制。


2.如权利要求1所述的方法,其特征在于,发起行为的进程相关信息包括:虚拟主机基本信息、虚拟主机文件操作信息、虚拟主机网络操作信息、虚拟主机注册表操作信息、虚拟主机进程操作信息、虚拟主机进程信息。


3.如权利要求1或2所述的方法,其特征在于,捕获方法包括以下步骤:
设置捕获点,使int80/sysenter指令执行之后引发缺页中断;
虚拟机产生的缺页中断陷入到处于root模式下的VMM中进行处理;
VMM判断客户机陷入时刻是否为系统调用点,若是则进行入口点的信息捕获;
确定函数返回地址,从VMM在入口处为返回注入中断,设置回调函数并保存客户机上下文,将控制权交还给虚拟主机;
虚拟主机在执行到返回函数时中断发生陷入,在VMM中通过上下文匹配获取入口点信息,完成发起行为的进程相关信息捕获。


4.如权利要求1所述的方法,其特征在于,对于windows操作系统,语义重构包括以下步骤:
访问GUEST_FS_BASE寄存器的值,获得虚拟主机操作系统中FS寄存器的值;
windows内核态下,FS寄存器指向当前处理器控制区KPCR;在KPCR数据结构中,偏移0x124处存放指向KTHREAD的指针,偏移0x44处存放EPROCESS结构的指针;在EPROCESS结构中,偏移0x18处存放CR3信息,偏移0x84处存放进程的pid信息,偏移0x174处存放进程的名字信息;
按照上述偏移值,采用硬编码的形式依次访问内存,获取当前的进程信息。


5.如...

【专利技术属性】
技术研发人员:贾晓启杜海超白璐黄庆佳王笑语解亚敏武希耀唐静付玉霞
申请(专利权)人:中国科学院信息工程研究所
类型:发明
国别省市:北京;11

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

1