当前位置: 首页 > 专利查询>南京大学专利>正文

一种基于硬件虚拟化技术的应用程序安全保护方法技术

技术编号:19542811 阅读:35 留言:0更新日期:2018-11-24 20:27
一种基于硬件虚拟化技术的应用程序安全保护方法,可以防御针对应用程序可用性的攻击。通过对转接器的内容与结构进行修改,使得该类方案的结构特征得以隐藏,不易被攻击者识别、发起针对性的可用性攻击。本发明专利技术可以消除保护机构在结构上的典型特征,从而避免针对应用程序的可用性攻击威胁。而且,修改过的转接器仅仅是内容与结构上的改变,对系统性能几乎没有影响。因此,本发明专利技术可以在不影响系统性能的条件下,减缓应用程序的可用性攻击威胁,提高系统可用性和应用程序的可用性与安全性。

An Application Security Protection Method Based on Hardware Virtualization Technology

An application security protection method based on hardware virtualization technology can defend against attacks against application availability. By modifying the content and structure of the adapter, the structural features of the scheme can be hidden, and it is not easy to be identified by attackers and launch targeted usability attacks. The invention can eliminate the typical structural characteristics of the protection mechanism, thereby avoiding the threat of usability attack against the application program. Moreover, the modified adapter is only a change in content and structure, and has little impact on system performance. Therefore, the present invention can mitigate the threat of usability attack of application programs without affecting the performance of the system, and improve the usability and security of the system and application programs.

【技术实现步骤摘要】
一种基于硬件虚拟化技术的应用程序安全保护方法
本专利技术属于应用程序安全保护领域,具体涉及一种基于硬件虚拟化技术的应用程序安全保护方法,可实施对应用程序系统调用的安全验证,防御针对应用程序的可用性攻击。
技术介绍
现有的基于硬件虚拟化技术的对系统调用进行验证的保护方案,可以保护应用程序的控制流完整性、地址空间完整性与私密性和系统调用的安全性等。但是由于存在结构上的缺陷,攻击者可以通过识别其中转接器的特征进而对应用程序发起针对性的可用性攻击,从而使得应用程序无法正常运行。针对被保护应用程序的可用性攻击是一种现实的威胁。
技术实现思路
本专利技术针对现有技术中的不足,提供一种基于硬件虚拟化技术的应用程序安全保护方法,能够有效地防止攻击者的针对应用程序的可用性攻击。为实现上述目的,本专利技术采用以下技术方案:一种基于硬件虚拟化技术的应用程序安全保护方法,涉及的组件包括虚拟机监控器、转接器、参数缓存和自定义库,其特征在于,包括以下步骤:步骤一、虚拟机监控器初始化:在保护方法保护应用程序之前进行虚拟机监控器的初始化,包括配置VMCS、配置EPT页表、切换EPT;步骤二、保护应用保护机构初始化:在应本文档来自技高网...

【技术保护点】
1.一种基于硬件虚拟化技术的应用程序安全保护方法,涉及的组件包括虚拟机监控器、转接器、参数缓存和自定义库,其特征在于,包括以下步骤:步骤一、虚拟机监控器初始化:在保护方法保护应用程序之前进行虚拟机监控器的初始化,包括配置VMCS、配置EPT页表、切换EPT;步骤二、保护应用保护机构初始化:在应用程序成为保护应用之前进行的初始化,包括转接器与参数缓存地址空间分配、填充转接器内容、发起hypercall;步骤三、系统调用的准备:对于保护应用请求的系统调用,在自定义库中进行系统调用的准备,包括系统调用参数准备、hypercall发起、系统调用结果返回保护应用;步骤四、系统调用的验证:对于系统调用的请...

