一种用于虚拟机的沙箱保护系统及方法

文档序号:9888015阅读:190来源:国知局
一种用于虚拟机的沙箱保护系统及方法
【技术领域】
[0001]本发明涉及虚拟机领域,具体地说,涉及一种用于虚拟机的沙箱保护系统及方法。
【背景技术】
[0002]虚拟机的出现,极大的提高了系统资源的利用率,降低了成本。由于虚拟机拥有了完整的操作系统,拥有对系统的调用权限,因此为了保证系统的稳定性和安全,需要对虚拟机的权限进行一定的限制。在现有的虚拟化权限控制系统中,都是采用虚拟设备进行控制,并与硬件辅助虚拟化进行整合进行控制,尽力防止虚拟机获取更高的权限。随着技术的更新,在虚拟机监视器程序的漏洞越来越多的被暴露,导致虚拟机在进程中获取到更高的权限之后却没有受到任何限制,可以进行任何操作以达到破坏目的。

【发明内容】

[0003]为了解决上述问题,本发明提供一种可以防止虚拟机进行提权并且限制虚拟机调用权限的用于虚拟机的沙箱保护系统及方法。
[0004]本发明的一种用于虚拟机的沙箱保护系统,所述用于虚拟机的沙箱保护系统用于宿主机,所述宿主机包括为虚拟机提供设备虚拟化并控制虚拟机权限的虚拟机监视模块,所述宿主机包括用于运行虚拟机并定义限制虚拟机权限的沙箱模块;所述沙箱模块包括启动虚拟机之前定义虚拟机权限的虚拟机权限定义模块、收集虚拟机所有的系统调用的数据收集模块、对所述数据收集模块收集的虚拟机的系统调用以所述虚拟机权限定义模块定义的虚拟机权限为标准进行过滤的数据过滤模块。
[0005]本发明的一种用于虚拟机的沙箱保护方法,其特征在于,通过采用用于虚拟机的沙箱保护系统来实现,包括如下步骤:
[0006]S1、在拥有虚拟机监视模块的宿主机上安装用于运行虚拟机并定义限制虚拟机权限的包括虚拟机权限定义模块、数据收集模块和数据过滤模块的沙箱模块,进入步骤s2;
[0007]s2、通过所述沙箱模块中的虚拟机权限定义模块在虚拟机监视模块中定义允许虚拟机拥有的权限,进入步骤S3;
[0008]s 3、在所述沙箱模块中启动虚拟机,进入步骤s4 ;
[0009 ] s4、启动的虚拟机发出系统调用请求,进入步骤s 5 ;
[0010]s5、通过所述沙箱模块中的数据收集模块收集虚拟机发起的所有系统调用请求,进入步骤s6;
[0011 ] s6、通过所述沙箱模块中的数据过滤模块过滤所述步骤s5中由所述数据收集模块收集到的虚拟机的所有系统调用请求,判断虚拟机的调用是否超越由所述虚拟机权限定义模块定义的权限,若是,进入步骤s7;若否,进入步骤s8;
[0012]s7、拒绝执行虚拟机超越权限的调用;
[0013]s8、执行虚拟机请求的系统调用。
[0014]采用本发明的沙箱保护系统及方法,对虚拟机权限进行控制,可以保证在虚拟机进程出现权限漏洞并被利用的情况下限制用户在宿主机上的权限,即使虚拟机对权限进行了提权操作,仍然不能超越权限进行调用,有效的保证系统安全。
【附图说明】
[0015]图1是本发明的用于虚拟机的沙箱保护系统结构示意图;
[0016]图2是本发明的用于虚拟机的沙箱保护方法流程示意图。
【具体实施方式】
[0017]为了更好的理解本发明,下面结合附图详细说明本发明。
[0018]如图1所示,本发明的一种用于虚拟机的沙箱保护系统,所述用于虚拟机的沙箱保护系统用于宿主机,所述宿主机包括为虚拟机提供设备虚拟化并控制虚拟机权限的虚拟机监视模块,所述宿主机包括用于运行虚拟机并定义限制虚拟机权限的沙箱模块;所述沙箱模块包括启动虚拟机之前定义虚拟机权限的虚拟机权限定义模块、收集虚拟机所有的系统调用的数据收集模块、对所述数据收集模块收集的虚拟机的系统调用以所述虚拟机权限定义模块定义的虚拟机权限为标准进行过滤的数据过滤模块。
[0019]优选地,所述虚拟机权限定义模块在所述虚拟机监视模块控制的虚拟机权限范围内定义虚拟机具体的调用权限。所述数据过滤模块禁止执行虚拟机超过所述虚拟机权限定义模块定义的权限之外的调用。
[0020]本发明的一种用于虚拟机的沙箱保护方法,其特征在于,通过采用用于虚拟机的沙箱保护系统来实现,包括如下步骤:
[0021]S1、在拥有虚拟机监视模块的宿主机上安装用于运行虚拟机并定义限制虚拟机权限的包括虚拟机权限定义模块、数据收集模块和数据过滤模块的沙箱模块,进入步骤s2;
[0022]s2、通过所述沙箱模块中的虚拟机权限定义模块在虚拟机监视模块中定义允许虚拟机拥有的权限,进入步骤S3;
[0023]s3、在所述沙箱模块中启动虚拟机,进入步骤s4;
[0024]s4、启动的虚拟机发出系统调用请求,进入步骤s5;
[0025]s5、通过所述沙箱模块中的数据收集模块收集虚拟机发起的所有系统调用请求,进入步骤s6;
[0026]s6、通过所述沙箱模块中的数据过滤模块过滤所述步骤s5中由所述数据收集模块收集到的虚拟机的所有系统调用请求,判断虚拟机的调用是否超越由所述虚拟机权限定义模块定义的权限,若是,进入步骤s7;若否,进入步骤s8;
[0027]s7、拒绝执行虚拟机超越权限的调用;
[0028]S8、执行虚拟机请求的系统调用。
[0029]优选地,所述虚拟机监视模块为虚拟机提供设备虚拟化并控制虚拟机权限;所述虚拟机权限定义模块定义虚拟机的权限不超过所述虚拟机监视模块控制的权限。
[0030]采用本发明的沙箱保护系统及方法,对虚拟机权限进行控制,可以保证在虚拟机进程出现权限漏洞并被利用的情况下限制用户在宿主机上的权限,即使虚拟机对权限进行了提权操作,仍然不能超越权限进行调用,有效的保证系统安全。
[0031]以上所述,仅为本发明较佳的【具体实施方式】,但本发明的保护范围并不局限于此,任何熟悉本技术领域的技术人员在本发明披露的技术范围内,根据本发明的技术方案及其发明构思加以等同替换或改变,都应涵盖在本发明的保护范围之内。
【主权项】
1.一种用于虚拟机的沙箱保护系统,所述用于虚拟机的沙箱保护系统用于宿主机,所述宿主机包括为虚拟机提供设备虚拟化并控制虚拟机权限的虚拟机监视模块,其特征在于,所述宿主机包括用于运行虚拟机并定义限制虚拟机权限的沙箱模块; 所述沙箱模块包括启动虚拟机之前定义虚拟机权限的虚拟机权限定义模块、收集虚拟机所有的系统调用的数据收集模块、对所述数据收集模块收集的虚拟机的系统调用以所述虚拟机权限定义模块定义的虚拟机权限为标准进行过滤的数据过滤模块。2.根据权利要求1所述的用于虚拟机的沙箱保护系统,其特征在于,所述虚拟机权限定义模块在所述虚拟机监视模块控制的虚拟机权限范围内定义虚拟机具体的调用权限。3.根据权利要求2所述的用于虚拟机的沙箱保护系统,其特征在于,所述数据过滤模块禁止执行虚拟机超过所述虚拟机权限定义模块定义的权限之外的调用。4.一种用于虚拟机的沙箱保护方法,其特征在于,所述用于虚拟机的沙箱保护方法通过采用用于虚拟机的沙箱保护系统来实现,包括如下步骤: S1、在拥有虚拟机监视模块的宿主机上安装用于运行虚拟机并定义限制虚拟机权限的包括虚拟机权限定义模块、数据收集模块和数据过滤模块的沙箱模块,进入步骤S2; s2、通过所述沙箱模块中的虚拟机权限定义模块在虚拟机监视模块中定义允许虚拟机拥有的权限,进入步骤s3; s3、在所述沙箱模块中启动虚拟机,进入步骤s4 ; s4、启动的虚拟机发出系统调用请求,进入步骤s5 ; S5、通过所述沙箱模块中的数据收集模块收集虚拟机发起的所有系统调用请求,进入步骤s6 ; s6、通过所述沙箱模块中的数据过滤模块过滤所述步骤s5中由所述数据收集模块收集到的虚拟机的所有系统调用请求,判断虚拟机的调用是否超越由所述虚拟机权限定义模块定义的权限,若是,进入步骤s7;若否,进入步骤s8;s7、拒绝执行虚拟机超越权限的调用;s8、执行虚拟机请求的系统调用。5.根据权利要求4所述的用于虚拟机的沙箱保护方法,其特征在于,所述虚拟机监视模块为虚拟机提供设备虚拟化并控制虚拟机权限;所述虚拟机权限定义模块定义虚拟机的权限不超过所述虚拟机监视模块控制的权限。
【专利摘要】一种用于虚拟机的沙箱保护系统,所述用于虚拟机的沙箱保护系统用于宿主机,所述宿主机包括为虚拟机提供设备虚拟化并控制虚拟机权限的虚拟机监视模块,所述宿主机包括用于运行虚拟机并定义限制虚拟机权限的沙箱模块;所述沙箱模块包括启动虚拟机之前定义虚拟机权限的虚拟机权限定义模块、收集虚拟机所有的系统调用的数据收集模块、对所述数据收集模块收集的虚拟机的系统调用以所述虚拟机权限定义模块定义的虚拟机权限为标准进行过滤的数据过滤模块。本发明还公开了一种用于虚拟机的沙箱保护方法。本发明的对虚拟机权限进行控制,可以保证在虚拟机进程出现权限漏洞并被利用的情况下限制用户在宿主机上的权限,有效的保证系统安全。<!-- 2 -->
【IPC分类】G06F21/53
【公开号】CN105653938
【申请号】
【发明人】黄川 , 刘晓毅
【申请人】中国电子科技网络信息安全有限公司
【公开日】2016年6月8日
【申请日】2015年12月31日
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1