应用于虚拟化场景的安全通信方法及设备技术

技术编号:15330305 阅读:53 留言:0更新日期:2017-05-16 13:47
本申请的目的是提供一种应用于虚拟化场景的安全通信方法及设备,具体地,在虚拟机的子进程执行系统调用时,判断所述系统调用的属性;若所述系统调用为数据平面的系统调用,则所述虚拟机的子进程使用物理机的父进程提供的套接字描述符执行所述数据平面的系统调用;若所述系统调用为控制平面的系统调用,则所述虚拟机的子进程禁止执行所述控制平面的系统调用、请求物理机的父进程执行所述控制平面的系统调用或者返回伪造的系统调用结果。与现有技术相比,本申请的技术方案将数据收发与系统控制的分割,同时通过内部标识的方式传递套接字描述符,借助于虚拟化技术带来的安全优势,提供更加安全可靠的受限通信,提高系统性能。

Secure communication method and apparatus applied to virtualized scenes

This application is designed to secure communication and equipment, provide a method applied to the virtual scene in particular, in the virtual machine process execution system call, determine the attributes of the system call; if the system call system call data plane, the system call is executed socket descriptor to the virtual machine the process of using physical machine parent process provides the data plane; if the system calls for the control system call level, then the virtual machine process is prohibited to execute the control system call request, physical machine plane parent process executes the system call or return plane control system the fake call. Compared with the prior art, the technical scheme for the data transmission and control system of the segmentation, while passing through the internal socket descriptor identification, with security advantages in virtualization technology, provide a limited communication more secure and reliable, improve the system performance.

