CN101309180B - 一种适用于虚拟机环境的安全网络入侵检测系统 - Google Patents
一种适用于虚拟机环境的安全网络入侵检测系统 Download PDFInfo
- Publication number
- CN101309180B CN101309180B CN2008100481631A CN200810048163A CN101309180B CN 101309180 B CN101309180 B CN 101309180B CN 2008100481631 A CN2008100481631 A CN 2008100481631A CN 200810048163 A CN200810048163 A CN 200810048163A CN 101309180 B CN101309180 B CN 101309180B
- Authority
- CN
- China
- Prior art keywords
- module
- intrusion
- virtual machine
- event
- information
- Prior art date
- Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
- Expired - Fee Related
Links
Images
Abstract
本发明公开了一种适用于虚拟机环境的安全网络入侵检测系统,它包括位于入侵检测虚拟机的服务器端域间通信控制模块,入侵检测引擎模块和入侵响应控制模块,以及位于被检测的各应用虚拟机中的客户端域间通信控制模块、分域事件探测器模块和分域响应控制模块。针对虚拟机有虚拟机系统本身的安全性有待改进,而现有的入侵检测系统又无法达到目的这一问题,本发明充分考虑了虚拟机网络的分层结构,基于虚拟机的内部网络网上实现了对虚拟机系统的入侵检测保护,更好的提升了虚拟机系统应用于生产实践活动的安全性;同时,也利用虚拟机的隔离安全特性,实现了入侵检测系统与被保护系统的分离;相比于传统的网络入侵检测系统,该系统具有更好的安全性和可靠性。
Description
技术领域
本发明属于计算机安全领域和虚拟计算领域,为一种适用于虚拟机环境的安全网络入侵检测系统。
背景技术
随着计算机技术和网络通信技术的发展,计算机网络在近些年得到迅速普及,并已成为全社会信息交流和共享的重要媒介,深刻地改变着人们的工作和生活方式。在计算机飞速发展的同时,网络信息安全问题也变得日益严重,并成为制约网络和互联网经济发展的一个重要因素。近年来,网络攻击活动和信息安全事件层出不穷,涉及到的领域越来越广,造成的危害也越来越大。
网络入侵检测技术是一种用于检测计算机网络系统中入侵行为的网络信息安全技术,它主要通过监控计算机网络系统的状态、行为以及系统的使用情况,通过捕获到达计算机的数据包来检测系统的越权和误用行为,以及系统外部的入侵者利用系统的安全缺陷所进行的攻击行为。入侵检测系统(IDS)被认为是“防火墙”之后的第二道安全闸门,在网络信息安全体系中占有重要地位,这些年已经成为网络信息安全领域的一个研究热点。在入侵检测系统的研究中,人们提出了各种成熟的理论模型,但是也逐渐发现,基于传统计算机架构的入侵检测系统有其天生的弱点,当入侵检测系统所在的操作系统被破坏时,入侵检测系统本身的安全性无法得到保障,因此可能产生虚警现象,而对真正的入侵行为却视而不见。于是,随着虚拟机技术的日渐发展和成熟,研究者把目光转向虚拟机,希望利用虚拟机技术来解决传统的体系结构无法解决的关于入侵检测系统的安全问题。同时也探讨如何解决在虚拟机体系中出现的新的安全问题。
虚拟计算技术是最近非常流行的技术,已经受到越来越多的企业的关注和应用,虚拟机技术通过一个软件层(VMM或者Hypervisor)对底层物理硬件进行模拟,使得多个虚拟机可以运行于同一个物理机器之上,而各个虚拟机之间相互安全隔离。使用虚拟机技术可以节约企业运营成本,更有效的利用企业赢余计算能力,对于计算机系统的设计有重要意义,同时由于虚拟机系统提供的虚拟环境与底层硬件之间隔离的特性,虚拟机也同样可以用来提高计算机系统对外来攻击的安全性。在作为虚拟机核心的虚拟机管理层,其自身为安全软件提供了一个与位于上层虚拟机中的客户操作系统隔离的观察平台。
传统的入侵检测系统主要有基于主机的入侵检测系统和基于网络的入侵检测系统。通过研究发现,这两种入侵检测系统各自都有其优势和缺陷:基于主机的入侵检测系统可以很好的检测到系统中发生的入侵行为,对系统中发上的行为可以很好的检测到;但是主机入侵检测系统本身却无法很好的抵御针对系统或者入侵检测系统本身的攻击,他本身对攻击者而言是可见的,可以通过多种手段轻易地被探测。基于网络的入侵检测系统对于入侵者而言是不可见的,因而具有很好的健壮性,但是却对系统发生的入侵行为无法检测到,攻击者一旦绕过该入侵检测系统,则不再受任何控制。除了上述两个特点之外,无论是基于主机的入侵检测系统还是基于网络的入侵检测系统,由于本身并没有做到与其所位于的系统很好的保持隔离性,因此,攻击者是很容易探测到这样的入侵检测系统的存在的,这对入侵检测系统本身的安全性造成了极大的威胁。
发明内容
本发明的目的是为了克服传统的基于网络的入侵检测系统本身的不足,提供一种适用于虚拟机环境的安全网络入侵检测系统,该系统既有对主机系统有很好的检测性,又具有很好的健壮性。
本发明提供的适用于虚拟机环境的安全网络入侵检测系统,其特征在于:它包括位于入侵检测虚拟机的服务器端域间通信控制模块,入侵检测引擎模块和入侵响应控制模块,以及位于被检测的各应用虚拟机中的客户端域间通信控制模块、分域事件探测器模块和分域响应控制模块;
服务器端域间通信控制模块和各客户端域间通信控制模块为对称的模块,用于入侵检测虚拟机和各应用虚拟机之间的信息传递;
分域事件探测器模块把分域捕获的事件信息通过相应的客户端域间通信控制模块传递到服务器端域间通信控制模块,然后由服务器端域间通信控制模块将该事件信息传递给入侵检测引擎模块;
入侵检测引擎模块通过服务器端域间通信控制模块接收来自于分域事件探测器模块的事件信息;通过对该事件的信息进行提取,检测和分析,对确定为攻击的事件信息生成攻击事件消息,然后传递给入侵响应控制模块;
入侵响应控制模块负责接收并处理来自于入侵检测引擎模块的攻击事件信息;入侵响应控制模块根据攻击事件信息的类型和预定义的该类型攻击事件信息的处理方式,选择相应的方式进行响应;在需要分域响应的时候,入侵响应控制模块将响应信息通过服务器端域间通信控制模块传递到各个域的客户端域间通信控制模块;然后由客户端域间通信控制模块将信息转发到分域响应控制模块;
分域事件探测器模块负责监视到达和离开本虚拟机的网络数据包,并对需要进行检测的数据包进行捕获;随后,分域事件探测器模块将捕获的数据信息通过客户端域间通信控制模块传递给入侵检测引擎模块,由入侵检测引擎模块的数据信息进行检测。
通过本发明提供的适用于虚拟机的网络入侵检测系统,能够很好的保障入侵检测系统本身的安全特性,位于虚拟机中的入侵检测系统,即使在被监测系统已经被攻破的情况下,入侵检测系统依然能够正确地对系统的运行状况进行检测。同时,本发明的入侵检测系统可以具有更灵活的网络配置管理机制,既能集中控制入侵检测规则,又能细粒度的实现对各个具体虚拟机的安全规则配置。具体而言,本发明主要具有的主要特点为:
(1)系统安全性
本系统采用基于虚拟机来实现,利用虚拟机管理器对虚拟机间的隔离特征,使得位于虚拟机管理层的入侵检测系统对于虚拟机用户以及针对虚拟机的供给者而言是不可见透明的。而且即使在虚拟机系统本身被破坏的情况下,入侵检测系统不但自身是安全的,而且可以持续跟踪被破坏系统的状态,使得构建于虚拟机之上的入侵检测系统不仅具有安全性,而且具有极强的抗攻击能力和健壮性。
(2)配置灵活性
本系统采用灵活的配置策略,在本系统中,既可以通过集中配置,实现同一条入侵检测规则对整个虚拟机系统起到安全检测的作用;同时也支持单一配置,使得入侵检测系统规则能分别针对各虚拟机的不同的安全级别实现单独配置。从而使得整个系统既能方便的实现全局统一配置,保障最低安全级别,又能区别配置,满足各种安全等级的需要。
(3)实现高效性
本系统为了提高入侵检测的速度,并给系统带来尽可能小的载荷影响,采用了高效的入侵行为特征码匹配算法,同时,在实现中采用了半虚拟化的虚拟化实现方式,使得系统在入侵检测过程之中,尽可能的高效的实现入侵检测识别和入侵通知机制。
(4)功能丰富性和数据规则性
本系统为了支持更多的基于本系统的二次开发工作,在设计中,定义了良好的系统接口,完整规则的入侵日志记录文件以及可扩展的规则库接口。
附图说明
图1为适用于虚拟机的网络入侵检测系统的模块结构示意图;
图2为分域事件探测器模块结构及模块交互示意图;
图3为入侵检测引擎模块结构及模块交互示意图;
图4为入侵响应模块结构及模块交互示意图;
图5为入侵检测系统域间通信控制模块结构及模块交互示意图;
图6为适用于虚拟机的网络入侵检测系统的工作流程图。
具体实施方式
本发明利用虚拟机的隔离性,底层系统的透明性,以及高效性而设计的一种构建于新型的虚拟机体系架构之上的网络入侵检测系统。在本系统中,不但利用虚拟机的结构特征来实现更为安全,更为健壮的入侵检测系统,同时,也十分关注如何利用成熟的入侵检测理论来为一种新型的基于虚拟计算理论的计算机体系结构实现安全保障。下面结合附图对本发明作进一步详细的说明。
如图1所示,适用于虚拟机的安全网入侵检测系统在体系结构上主要分为两个部分:一部分是位于入侵检测虚拟机1中的入侵检测部分,包括服务器端域间通信控制模块6,入侵检测引擎模块7和入侵响应控制模块8。另一部分位于被检测的应用虚拟机2.1、......、2.n中,它包括客户端域间通信控制模块3.1、......、3.n,分域事件探测器模块4.1、......、4.n和分域响应控制模块5.1、......、5.n,为表述方便,下文中将客户端域间通信控制模块3.1、......、3.n统称为客户端域间通信控制模块3,分域响应控制模块4.1、......、4.n统称为分域响应控制模块4,分域事件探测器模块5.1、......、5.n统称为分域事件探测器模块5。其中,n为被检测的应用虚拟机的个数。
服务器端域间通信控制模块6和各客户端域间通信控制模块3是一对对称的模块。在系统中,入侵检测虚拟机和应用虚拟机通过这二个模块实现信息传递。分域事件探测器模块5把分域捕获的事件信息通过相应的客户端域间通信控制模块3传递到服务器端域间通信控制模块6,然后由模块6将该事件信息传递给入侵检测引擎模块7。
入侵检测引擎模块7通过服务器端域间通信控制模块6接收来自于分域事件探测器模块5的事件信息。通过对该事件的信息进行提取,检测和分析,对确定为攻击的事件信息生成攻击事件消息,然后传递给入侵响应控制模块8。
入侵响应控制模块8负责接收并处理来自于入侵检测引擎模块7的攻击事件信息。入侵响应控制模块8根据攻击事件信息的类型和预定义的该类型攻击事件信息的处理方式,选择合适的方式进行响应。在需要分域响应的时候,入侵响应控制模块8需要将响应信息通过服务器端域间通信控制模块6传递到各个域的客户端域间通信控制模块3;然后由该模块将信息转发到分域响应控制模块4。
分域事件探测器模块5分别位于各个应用虚拟机中。分域事件探测器模块5负责监视到达和离开本虚拟机的网络数据包,并对需要进行检测的数据包进行捕获。随后,分域事件探测器模块将捕获的数据信息通过客户端域间通信控制模块传递给位于入侵检测虚拟机1中的入侵检测引擎模块7,由该模块的数据信息进行检测。
当入侵响应控制模块8在接收到来自于入侵检测引擎模块7的入侵事件信息,并需要分域发送入侵响应信息时,它就会把生成的入侵相应信息发送到服务器端域间通信控制模块6,然后由服务器端域间通信控制模块传递给各客户端域间通信控制模块3。客户端域间通信控制模块3再将给消息传递给分域响应控制模块4,分域响应控制模块4根据传递的入侵响应消息的类型和内容,采取相应的方式进行响应,把该响应消息发给该虚拟机的相关用户和相应控制程序。
下面对本系统各个功能模块分别进行介绍。
分域事件探测器模块5在本系统主要负责从虚拟机的网络环境中收集各种用于入侵检测的信息,包括网络配置信息,端口扫描信息,以及实时网络传输数据。它主要是直接从位于VMM层的虚拟网络桥接设备分配给各个域的虚拟网络接口上获取数据信息。如图2所示。
网络设备检测模块5A在本系统中负责静态和动态地探测在虚拟网络中所有处于活动状态的网络设备。由于在虚拟机系统中,虚拟机可以动态创建,每一个配置了网络的虚拟机都使用虚拟机管理器为它分配的一个虚拟网络接口来进行对网络的访问。网络设备检测模块必须具备在系统动态变化过程中,准确探测系统中网络设备能力;同时,它还必须能够通过虚拟机网络配置文件来获取虚拟网络的配置信息,并根据此信息正确的分析网络数据的流向以及攻击的目标,网络设备检测模块从虚拟机网络配置文件库5E中获取网络配置基本信息,并从虚拟网络接口9动态获取网络接口信息。
网络数据捕获模块5B是在网络设备检测之后启动的。它通过网络设备检测模块对网络设备的获取和对虚拟网络配置信息的分析,识别虚拟网络组网方式(Bridge,NAT),并进一步获取网络设备事件和流经网络设备的数据流。在本模块的分析过程中,由于在采用DHCP技术的虚拟机中,虚拟机的IP地址有DHCP服务器动态分配。本系统根据到达虚拟网桥的数据包的MAC地址(VMM为每一个虚拟机的虚拟网络设备分配一个虚拟的MAC地址)来区分数据包的流向。网络数据捕获模块5B从虚拟网络接口9获取网络数据包并将这些数据包传递到数据预处理模块5C。
数据预处理模块5C对捕获的网络数据或者事件信息进行预处理,它可以根据预定义规则对网络数据捕获模块所获取的数据进行过滤或者优先处理。既可以减少无效数据,适当减轻入侵分析模块的输入量,同时也可以加快入侵检测系统对常规事件的反应速度:对于预定义规则范围内的事件或数据,无需通过整个入侵检测分析流程,可以直接在预定义模块做出响应,这对于长期困扰入侵检测系统的效率将会有极大的改进和提升。该模块从网络数据捕获模块5B接收数据,并在数据经过预处理后,将数据上传到数据提交模块5D。
数据提交模块5D对来自数据预处理模块5C的数据包通过客户端域间通信控制模块3向入侵检测系统进行提交。在数据提交过程中,数据提交模块根据每个数据包的虚拟机标志决定把数据包写入相应的数据接收缓冲区,数据包在缓冲区排队等待入侵检测引擎的处理。
虚拟网络配置文件库5E提供了虚拟机系统内部各个部署的虚拟机的网络配置信息以及整个虚拟子网的配置信息。该配置文件库由虚拟机管理器动态更新,通过对该配置文件库的访问,可以使得本系统能与虚拟机系统的实际配置保持一致。分域事件探测器模块必须能适应本配置文件内容的变化。
虚拟网络接口模块9是虚拟机中为了实现不同的虚拟机能够共享同一个物理网络设备而设置的网络通信模块。这种模块在驱动上分为前端驱动和后端驱动两部分。其中,后端驱动是具有特权级别的虚拟网络接口,它可以直接访问物理网卡的驱动程序,主要负责管理来自不同虚拟机的对网络设备的访问。而前端驱动不具有直接访问物理网络设备驱动的权利,他们必须通过网络后端设备才能访问物理网卡的驱动程序,在访问过程中,先向后端驱动发出访问请求,由后端驱动统一调度。该模块接收来自网络设备检测模块5A和网络数据捕获模块5B的访问请求。
如图3示,入侵检测引擎模块7主要负责根据入侵事件行为特征库,利用入侵检测实施策略,对来自于分域事件探测器模块捕获的数据进行分析处理,并把检测结果提交给入侵响应模块。入侵检测模块是一个共享资源,各个域捕获的数据包都需要通过入侵检测引擎的检测。可以采用一系列负载均衡的调度算法。本模块主要包括数据包解析模块7A、入侵事件提取模块7B、入侵事件检测模块7C、入侵事件特征提取模块7D、检测策略定制模块7E、检测策略库7F和入侵规则库7G。下面分别对各模块作具体的说明。
数据包解析模块7A主要是从服务器端域间通信控制模块6获取由分域事件探测器模块5提交的数据包,按照数据包所属的协议类型进行协议数据包的分析。根据协议规则,提取出数据包所封装的数据信息。并将分析后的数据信息提交给入侵事件提取模块7B。
入侵事件提取模块7B根据规则事件的定义,从数据包解析模块7A解析过的数据包中提取需要的关键字信息,用于入侵事件检测模块7C进行检测,该事件的提取可以严格根据事件定义进行提取,也可以提取更多的信息,以便在规定的事件信息不充分时,作为对事件定义进行精细划分的依据,这取决于系统管理员配置的检测策略。
入侵事件检测模块7C根据入侵事件提取模块7B提取出来的事件信息,判断是否有可以识别的入侵事件发生。在分析过程中,需要来自于入侵事件库7G的关于入侵事件行为特征的信息和来自与检测策略库7F的入侵检测策略信息。该模块首先获得检测策略配置信息,设置入侵检测引擎,然后通过检测策略定义的检测算法,来利用入侵事件特征码对获取的入侵事件进行检测。最后将经过分析的入侵事件提交入侵响应模块8等待处理。
入侵事件特征提取模块7D主要是用来从入侵事件库7G提取入侵事件信息和从检测策略库7F提取入侵检测策略,并将提取的信息提交给入侵事件检测模块7C,由入侵事件检测模块7C进行入侵检测。入侵事件库G可以采用多种存储方案,可以根据实际需要灵活配置。而对于入侵检测引擎而言,则要求统一,固定的行为特征模式。因此,入侵事件特征提取模块7D可以用来满足不同的存储方案和一致的使用接口之间的兼容需求。该模块从入侵事件库7G中提取不同的规则定义,并对规则进行解析;入侵事件特征提取模块7D从检测策略库7F中提取入侵检测策略配置方案。根据提取的规则定义和入侵检测策略配置方案,并随着系统管理员的配置,动态构建适用于不同虚拟机域的规则链。入侵事件检测模块需要利用规则链进行入侵事件的检测。
检测策略定制模块7E是系统管理员来对本系统功能进行定制和选择的接口。系统管理员通过检测策略定制模块可以选择本系统的工作模式,响应方式以及入侵检测系统采取的检测模式和接受安全检测的域,本模块还支持系统管理员对不同域进行安全规则的配置,相应的策略信息被存储到检测策略库7F中。通过本模块,系统支持灵活的配置。
检测策略库7F和入侵规则库7G主要是为了使本系统能够具有很好的扩展性,能支持多种入侵检测策略而实现的功能模块。本系统采用了插件式的入侵检测策略配置方案,可以通过定制不同的策略插件实现检测引擎的灵活配置,也提供了良好的检测策略定制和实现接口。入侵规则库7G主要是对本系统拟采用的规则的存储,本系统采用的入侵检测规则都存储在规则库中。检测策略库7F则是对通过检测策略定制模块7E定制的检测策略的存储。在系统运行过程中,入侵检测引擎将通过调用访问这些库的接口来实现对存储信息的访问和提取。
入侵响应控制模块8如图4所示,负责对入侵检测系统检测结果的输出,以及根据事件响应规则库采取激发的入侵响应活动,确保系统能正确行为,保障自身的安全。入侵响应机制是否健全、准确和安全,对入侵事件的持续跟踪能力、对入侵检测规则库和入侵事件行为特征库的更新是否及时以及虚拟机间的通信机制是否快速、安全、高效是评价本系统是否成功的关键因素。
入侵响应引擎模块8A主要根据入侵分析检测模块7所检测到的入侵事件,利用事件句柄访问响应规则库寻找对应事件的响应规则。然后根据规则决定通知一个或多个响应模块。在入侵分析检测模块7获得的是捕获的网络数据包满足入侵事件的事件定义句柄,在本模块需要根据该句柄来获取对应的事件响应规则定义。获取响应的方式和响应的消息。并根据响应的方式把响应消息通知相应的响应模块。
用户接口模块8B作为系统与外在环境的接口,是各种面向用户的接口总称。主要包括各种策略定制接口、规则定制接口以及直接面向用户的输出接口(输出界面)。从功能上分,可以有管理员用户接口和普通用户接口。该接口的设计是为了方便用户使用和配置本系统而设置的,该模块接收来自入侵响应引擎模块8A传递的响应消息,并把检测结果返回给用户。
响应控制信息输出模块8C是入侵响应引擎模块8A向攻击的目标系统传递控制信息的通信模块。当本系统检测出入侵事件发生时,优先选择采取控制措施,避免入侵事件进一步发生。该模块也通过服务器端域间通信控制模块6和客户端的域间通信控制模块3来向各个虚拟机之间传递控制信息,激发相应的安全措施。在本模块中,可以同防火墙等安全系统进行协作,使入侵检测系统能够及时阻止到达网络的入侵事件。
事件持续跟踪请求模块8D是由于可疑入侵事件在当前已有事件行为特征库无法匹配的情况下,系统发出对事件进行跟踪的请求,以等待系统对该事件进行进一步处理。该模块从入侵响应引擎模块8A获取入侵消息,并将入侵事件信息发送到服务器端域间通信控制模块6。考虑到虚拟机系统作为一种新的体系结构,可以用来从事各种安全分析检测实验,本接口也可以作为一个预留接口,可以基于本系统的对安全系统作进一步的扩展。
响应规则定制模块8E主要用于提供方便的响应规则定制功能。用户可以通过本模块方便的进行系统响应规则定制。由于本系统是一个动态的系统,系统在运行过程中会根据系统的运行状态进行调整,系统的响应方式也可能根据部署在系统中服务的需求而发生动态的变化,因此,响应规则定制模块8E对系统能在检测的入侵事件以后采取争取的行为是必不可少的。
响应规则库8F存储本系统使用的响应规则。入侵响应引擎模块8A利用这些响应规则来对由入侵检测引擎模块7传递来的入侵事件信息生成入侵响应信息。响应规则可以由响应规则定制模块8E进行定制。
域间通信控制模块如图5所示,在本系统中用来实现各个虚拟机之间的高效、快速的通信。在本模块中,利用了虚拟机本身提供的机制,有效的解决了传统实现方式中的信息被截取的问题。在本系统中,通信控制模块主要分为两个部分,位于入侵检测虚拟机的服务器端域间通信控制模块6和位于各个应用虚拟机的客户端域间通信控制模块3。服务器端和客户端在实现上是对称的。
EC(event channel,事件通道)预分配模块3A和6A用来在开始通信之前,分配事件通道(event channel)。每个虚拟机中都有若干个事件通道,通过EC预分配模块,分配一个事件通道作为入侵检测系统的事件通知机制。该事件通道用来在域间传递轻量级消息,主要用于在虚拟机连接建立之前传递连接建立的信息和在连接建立之后,传递对于通信区域的访问同步信息。该模块将预分配的事件通道传递给权限管理模块3B和6B来辅助建立域间连接。
权限管理模块3B和6B是用于虚拟机连接建立的权限管理。由于虚拟机的各个域并不能随意的通信,因此在通信模块实现通信的过程中,必须进行权限检测。主要通过权限映射配置来实现跨域的访问和资源共享。在本系统中,利用权限映射表来存储虚拟机间的权限映射信息。一个虚拟机授权另外一个虚拟机访问自己的某块内存区域,首先要取得自己虚拟地址对应的真实机器地址,然后利用权限映射操作,将给地址授权给要通信的另外一个虚拟机域访问。在该授权中,除了授权区域,还包括授权的权限范围。权限管理模块用于实现授权的映射管理。该授权信息上传到连接建立模块以作为建立连接时的权限依据。
连接建立模块3C和6C用来实现在入侵检测虚拟机和其他各个应用虚拟机之间建立通讯连接。首先通过事件通道模块3A和6A所分配的事件通道来传递连接建立信息。然后各个域可以通过事件通道传递的连接建立参数建立域间连接和消息共享区域。在该过程中需要权限管理模块3B和6B提供的权限映射信息。连接建立后,在虚拟机域间形成消息传递通路,入侵检测虚拟机1和应用虚拟机2可以利用消息传递模块3D、6D和消息接受模块3F、6F来实现消息的传递。
信息传递模块3D和6D和信息获取模块3E和6E负责实现不同虚拟机间的信息传递。在不同的域中,与上述两个模块进行通信的模块不同。在域间通信服务器端模块中,入侵检测引擎模块7从信息获取模块获取来自于应用虚拟机的事件信息,入侵响应模块8通过信息传递模块向其他应用虚拟机传递响应信息。相应的,在域间通信客户端模块,分域事件探测器模块5利用信息传递模块向服务器端传递事件信息,而分域入侵响应模块4利用信息获取模块从服务器端获取入侵响应信息。并提交客户端处理程序进行处理。
权限映射表3F和6F是保存虚拟机之间权限映射的实体。权限管理模块3B、6B在实施权限映射管理的过程中,需要访问本文件。而在系统有新的授权行为时,也需要更新本权限映射表,保持同步。
本发明的系统工作流程如图6所示,主要分成三个部分来对采用本发明实现的虚拟机入侵检测系统的工作流程做进一步具体的描述。
(1)数据采集层的工作流程:在数据采集层,虚拟网络有着不同于传统的单网卡的网络结构,在虚拟机环境中,网络设备分为物理网络设备和虚拟网络设备。物理网络设备是虚拟机与外部网络之间的唯一接口;虚拟网络设备有虚拟网桥(virbr0)连接,负责从虚拟网桥设备到各个虚拟机域的数据分发和传递工作。因此在采用本发明实现的虚拟机网络入侵检测系统中,首先要正确识别网络设备,包括物理网络设备,虚拟网络设备和虚拟网桥设备,并能正确分析相关设备的网络接口。此后,网络设备读取模块继续对该虚拟机所拥有的虚拟网络进行分析。虚拟机的网络配置信息放在位于虚拟机的xenstore里面,设备读取模块利用xenstore的访问API来获取网络配置信息,并根据相应的网络配置方式来设定数据包的目的地址解析策略。完成对设备和网络配置信息的初始化后,数据采集层的控制权转交给数据捕获模块,由数据捕获模块从虚拟网桥设备捕获来自于外部网络环境的到达虚拟机内部虚拟网络环境的所有数据包,并按照网络配置方式对每个数据包的目的地址进行解码分析,按照目的地址对数据包进行分类存储。同时,在数据采集层还要利用预定义的数据包预处理模块实现对数据包的过滤,滤去信任的数据包和不符合标准定义的数据包,减少系统负载,加快处理频率。数据包预处理模块还对截获的数据包进行加工整理,以一种标准的形式提交给入侵检测引擎模块。
(2)入侵检测分析流程:入侵检测引擎模块主要负责接收从信息采集模块传递过来的经过预处理的数据包,并进行入侵检测分析。数据包解析模块首先按协议解析网络数据包,根据协议规则从网络数据包中提取需要进行分析和模式匹配的关键协议部分和数据部分。然后根据入侵事件库预定义的入侵行为特征来对提却的用来进行入侵检测分析的数据进行模式匹配比较,如果行为特征符合,则可判断有相应的入侵行为发生,需要通知响应机制采取相应的措施,如果判断无入侵行为发生,则可以不作处理,简单通知数据传递机制转发该数据包到目的地,否则数据包的入侵行为无法判断,则需要通知系统管理员发现无法识别的入侵行为,等待采取进一步的行动,此处可以通过多线程机制避免系统处于等待状态而产生丢包行为。在入侵检测分析的过程中,需要用到虚拟机环境中的入侵行为特征库的信息作为行为检测的依据。
(3)入侵响应流程:在通过上述的入侵检测分析之后,入侵事件被检测,并通知入侵响应模块。入侵响应引擎从响应规则库获取配置信息,对相应的入侵事件采取规则库所规定的行为。系统的工作流程在此处分为两个部分来进行,如果该入侵行为具有相应的规则集,则按照规则定义采取相应措施,包括发布入侵信息,报警管理员发生入侵事件以及按照规则定义采取防御措施等等。如果入侵行为没有适用的规则,则应该报警通知管理员,以采取进一步安全措施。此处规则的配置可以灵活多样,但要求规则定义必须清楚明白,符合规范,便于解析和采取响应措施。
Claims (5)
1.一种适用于虚拟机环境的安全网络入侵检测系统,其特征在于:它包括位于入侵检测虚拟机(1)的服务器端域间通信控制模块(6),入侵检测引擎模块(7)和入侵响应控制模块(8),以及位于被检测的各应用虚拟机中的客户端域间通信控制模块(3)、分域事件探测器模块(5)和分域响应控制模块(4);
服务器端域间通信控制模块(6)和各客户端域间通信控制模块(3)为对称的模块,用于入侵检测虚拟机(1)和各应用虚拟机之间的信息传递;
分域事件探测器模块(5)把分域捕获的事件信息通过相应的客户端域间通信控制模块(3)传递到服务器端域间通信控制模块(6),然后由服务器端域间通信控制模块(6)将该事件信息传递给入侵检测引擎模块(7);
入侵检测引擎模块(7)通过服务器端域间通信控制模块(6)接收来自于分域事件探测器模块(5)的事件信息;通过对该事件的信息进行提取,检测和分析,对确定为攻击的事件信息生成攻击事件消息,然后传递给入侵响应控制模块(8);
入侵响应控制模块(8)负责接收并处理来自于入侵检测引擎模块(7)的攻击事件信息;入侵响应控制模块(8)根据攻击事件信息的类型和预定义的该类型攻击事件信息的处理方式,选择相应的方式进行响应;在需要分域响应的时候,入侵响应控制模块(8)将响应信息通过服务器端域间通信控制模块(6)传递到各个域的客户端域间通信控制模块(3);然后由客户端域间通信控制模块(3)将信息转发到分域响应控制模块(4);
分域事件探测器模块(5)负责监视到达和离开本虚拟机的网络数据包,并对需要进行检测的数据包进行捕获;随后,分域事件探测器模块(5)将捕获的数据信息通过客户端域间通信控制模块(3)传递给入侵检测引擎模块(7),由入侵检测引擎模块(7)对数据信息进行检测。
2.根据权利要求1所述的安全网络入侵检测系统,其特征在于:分域事件探测器模块(5)包括网络设备检测模块(5A)、网络数据捕获模块(5B)、数据预处理模块(5C)、数据提交模块(5D)和虚拟机网络配置文件库(5E);
网络设备检测模块(5A)用于在系统动态变化过程中,准确探测系统中网络设备;它通过虚拟机网络配置文件来获取虚拟网络的配置信息,并根据此信息正确的分析网络数据的流向以及攻击的目标,网络设备检测模块(5A)从虚拟机网络配置文件库(5E)中获取网络配置基本信息,并从虚拟网络接口(9)动态获取网络接口信息;
网络数据捕获模块(5B)通过网络设备检测模块(5A)对网络设备的获取和对虚拟网络配置信息的分析,识别虚拟网络组网方式,并进一步获取网络设备事件和流经网络设备的数据流;网络数据捕获模块(5B)从虚拟网络接口(9)获取网络数据包并将这些数据包传递到数据预处理模块(5C);
数据预处理模块(5C)用于接收网络数据捕获模块(5B)提交的数据,根据预定义规则对接收的数据进行过滤或者优先处理,并将处理后的数据上传到数据提交模块(5D);
数据提交模块(5D)对来自数据预处理模块(5C)的数据包通过客户端域间通信控制模块(3)向入侵检测系统进行提交;在数据提交过程中,数据提交模块(5D)根据每个数据包的虚拟机标志决定把数据包写入相应的数据接收缓冲区,数据包在缓冲区排队等待入侵检测引擎的处理;
虚拟机网络配置文件库(5E)用于提供虚拟机系统内部的各应用虚拟机的网络配置信息以及整个虚拟子网的配置信息,使得本系统的配置信息与虚拟机系统的实际配置信息保持动态一致。
3.根据权利要求1所述的安全网络入侵检测系统,其特征在于:
入侵检测引擎模块(7)包括数据包解析模块(7A)、入侵事件提取模块(7B)、入侵事件检测模块(7C)、入侵事件特征提取模块(7D)、检测策略定制模块(7E)、检测策略库(7F)和入侵事件库(7G);
数据包解析模块(7A)用于从服务器端域间通信控制模块(6)获取由分域事件探测器模块(5)提交的数据包,按照数据包所属的协议类型进行协议数据包的分析;根据协议规则,提取出数据包所封装的数据信息;并将分析后的数据信息提交给入侵事件提取模块(7B);
入侵事件提取模块(7B)根据规则事件的定义,从数据包解析模块(7A)解析过的数据包中提取需要的关键字信息,用于入侵事件检测模块(7C)进行检测;
检测策略定制模块(7E)提供用户接口,用于定制检测策略,并将策略信息存储到检测策略库(7F)中;
检测策略库(7F)用于存储检测策略;入侵事件库(7G)用于存储本系统拟采用的入侵检测规则;
入侵事件特征提取模块(7D)从入侵事件库(7G)中提取规则定义,从检测策略库(7F)中提取入侵检测策略,并将提取的规则定义和入侵检测策略提交给入侵事件检测模块(7C),由入侵事件检测模块(7C)进行入侵检测;
入侵事件检测模块(7C)根据入侵事件特征提取模块(7D)中提取的规则定义和入侵检测策略配置方案对来自于入侵事件提取模块(7B)的事件信息进行判断,判断是否有能够识别的入侵事件发生;将经过分析的入侵事件提交入侵响应控制模块(8)等待处理。
4.根据权利要求1所述的安全网络入侵检测系统,其特征在于:入侵响应控制模块(8)包括入侵响应引擎模块(8A)、用户接口模块(8B)、响应控制信息输出模块(8C)、事件持续跟踪请求模块(8D)、响应规则定制模块(8E)和响应规则库(8F);
入侵响应引擎模块(8A)根据入侵检测引擎模块(7)所检测到的入侵事件,利用事件句柄访问响应规则库(8F)寻找对应事件的响应规则;然后根据规则决定通知一个或多个响应模块;
用户接口模块(8B)作为系统与用户的接口,接收来自入侵响应引擎模块(8A)传递的响应消息,并把检测结果返回给用户;
响应控制信息输出模块(8C)用于入侵响应引擎模块(8A)向攻击的目标系统传递控制信息;响应控制信息输出模块(8C)还通过服务器端域间通信控制模块(6)到客户端的域间通信控制模块(3)来向各个虚拟机之间传递控制信息,激发相应的安全措施;
事件持续跟踪请求模块(8D)从入侵响应引擎模块(8A)获取入侵消息,在当前已有事件行为特征库无法匹配的情况下,并通过服务器端域间通信控制模块(6)将跟踪请求发送给相应的应用虚拟机;
响应规则定制模块(8E)将用户提供的规则存储到响应规则库(8F)。
5.根据权利要求1所述的安全网络入侵检测系统,其特征在于:
服务器端域间通信控制模块(6)和位于各个应用虚拟机的客户端域间通信控制模块(3)均包括事件通道预分配模块、权限管理模块、连接建立模块、信息传递模块、信息获取模块和权限映射表;
事件通道预分配模块用于开始通信之前分配事件通道,将预分配的事件通道传递给权限管理模块来辅助建立域间连接;
权限管理模块用于虚拟机连接建立的权限管理,并利用权限映射表存储虚拟机间的权限映射信息;将授权信息上传到连接建立模块;
连接建立模块通过事件通道模块所分配的事件通道来传递连接建立参数,并根据权限管理模块提供的权限映射信息,建立域间连接和消息共享区域;
信息传递模块和信息获取模块负责实现入侵检测虚拟机和应用虚拟机之间信息传递。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100481631A CN101309180B (zh) | 2008-06-21 | 2008-06-21 | 一种适用于虚拟机环境的安全网络入侵检测系统 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN2008100481631A CN101309180B (zh) | 2008-06-21 | 2008-06-21 | 一种适用于虚拟机环境的安全网络入侵检测系统 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN101309180A CN101309180A (zh) | 2008-11-19 |
CN101309180B true CN101309180B (zh) | 2010-12-08 |
Family
ID=40125410
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN2008100481631A Expired - Fee Related CN101309180B (zh) | 2008-06-21 | 2008-06-21 | 一种适用于虚拟机环境的安全网络入侵检测系统 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN101309180B (zh) |
Families Citing this family (24)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101465770B (zh) * | 2009-01-06 | 2011-04-06 | 北京航空航天大学 | 入侵检测系统部署方法 |
US8989802B2 (en) * | 2009-01-27 | 2015-03-24 | Symbol Technologies, Inc. | Methods and apparatus for a mobile unit with device virtualization |
CN101668022B (zh) * | 2009-09-14 | 2012-09-12 | 陈博东 | 一种建立在虚拟机上的虚拟网络隔离系统及实现方法 |
US20120246740A1 (en) * | 2011-03-22 | 2012-09-27 | Brooker Marc J | Strong rights management for computing application functionality |
CN102523215B (zh) * | 2011-12-15 | 2014-10-01 | 北京海云捷迅科技有限公司 | 基于kvm虚拟化平台的虚拟机在线杀毒系统 |
CN102521547B (zh) * | 2011-12-16 | 2014-09-24 | 华中科技大学 | 虚拟域内访问控制系统的保护系统 |
CN102724176A (zh) * | 2012-02-23 | 2012-10-10 | 北京市计算中心 | 一种面向云计算环境的入侵检测系统 |
EP2820583A4 (en) * | 2012-02-29 | 2015-11-25 | Hewlett Packard Development Co | NETWORK SERVICE INTERFACE ANALYSIS |
CN102780691B (zh) * | 2012-05-24 | 2016-01-20 | 努比亚技术有限公司 | 一种移动终端检测、回避网络攻击的方法 |
US9571507B2 (en) | 2012-10-21 | 2017-02-14 | Mcafee, Inc. | Providing a virtual security appliance architecture to a virtual cloud infrastructure |
CN103036998A (zh) * | 2012-12-21 | 2013-04-10 | 北京邮电大学 | 云计算中一种基于免疫原理的入侵检测系统 |
CN103036745A (zh) * | 2012-12-21 | 2013-04-10 | 北京邮电大学 | 云计算中一种基于神经网络的异常检测系统 |
CN103023704B (zh) * | 2012-12-24 | 2016-04-06 | 北京启明星辰信息技术股份有限公司 | 虚拟网络服务设备接入方法及系统 |
CN103118021B (zh) * | 2013-01-25 | 2016-04-20 | 中国电力科学研究院 | 应用级容侵系统和方法 |
CN103178988B (zh) * | 2013-02-06 | 2016-08-03 | 中电长城网际系统应用有限公司 | 一种性能优化的虚拟化资源的监控方法和系统 |
CN103457945A (zh) * | 2013-08-28 | 2013-12-18 | 中国科学院信息工程研究所 | 入侵检测方法及系统 |
CN103929502B (zh) * | 2014-05-09 | 2018-01-19 | 成都国腾实业集团有限公司 | 基于虚拟机自省技术的云平台安全监控系统及方法 |
WO2016204838A2 (en) * | 2015-03-18 | 2016-12-22 | Hrl Laboratories, Llc | System and method to detect attacks on mobile wireless networks based on motif analysis |
CN105487916B (zh) * | 2015-11-24 | 2018-11-20 | 上海君是信息科技有限公司 | 一种桌面云环境下的虚拟机安全加固方法 |
FI127335B (en) * | 2016-05-27 | 2018-04-13 | Cysec Ice Wall Oy | Logging of telecommunications on a computer network |
CN107278359B (zh) | 2016-11-09 | 2020-09-18 | 华为技术有限公司 | 云计算系统中报文处理的方法、主机和系统 |
CN107278362B (zh) * | 2016-11-09 | 2019-04-05 | 华为技术有限公司 | 云计算系统中报文处理的方法、主机和系统 |
CN109218286B (zh) * | 2018-07-27 | 2021-10-08 | 亚信科技(成都)有限公司 | 虚拟化环境下实现无代理edr的方法及装置 |
CN115994353B (zh) * | 2023-03-22 | 2023-06-06 | 北京升鑫网络科技有限公司 | 基于容器部署的主机入侵检测系统、方法及电子设备 |
Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101087196A (zh) * | 2006-12-27 | 2007-12-12 | 北京大学 | 多层次蜜网数据传输方法及系统 |
-
2008
- 2008-06-21 CN CN2008100481631A patent/CN101309180B/zh not_active Expired - Fee Related
Patent Citations (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN101087196A (zh) * | 2006-12-27 | 2007-12-12 | 北京大学 | 多层次蜜网数据传输方法及系统 |
Non-Patent Citations (2)
Title |
---|
Feng Zhao et al..VNIDS:A Virtual Machine-based Network Intrusion DetectionSystem.Anti-countefeiting,Security and identification ,2008 ASID 2008,2nd International Conference on.2008,254-259. |
Feng Zhao et al..VNIDS:A Virtual Machine-based Network Intrusion DetectionSystem.Anti-countefeiting,Security and identification,2008 ASID 2008,2nd International Conference on.2008,254-259. * |
Also Published As
Publication number | Publication date |
---|---|
CN101309180A (zh) | 2008-11-19 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN101309180B (zh) | 一种适用于虚拟机环境的安全网络入侵检测系统 | |
US10854059B2 (en) | Wireless sensor network | |
US9166988B1 (en) | System and method for controlling virtual network including security function | |
CN107659543B (zh) | 面向云平台apt攻击的防护方法 | |
CN109729180A (zh) | 全体系智慧社区平台 | |
CN102546638B (zh) | 一种基于场景的混合入侵检测方法及系统 | |
CN102999716B (zh) | 虚拟机器监控系统及方法 | |
CN101951384B (zh) | 一种分布式安全域逻辑边界保护方法 | |
CN105516177B (zh) | 基于sdn和nfv的5g网络多级攻击缓解方法 | |
CN107135093A (zh) | 一种基于有限自动机的物联网入侵检测方法及检测系统 | |
CN106411578A (zh) | 一种适应于电力行业的网站监控系统及方法 | |
CN103391216A (zh) | 一种违规外联报警及阻断方法 | |
CN100486180C (zh) | 一种基于ieee 802.1x协议的局域网安全管理方法 | |
CN104378387A (zh) | 一种虚拟化平台下保护信息安全的方法 | |
CN102546624A (zh) | 一种网络多路入侵检测防御方法及系统 | |
CN106537406A (zh) | 一种网络安全系统及其方法 | |
CN103902885A (zh) | 面向多安全等级虚拟桌面系统虚拟机安全隔离系统及方法 | |
CN112766672A (zh) | 一种基于全面评估的网络安全保障方法及系统 | |
CN104509034A (zh) | 模式合并以识别恶意行为 | |
CN106850690A (zh) | 一种蜜罐构造方法及系统 | |
Wang et al. | A centralized HIDS framework for private cloud | |
CN104753952A (zh) | 基于虚拟机业务数据流的入侵检测分析系统 | |
CN110099041A (zh) | 一种物联网防护方法及设备、系统 | |
CN101848117A (zh) | 一种违规外联监控方法及其系统 | |
CN113965341A (zh) | 一种基于软件定义网络的入侵检测系统 |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
C06 | Publication | ||
PB01 | Publication | ||
C10 | Entry into substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
C14 | Grant of patent or utility model | ||
GR01 | Patent grant | ||
C17 | Cessation of patent right | ||
CF01 | Termination of patent right due to non-payment of annual fee |
Granted publication date: 20101208 Termination date: 20130621 |