一种沙盒分析恶意程序的方法与流程

专利2022-06-29  41

本发明涉及信息安全
技术领域
:,具体地说是一种沙盒分析恶意程序的方法。
背景技术
::信息系统所面临的各种安全威胁日益突出,信息安全问题已经成为涉及国家政治、军事、经济和文教等诸多领域的战略安全问题。信息系统中威胁最大的莫过于计算机病毒软件,特别是计算机网络的出现加速了计算机病毒的传播和蔓延。软件安全日益受到人们的关注,各种防护手段层出不穷,在计算机安全领域,沙盒是一种分析病毒恶意行为的安全机制,为运行中的程序提供的隔离环境。通常是作为一些来源不可信、具破坏力或无法判定程序意图的程序提供实验之用。传统的沙盒技术皆在使用应用层r3或内核层r0,在操作系统中预先设置监视点(例如在r3层通过dll注入加hook关键api的方式,在r0层通过hook系统调用的方式)并伪造工作环境从而迷惑恶意软件使之认为成普通的肉鸡电脑,等恶意软件展开各种破坏行为时,对其行为进行抓捕继而分析是否对系统具有威胁。传统沙盒的技术弱点在于:其监控组件与操作系统或恶意软件在计算机科学体系中处于同样的层次即操作系统之上。这样的后果就是很容易被恶意软件查找分析并捕获,从而绕过抓捕器,实施恶意非法行为。例如通过检测api地址是否被修改,如果被修改过则可以还原回原地址,系统调用的地址也可以被检测,如果发现被修改则可以还原。即使是内联hook也可以利用内核重载的方式,重新加载内核文件而让所有的hook失效。这样也就躲过了沙盒的检测,让沙盒丧失原有的工作能力。技术实现要素:本发明的目的在于提供一种沙盒分析恶意程序的方法,用于解决传统沙盒容易被恶意软件查找分析并捕获,从而绕过抓捕器,实施恶意非法行为的问题。本发明解决其技术问题所采取的技术方案是:一种沙盒分析恶意程序的方法,该方法包括以下步骤:在操作系统最底层增加一个hypervisor层,hypervisor层引入guest物理地址空间;将guest物理地址映射到host物理地址;根据处理器的vmm机制对内存空间的分页机制,利用对页面的不同属性设置,发起操作系统对guest物理地址访问的异常捕获;在vmm接管后的异常分发例程中依据不同的陷入条件做相应的处理,躲避检测。在第一种可能实现的方式中,根据处理器的vmm机制对内存空间的分页机制,利用对页面的不同属性设置从而发起异常捕获具体包括:设置需要hook的内存页面属性;让该页面的二进制内容,在被当做代码来执行时和被当做数据来读取时,根据敏感指令或访问,分别触发异常从而陷入vmm的监管。在第二种可能实现的方式中,所述的陷入条件包括代码执行陷入或数据读取陷入。在第三种可能实现的方式中,依据不同的陷入条件做相应的处理具体包括:vmm使用ept进行第二次映射为需要hook的内存页面准备两份页面:execute页面和read页面;当代码执行陷入时,映射到execute页面,当数据读取陷入时,映射到read页面。在第四种可能实现的方式中,vmm使用ept进行第二次映射具体包括:在原有分页机制cr3页表地址映射的基础上,ept引入ept页表实现第二次映射。由以上技术方案可知,本发明实施例利用硬件支持特性,实现对软件的欺骗,而软件毫无感知。软件层无法检测和获知自身所处的状态、以及是否开启了vmm。操作系统也无法获知自身所处的状态。操作系统的防修改校验检测机制无法获知自身是否被修改。附图说明为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,对于本领域普通技术人员而言,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。图1为一种沙盒分析恶意程序的方法流程示意图;图2为分页机制的示意图;图3为32位机器环境下的页表示意图;图4为vmm使用ept进行第二次映射示意图;具体实施方式为了使本
技术领域
:的人员更好地理解本发明中的技术方案,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例仅仅是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有做出创造性劳动前提下所获得的所有其他实施例,都应当属于本发明保护的范围。如图1所示,一种沙盒分析恶意程序的方法,该方法包括以下步骤:s1、在操作系统最底层增加一个hypervisor层,hypervisor层引入guest物理地址空间;s2、将guest物理地址映射到host物理地址;s3、根据处理器的vmm机制对内存空间的分页机制,利用对页面的不同属性设置,发起操作系统对guest物理地址访问的异常捕获;s4、在vmm接管后的异常分发例程中依据不同的陷入条件做相应的处理,躲避检测。处理器在执行时需要将程序中用到的逻辑地址转换为线性地址,再将线性地址转变为物理地址,而线性地址到物理地址的转换是由分页机制完成,分页机制用粒度化的单位“页”来管理线性地址空间和物理地址空间。一个典型的页面大小为4kb,分页机制的核心思想是通过页表将线性地址转换为物理地址。如图2所示。从图2中可以看出,分页机制主要由页表,页目录基址寄存器,旁路转换缓冲区三个部件组成。页表是将线性地址转为物理地址的主要数据结构,一个地址对齐到页边界后的值为页帧号,它是该地址所在页面的基地址。线性地址对应的页帧号即虚拟页帧号(vfn),物理地址对应的页帧号即物理页帧号(pfn)。32位机器环境下使用2级页表,如图3所示。hypervisor层引入的新的地址空间:guest物理地址空间。vmm负责管理和分配操作系统的看到的内存。操作系统所看到的是一个抽象和虚构的guest物理地址空间。其指令目标地址也是一个guest物理地址。这样的地址在无vmm的情况下,其实就是实际物理地址。但是,在有vmm的情况下,这样的地址是不能被直接发送到系统总线上去的。需要vmm负责将guest物理地址首先转换成一个实际的物理地址,再交由物理处理器来执行。s3中,根据处理器的vmm机制对内存空间的分页机制,利用对页面的不同属性设置从而发起异常捕获具体包括:设置需要hook的内存页面属性;让该页面的二进制内容,在被当做代码来执行时和被当做数据来读取时,根据敏感指令或访问,分别触发异常从而陷入vmm的监管。陷入条件包括代码执行陷入或数据读取陷入。如图4所示,依据不同的陷入条件做相应的处理具体包括:vmm使用ept进行第二次映射为需要hook的内存页面准备两份页面:execute页面和read页面;当代码执行陷入时,映射到execute页面,当数据读取陷入时,映射到read页面。这样,gva->gpa->hpa两次地址转换都由cpu硬件自动完成。这样就给vmm的控制留下了足够的权限和空间。vmm使用ept进行第二次映射具体包括:在原有分页机制cr3页表地址映射的基础上,ept(extendedpagetable扩展页表)引入ept页表实现第二次映射。以上所述仅是本发明的具体实施方式,使本领域技术人员能够理解或实现本发明。对这些实施例的多种修改对本领域的技术人员来说将是显而易见的,本文中所定义的一般原理可以在不脱离本发明的精神或范围的情况下,在其它实施例中实现。因此,本发明将不会被限制于本文所示的这些实施例,而是要符合与本文所公开的原理和新颖特点相一致的最宽的范围。当前第1页1 2 3 当前第1页1 2 3 
技术特征:

1.一种沙盒分析恶意程序的方法,其特征是,该方法包括以下步骤:

在操作系统最底层增加一个hypervisor层,hypervisor层引入guest物理地址空间;

将guest物理地址映射到host物理地址;

根据处理器的vmm机制对内存空间的分页机制,利用对页面的不同属性设置,发起操作系统对guest物理地址访问的异常捕获;

在vmm接管后的异常分发例程中依据不同的陷入条件做相应的处理,躲避检测。

2.根据权利要求1所述的方法,其特征是,根据处理器的vmm机制对内存空间的分页机制,利用对页面的不同属性设置从而发起异常捕获具体包括:

设置需要hook的内存页面属性;

让该页面的二进制内容,在被当做代码来执行时和被当做数据来读取时,根据敏感指令或访问,分别触发异常从而陷入vmm的监管。

3.根据权利要求1所述的方法,其特征是,所述的陷入条件包括代码执行陷入或数据读取陷入。

4.根据权利要求3所述的方法,其特征是,依据不同的陷入条件做相应的处理具体包括:vmm使用ept进行第二次映射为需要hook的内存页面准备两份页面:execute页面和read页面;当代码执行陷入时,映射到execute页面,当数据读取陷入时,映射到read页面。

5.根据权利要求4所述的方法,其特征是,vmm使用ept进行第二次映射具体包括:

在原有分页机制cr3页表地址映射的基础上,ept引入ept页表实现第二次映射。

技术总结
一种沙盒分析恶意程序的方法,该方法包括以下步骤:在操作系统最底层增加一个Hypervisor层,Hypervisor层引入GUEST物理地址空间;将GUEST物理地址映射到HOST物理地址;根据处理器的VMM机制对内存空间的分页机制,利用对页面的不同属性设置,发起操作系统对GUEST物理地址访问的异常捕获;在VMM接管后的异常分发例程中依据不同的陷入条件做相应的处理,躲避检测。本发明实施例利用硬件支持特性,实现对软件的欺骗,而软件毫无感知。软件层无法检测和获知自身所处的状态、以及是否开启了VMM。操作系统也无法获知自身所处的状态。操作系统的防修改校验检测机制无法获知自身是否被修改。

技术研发人员:苗功勋;袁浩;陈晓毅;魏东晓;孙强
受保护的技术使用者:中孚安全技术有限公司;中孚信息股份有限公司;北京中孚泰和科技发展股份有限公司;南京中孚信息技术有限公司
技术研发日:2020.01.13
技术公布日:2020.06.09

转载请注明原文地址: https://bbs.8miu.com/read-22219.html

最新回复(0)