【技术实现步骤摘要】
应用于虚拟化场景的安全通信方法及设备
本申请涉及计算机领域,尤其涉及一种应用于虚拟化场景的安全通信方法及设备。
技术介绍
在UNIX/Linux类操作系统下,用户空间进程的网络通信一般是通过本机内核协议栈提供的套接字(socket)抽象接口完成。一般来说是在创建套接字描述符时决定选择使用哪种通信协议。多数情况下,在读写数据前还会执行一系列控制操作以选择网络通信的对端、建立连接以及设置其它参数。在没有使用虚拟化技术的条件下,限制网络通信的一般性做法要么基于系统调用过滤或者基于报文过滤,再辅以用IPC(InterProcessCommunication,进程间通信)机制控制指定进程的网络操作。一种可能的限制子进程进行网络通信的方法如下:a)父进程先准备好与子进程的进程间通信通道A。b)父进程创建子进程。c)限制子进程只能使用收发数据的系统调用。d)父进程创建若干个套接字描述符,设置好所有通信参数。e)父进程通过通道A将套接字描述符传递给子进程。f)子进程使用父进程提供的套接字描述符进行网络通信。但是虚拟化场景下,以上方式中的父进程通常运行于物理机上,而子进程则通常运行于对应的虚拟机内,而虚拟机和物理机具有各自独立的操作系统内核(Kernel)。由于套接字描述符是由各个操作系统内核独立维护的,因此不能跨越不同的操作系统内核直接传递,因此无法直接实现套接字描述符在父进程和子进程之间的直接传递。此外,由于有些系统调用可能同时用于收发数据或者进行系统控制,因此简单的系统调用过滤无法达到很好的限制效果,系统性能和通信安全性不高。
技术实现思路
本申请的目的是提供一种应用于虚拟化场景的安全通信方法及设备,以解决现有技术中系统性能和通信安全性不高的问题。为实现上述目的,本申请提供了一种应用于虚拟化场景的安全通信方法,该方法包括:在虚拟机的子进程执行系统调用时,判断所述系统调用的属性;若所述系统调用为数据平面的系统调用,则所述虚拟机的子进程使用物理机的父进程提供的套接字描述符执行所述数据平面的系统调用;若所述系统调用为控制平面的系统调用,则所述虚拟机的子进程禁止执行所述控制平面的系统调用,请求物理机的父进程执行所述控制平面的系统调用或者返回伪造的系统调用结果。进一步地,所述虚拟机的子进程使用物理机的父进程提供的套接字描述符执行所述数据平面的系统调用,包括:虚拟机的子进程获取物理机的父进程提供的物理机内部标识,其中所述物理机内部标识为用于表示基于物理机内核的套接字描述符的标识;所述虚拟机的子进程根据所述映射关系由所述物理机内部标识获取虚拟机内部标识,其中所述虚拟机内部标识为用于表示基于虚拟机内核的套接字描述符的标识;所述虚拟机的子进程根据所述虚拟机内部标识获取套接字描述符,并使用该套接字描述符执行所述数据平面的系统调用。进一步地,所述虚拟机的子进程使用物理机的父进程提供的套接字描述符执行所述数据平面的系统调用,包括:若所述数据平面的系统调用为读写数据的系统调用,所述虚拟机的子进程在使用物理机的父进程提供的套接字描述符执行所述读写数据的系统调用时,采用批处理的方式将数据由虚拟机的内核空间传输至物理机的内核空间。进一步地,所述虚拟机的子进程禁止执行所述控制平面的系统调用、请求物理机的父进程执行所述控制平面的系统调用或者返回伪造的系统调用结果,包括:若所述控制平面的系统调用为影响全局配置或者导致信息泄露的系统调用,则所述虚拟机的子进程禁止执行所述控制平面的系统调用;否则,所述虚拟机的子进程请求物理机的父进程执行所述控制平面的系统调用或者返回伪造的系统调用结果。进一步地,所述虚拟机的子进程请求物理机的父进程执行所述控制平面的系统调用之后,还包括:获取物理机的父进程向所述虚拟机的子进程返回的所述控制平面的系统调用的执行结果。进一步地,在判断所述系统调用的属性之前,还包括:创建用于标识所述虚拟机的子进程与网络通信对端之间的信道的套接字描述符。进一步地,创建用于标识所述虚拟机的子进程与网络通信对端之间的信道的套接字描述符,包括:虚拟机的子进程向物理机的父进程发送套接字描述符的创建请求,其中所述创建请求包括虚拟机内部标识、套接字参数和进程控制信息,所述虚拟机内部标识为用于表示基于虚拟机内核的套接字描述符的标识;所述物理机的父进程根据套接字参数和进程控制信息创建所述套接字描述符,执行信道连接操作,并记录物理机内部标识与所述虚拟机内部标识的映射关系,其中所述物理机内部标识为用于表示基于物理机内核的套接字描述符的标识;所述物理机的父进程向所述虚拟机的子进程返回所述套接字描述符的创建成功响应,其中,所述创建成功响应包括物理机内部标识;所述虚拟机的子进程根据所述创建成功响应创建所述套接字描述符,记录所述物理机内部标识与所述虚拟机内部标识映射关系,设置套接字抽象层的配置。进一步地,虚拟机的子进程向物理机的父进程发送套接字描述符的创建请求之前,还包括:确定所述虚拟机的子进程与网络通信对端之间的信道为受限通信信道。基于本申请的另一方面,还提供了一种应用于虚拟化场景的安全通信设备,该设备包括:判断装置,用于在虚拟机的子进程执行系统调用时,判断所述系统调用的属性;数据处理装置,用于在所述系统调用为数据平面的系统调用时,控制所述虚拟机的子进程使用物理机的父进程提供的套接字描述符执行所述数据平面的系统调用;控制处理装置,用于在所述系统调用为控制平面的系统调用时,控制所述虚拟机的子进程禁止执行所述控制平面的系统调用,请求物理机的父进程执行所述控制平面的系统调用或者返回伪造的系统调用结果。进一步地,所述数据处理装置,用于在所述系统调用为数据平面的系统调用时,控制虚拟机的子进程获取物理机的父进程提供的物理机内部标识,其中所述物理机内部标识为用于表示基于物理机内核的套接字描述符的标识;控制所述虚拟机的子进程根据所述映射关系由所述物理机内部标识获取虚拟机内部标识,其中所述虚拟机内部标识为用于表示基于虚拟机内核的套接字描述符的标识;以及控制所述虚拟机的子进程根据所述虚拟机内部标识获取套接字描述符,并使用该套接字描述符执行所述数据平面的系统调用。进一步地,所述数据处理装置,用于在所述数据平面的系统调用为读写数据的系统调用时,控制所述虚拟机的子进程在使用物理机的父进程提供的套接字描述符执行所述读写数据的系统调用时,采用批处理的方式将数据由虚拟机的内核空间传输至物理机的内核空间。进一步地,所述控制处理装置,用于在所述控制平面的系统调用为影响全局配置或者导致信息泄露的系统调用时,控制所述虚拟机的子进程禁止执行所述控制平面的系统调用;否则,控制所述虚拟机的子进程请求物理机的父进程执行所述控制平面的系统调用或者返回伪造的系统调用结果。进一步地,所述控制处理装置,还用于控制所述虚拟机的子进程在请求物理机的父进程执行所述控制平面的系统调用之后,获取物理机的父进程向所述虚拟机的子进程返回的所述控制平面的系统调用的执行结果。进一步地,该设备还包括:创建装置,用于在判断所述系统调用的属性之前,创建用于标识所述虚拟机的子进程与网络通信对端之间的信道的套接字描述符。进一步地,所述创建装置,用于控制虚拟机的子进程向物理机的父进程发送套接字描述符的创建请求,其中所述创建本文档来自技高网...
应用于虚拟化场景的安全通信方法及设备