【技术特征摘要】
1.一种基于硬件虚拟化技术的应用程序安全保护方法,涉及的组件包括虚拟机监控器、转接器、参数缓存和自定义库,其特征在于,包括以下步骤:步骤一、虚拟机监控器初始化:在保护方法保护应用程序之前进行虚拟机监控器的初始化,包括配置VMCS、配置EPT页表、切换EPT;步骤二、保护应用保护机构初始化:在应用程序成为保护应用之前进行的初始化,包括转接器与参数缓存地址空间分配、填充转接器内容、发起hypercall;步骤三、系统调用的准备:对于保护应用请求的系统调用,在自定义库中进行系统调用的准备,包括系统调用参数准备、hypercall发起、系统调用结果返回保护应用;步骤四、系统调用的验证:对于系统调用的请求,在虚拟机监控器中进行系统调用的安全验证,包括地址空间切换、rip通用寄存器赋值、将系统调用结果返回给自定义库;步骤五、系统调用的实施:经系统调用验证后,转接器进行系统调用的实施,包括发起系统调用、发起hypercall将系统调用结果返回虚拟机监控器;步骤六、中断事件的截获处理:在保护应用执行过程中发生的中断,由虚拟机监控器进行中断的截获和处理,包括中断截获、rip通用寄存器赋值、从中断返回到保护应用;步骤七、中断返回的转接:经虚拟机监控器验证属于保护应用中发生的中断事件,由不可信内核的中断处理结束后,由转接器进行中断返回的处理,包括等待中断返回、发起hypercall陷入虚拟机监控器。2.如权利要求1所述的一种基于硬件虚拟化技术的应用程序安全保护方法,其特征在于:所述步骤一具体包括:步骤11、配置VMCS的中断异常的自动转发的标志位,允许虚拟机监控器获得中断截获的能力;步骤12、将VMCS中的EnableEPT位置为1,使得虚拟机监控器以及在其上运行的虚拟机使用EPT页表;步骤13、创建两张EPT,分别放置在KVM中的KVM_MMU结构体的root_hpa和root_hpa_shadow中,保护方案复用了KVM中的创建EPT的函数,创建了两张EPT页表,其中root_hpa中存储指向不可信内核所在地址空间的EPTP,而root_hpa_shadow中存储指向保护应用所在地址空间的EPTP;步骤14、选择当前EPT为root_hpa中的EPT,使得在虚拟机监控器和其中的虚拟机启动过程中,系统一直使用不可信地址空间的EPT,直到保护应用的开始执行;步骤15、接收应用程序调用hypercall传递的转接器与参数缓存的地址,通过在VMexit时读取对应的通用寄存器接收到传递来的地址,虚拟机监控器将地址记录在变量tr与buf中;步骤16、切换到root_hpa_shadow指向的EPT并返回保护应用,通过将KVM_MMU结构体中的root_hpa备份到root_hpa_second并将root_hpa的值改为root_hpa_shadow来切换到可信地址空间EPT;步骤17、结束hypercall处理返回虚拟机,通过在hypercall处理流程之后执行vcpu_run函数,保护应用可以开始在虚拟机的可信地址空间内执行;步骤18、结束状态,虚拟机监控器的初始化完成。3.如权利要求1所述的一种基于硬件虚拟化技术的应用程序安全保护方法,其特征在于:所述步骤二具体包括:步骤21、用mmap系统调用为转接器和参数缓存分配地址空间,其中,参数缓存的地址空间在与自定义库约定的固定位置分配,转接器通过在共享库地址空间内分配内存来隐藏其原本的地址空间特征;步骤22、填写转接器中的中断返回操作程序,其中,首先填写将hypercall参数移动到rax寄存器的movq$2,%rax指令,之后填写VMCALL指令;步骤23、填写转接器中的系统调用的实施操作程序,其中,首先是伪装的系统调用参数准备指令,其构成与glibc库中该系统调用指令前的参数准备指令相同,用以隐藏转接器的特征,之后填写系统调用指令,之后将系统调用结果保存到rbx通用寄存器的movq%rax,%rbx指令,之后填写movq$3,%rax和VMCALL指令;步骤24、通过hypercall将转接器与参数缓存地址传递给虚拟机监控器,应用程序将转接器与参数缓存的地址放置在rbx通用寄存器与rcx通用寄存器中,之后主动调用hypercall将参数传递给虚拟机监控器;步骤25、结束状态,应用程序可以开始保护应用的执行。4.如权利要求1所述的一种基于硬件虚拟化技术的应用程序安全保护方法,其特征在于:所述步骤三具体包括:步骤31、判断当前系统调用的参数是否多于6个,如果多于6个则执行步骤32,否则执行步骤34;步骤32、将对应通用寄存器中地址指向的多余参数结构体储存到约定好的参数缓存中;步骤33、将参数缓存地址存储...

【专利技术属性】
技术研发人员:曾庆凯梁诚伟
申请(专利权)人:南京大学
类型:发明
国别省市:江苏,32

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

1