【技术保护点】
一种应用于虚拟化场景的安全通信方法,其中,该方法包括:在虚拟机的子进程执行系统调用时,判断所述系统调用的属性;若所述系统调用为数据平面的系统调用,则所述虚拟机的子进程使用物理机的父进程提供的套接字描述符执行所述数据平面的系统调用;若所述系统调用为控制平面的系统调用,则所述虚拟机的子进程禁止执行所述控制平面的系统调用,请求物理机的父进程执行所述控制平面的系统调用或者返回伪造的系统调用结果。

【技术特征摘要】
1.一种应用于虚拟化场景的安全通信方法,其中,该方法包括:在虚拟机的子进程执行系统调用时,判断所述系统调用的属性;若所述系统调用为数据平面的系统调用,则所述虚拟机的子进程使用物理机的父进程提供的套接字描述符执行所述数据平面的系统调用;若所述系统调用为控制平面的系统调用,则所述虚拟机的子进程禁止执行所述控制平面的系统调用,请求物理机的父进程执行所述控制平面的系统调用或者返回伪造的系统调用结果。2.根据权利要求1所述的方法,其中,所述虚拟机的子进程使用物理机的父进程提供的套接字描述符执行所述数据平面的系统调用,包括:虚拟机的子进程获取物理机的父进程提供的物理机内部标识,其中所述物理机内部标识为用于表示基于物理机内核的套接字描述符的标识;所述虚拟机的子进程根据所述映射关系由所述物理机内部标识获取虚拟机内部标识,其中所述虚拟机内部标识为用于表示基于虚拟机内核的套接字描述符的标识;所述虚拟机的子进程根据所述虚拟机内部标识获取套接字描述符,并使用该套接字描述符执行所述数据平面的系统调用。3.根据权利要求1所述的方法,其中,所述虚拟机的子进程使用物理机的父进程提供的套接字描述符执行所述数据平面的系统调用,包括:若所述数据平面的系统调用为读写数据的系统调用,所述虚拟机的子进程在使用物理机的父进程提供的套接字描述符执行所述读写数据的系统调用时,采用批处理的方式将数据由虚拟机的内核空间传输至物理机的内核空间。4.根据权利要求1至3中任一所述的方法,其中,所述虚拟机的子进程禁止执行所述控制平面的系统调用、请求物理机的父进程执行所述控制平面的系统调用或者返回伪造的系统调用结果,包括:若所述控制平面的系统调用为影响全局配置或者导致信息泄露的系统调用,则所述虚拟机的子进程禁止执行所述控制平面的系统调用;否则,所述虚拟机的子进程请求物理机的父进程执行所述控制平面的系统调用或者返回伪造的系统调用结果。5.根据权利要求4所述的方法,其中,所述虚拟机的子进程请求物理机的父进程执行所述控制平面的系统调用之后,还包括:获取物理机的父进程向所述虚拟机的子进程返回的所述控制平面的系统调用的执行结果。6.根据权利要求1至5中任一项所述的方法,其中,在判断所述系统调用的属性之前,还包括:创建用于标识所述虚拟机的子进程与网络通信对端之间的信道的套接字描述符。7.根据权利要求6所述的方法,其中,创建用于标识所述虚拟机的子进程与网络通信对端之间的信道的套接字描述符,包括:虚拟机的子进程向物理机的父进程发送套接字描述符的创建请求,其中所述创建请求包括虚拟机内部标识、套接字参数和进程控制信息,所述虚拟机内部标识为用于表示基于虚拟机内核的套接字描述符的标识;所述物理机的父进程根据套接字参数和进程控制信息创建所述套接字描述符,执行信道连接操作,并记录物理机内部标识与所述虚拟机内部标识的映射关系,其中所述物理机内部标识为用于表示基于物理机内核的套接字描述符的标识;所述物理机的父进程向所述虚拟机的子进程返回所述套接字描述符的创建成功响应,其中,所述创建成功响应包括物理机内部标识;所述虚拟机的子进程根据所述创建成功响应创建所述套接字描述符,记录所述物理机内部标识与所述虚拟机内部标识映射关系,设置套接字抽象层的配置。8.根据权利要求7所述的方法,其中,虚拟机的子进程向物理机的父进程发送套接字描述符的创建请求之前,还包括:确定所述虚拟机的子进程与网络...

【专利技术属性】
技术研发人员:李雪峰李雨
申请(专利权)人:阿里巴巴集团控股有限公司
类型:发明
国别省市:开曼群岛,KY

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

1