云环境下基于虚拟机配置文件针对DDOS攻击的最优网络攻击探测方法
关键词:云平台,DDOS,虚拟机,配置文件,IDS,检测,网络,攻击,脆弱,防御,安全,威胁
众所周知,云计算是一种基于网络平台的技术,它的特性有提供给租户访问权限、部署在远程以及分布式的IT资源,如硬件、内存、网络和应用程序等。它作为一个在公司组织中被广泛使用并且包含着宝贵数据和应用的服务,但在面对来自网络层、主机层和虚拟层的网络攻击之下它却是极其脆弱的。但为了反击这些漏洞,传统的防御手段虽然存在但却不太能有效的的移植到云平台之上使用。这篇论文明确了当下对于网络攻击(主要是DDOS)处理方式的缺陷并且提供了一种在同等级网络安全功能中以最小的资源成本使其在云环境中得以适用的方法。本文描述了该概念的原型实现,并详细介绍了实验设置和初步结果。
1 介绍
云计算是当前计算机和数据存储领域的一个流行词。 它提供基于网络的对共享资源池的访问,采用按使用量付费的模式[1]。这些资源包括实用程序,字处理软件,远程代码执行平台(后端支持用户自己创建的应用程序),远程数据存储设施,计算基础设施等 [2]。使云计算中的一切变得简单的重要一点是,物理资源的虚拟副本可以根据云用户的需求动态创建,并且可以通过云服务提供商的最小管理努力来分配、管理和发布[3]。云计算在三个计算机层面上提供服务,包括SaaS(软件即服务)、PaaS(平台即服务)和IaaS(基础设施即服务)[4]。云计算为多个云用户(包括内部攻击者和外部攻击者)提供了共享的资源,但由于一些用户的秘密数据存储在云上,因此在云计算中,信息安全和信任建立是一个迫在眉睫的需求[5]。一些安全问题需要在云中加强访问控制和日志记录要求,网络安全机构可以阻止众所周知的云网络攻击,包括DDOS [6], 以及一些更强的基于主机的安全措施检测恶意程序和安全来自虚拟层的攻击,包括虚拟机希望,虚拟机逃脱等[7]。本文重点研究了云网络层DDOS攻击的安全性,提出了一种基于虚拟机网络配置文件信息的有效防御技术,并给出了实验结果。研究的动机在于网络层攻击的发生率非常惊人 ,[8] [9]因此,在云环境中,迫切需要优化防御措施来抵御它们。本文提出的解决方案为云环境下的网络攻击模式检测提供了一种新的轻量级的基于虚拟机配置文件的方法。实验用到的原型已经用一组攻击模式进行了测试,并且初步结果表明它是有效的。
2 相关工作
由于基于网络的攻击(如DDOS)对云基础设施的潜在威胁,研究人员已经开始研究防范和防御措施来抵御它们。然而,就效率性和完整性而言,对于一个适合云计算的完美网络入侵检测系统的分析仍在讨论中。传统的网络入侵检测方法在某些特定的环境中也被证明在云环境中使用的十分复杂的。Hai Jin等人提出了用于实时监控网络流和文件完整性的VMFence[10]。但这种架构在计算上很复杂,因为它需要检查连接到中心域的所有虚拟机受到的攻击模式的数据。Daniel Smallwood等人描述了一个实用程序的有效性[11],该实用程序被开发来改进回顾性数据包分析,并通过来自提供云服务的ISP的数据中心流量进行了测试。结果表明,它们在查询功能的性能方面优于现有技术。对于小型的企业网络,深度包检测的概念可以有效地工作,但对于分布式和复杂的网络拓扑,如云网络,深度包检测方案将需要大量的资源。 Chi-Chun Lo等人在云计算区域上提出了合作IDS的思想[12]。这些网络入侵检测系统通过交换警报来相互合作,以减少DoS攻击的影响。 但这种架构在合作和延迟方面需要额外的通信成本。S. Roschke等人提出了云中的可扩展入侵检测系统管理架构[13],该体系架构由几个传感器组成,这些传感器负责向中央管理单元报警。由于传感器是分布式的,并且驻留在虚拟机上,因此无法期望从传感器获得更高级别的数据。C. Mazzariello等人提出了一种基于网络的云计算环境IDS,其中解决了检测云托管服务的DoS攻击问题[14],系统能够检测到泛洪攻击,但在这种架构中,过载的集群控制器也会成为瓶颈。S.N. Dhage等人提出了一种云计算环境下的入侵检测系统,其中IDS的每个实例必须监视单个用户[15],但是在这里,主机可以破坏部署在虚拟机上的单个入侵检测系统,因此,在此之后,系统将无法正确地检测网络入侵。 从上述在云中的入侵检测系统领域所做的相关工作中获得的知识中,我们发现所提出的方案是好的,但它们缺少两个重要的东西,即认证和效率。该方案没有执行优化的检测,即他们搜索网络流量的模式,这是其在云上能够应用的迫切需要,即使知道一些系统在过去并不是严重的受害者,但在不久的将来有可忽略的可能性。当这些技术以分布式方式运行在虚拟机上而不是在集中式域上时,它们还降低了彼此检测的信任度。 此外,基于合作的技术是好的,但增加了通信成本和检测延迟。我们提出的方案运行在一个有特权的中央域上,并通过使用虚拟机配置文件(描述虚拟机网络特征信息)来执行优化后的规则匹配,该配置文件将在第3节中描述。
3 提出方案
该方案具有以下特点:对云计算环境中来自不同虚拟机的网络流量进行分类。 因此,云环境的网络流量被视为来自单个物理网络接口的流量。该方法针对所有可能的攻击模式为每个虚拟机创建单独的概要文件。 虚拟机的概要文件包含需要测试的攻击模式(规则)和阈值。 (我们目前关注的是TCP SYN泛洪攻击的检测)。该技术根据虚拟机的网络行为将攻击模式检测所需的计算资源以指数方式减少,为云环境下基于报文检测的网络入侵检测提供了一种轻量级而完整的方法。 方案描述如下:在将虚拟机初始化为云用户时,初始化规则的创建过程,建立规则集及其阈值。 在这一步中,我们在N个包的周期内运行规则模式检测,相同的过程重复M次。N被定义为在一段时间内寻找规则匹配的数据包(在原型实现中是TCP SYN数据包)的数量(基本上是一个周期)。M是规则的重复值,该规则决定在N个包上遵循多少次相同的处理以获得一条符合规则的正确网络行为(TCP SYN泛洪检测规则)。我们基于规则的检测遵循以下检测步骤:
- 它从规则建立的初始阶段提取规则模式的阈值。它对N个报文进行规则匹配操作,即累计每N个报文的规则匹配模式数,并与阈值P进行匹配,判断是否存在正在进行的DDOS攻击。这与传统的基于阈值的TCP SYN DDOS攻击检测方案相同。
- 如果根据这一规则在网络上的第一次运行期间,流量显示没有正在进行的攻击(即没有越过阈值),则检测频率降低为2的幂。 这意味着现在每隔一个包搜索一次攻击模式(规则匹配)。 如果同样的情况发生第二次,检测再次减少与相同的比率。目前的模式在第4个包之后匹配一次。 同样,在第一种情况下,当网络流量没有超过阈值时,阈值检测的周期(N包)移动到2N包,而在第二种情况下,阈值检测的周期(N包)移动到4N包。
- 这种攻击模式检测的指数下降直到一个限制,这取决于减少的检测速度的限制被接受程度。若存在一下这些原因,那么检测的速度下降是可以接受的:在DDOS攻击的情况下,如TCP SYN洪水数据包发送的速度太高,因此如果选择了正确的值N,它不会创造明显的延迟检测即使攻击匹配是S倍下降。检出率在规定的极限之间波动。检测量呈指数下降,直到S的极限,之后再次采用正常检测策略,再次检测方案对攻击模式的匹配量呈指数下降。随后执行此操作,直到检测到攻击。因此,检测的速度不会总是下降。但是它的速度会变为1/S倍。
- 然而如果规则匹配的数据包超出攻击检测阈值那么检测阶段将会变为传统的检测策略,即对每个包进行检测,并且将继续留在这一状态直到Y * N次指数减少了攻击模式检测。这是为了确保检测到的攻击已被正确地处理并验证其不存在。当检测到TCP SYN 泛洪攻击时,变换到基础快速检测策略后,它会收集SYN报文的发送地址。 此时,与这些IP地址的通信停止t秒。其规则如下:假设攻击时接收TCP SYN flood报文的源IP地址为Z个。 我们根据N个报文中获得的TCP SYN报文的数量对IP地址进行排序。 因此,如果我们停止与IP地址的通信:#TCP SYN包= P/Z - d,其中d是变量参数,定义为Max (#TCP SYN来自IP)/Z。
通过在IP表中为攻击的IP地址创建规则来停止通信。该方案不仅能识别来自外部IP地址的TCP SYN flood攻击,还能识别向外部发起TCP SYN flood攻击的虚拟机。例如,如果一个虚拟机用户试图对其他虚拟机或其他外部系统发起TCP SYN洪泛化攻击,则会记录该事件,并将系统与外部世界的通信断开一段时间(t秒)。在基于网络行为的规则更新过程中,在预定义的一段时间或数据包后(取决于网络行为条件的动态性,它可以是小的或大的,是一个可定制的参数),通过基于规则的检测再次将虚拟机放在后台初始规则建立步骤中。但是现在该规则随着网络条件和虚拟机行为而更新。规则的虚拟机网络行为将根据再次应用初始规则创建时获得的值进行更新。经过M次后,得到的值会寻找最频繁的最大值(例如h)。只有当值高于当前阈值时,才会更新阈值,其规则如下:threshold = threshold f * (threshold -h)。其中f是一个很小的值,一般为0.125,它会根据当前网络的情况稳定地改变阈值,但在短时间的动态突发流量情况下也不会干扰阈值。该方案的实现作为TCP SYN泛洪攻击检测技术的原型。
4 实施细节、结果和讨论
我们发现通过将中央特权域的以太网接口设置为混杂模式,可以从该接口嗅出网络流量。在嗅探数据包后,流量根据从中获得的虚拟机进行分类。每个虚拟机都有一个单独的数据库,存储每N个数据包的TCP SYN包的行为。我们发现每个虚拟机有不同的网络使用场景。在初始运行和查找每50个TCP包的TCP SYN包时,我们发现每个虚拟机都有不同的行为,这取决于虚拟机的使用场景 N = 50是考虑到TCP待办事项的值,慢连接为128,正常情况为1024。同时,我们希望TCP SYN泛洪能够及时检测到,即使我们在一定程度上指数级地减少规则检测。通过将值设置为50,我们可以将检测速度降低到周期为4N的值。即使这样,我们也可以确定,在这种情况下,如果TCP SYN 泛洪攻击发生,它不会完全填满TCP队列,因为4N的值将比1024少200,这是TCP backlog值的正常情况。当检测到泛洪攻击时,它可以以可接受的检测速度进行处理。对于每台虚拟机,通过存储每N(50)封#TCP SYN报文1000次,然后从1000次运行的最大值中识别出TCP SYN flood攻击检测的阈值。该值的最大值作为TCP SYN泛洪攻击检测的攻击检测阈值。在特定虚拟机的初始规则创建阶段,我们发现这个阈值为20,因此我们设置阈值P=20。在基于规则的检测过程中,我们发现了规则模式匹配操作的优化。我们取S=4的值,因此模式将每4个包匹配一次,有效N = 4N =200。规则匹配操作方面的优化如下所示。触发该规则的TCP包的总数是2000万个。在我们的方案中,通过改变检测策略优化检测,N 2N 4N 2N N包(500包)的规则模式搜索量为5N(200包)。而在传统的攻击检测方法中,通过规则模式搜索连续的方式检测SYN泛洪攻击将需要10N(500包)。因此模式匹配的数量将减少,并且将等于:(10N - 5N)/10N * 100 = 50%。根据所提出的攻击模式搜索策略的动态性,对N个报文同时检测到攻击的概率为:及时检测的概率=(2/5)*100 = 40%。这是因为每一个周期检测两次进入正常检测策略,从N周期移动到4N周期,再回到N周期。速度检测的权衡与拟议的技术也为这一事实拒绝服务攻击如TCP SYN泛洪与大量的系统过载的目的是攻击数据包,以填补TCP连接队列使它无法处理任何传入的数据包有效的TCP连接。因此,在这种情况下,即使有很大的检测周期(达到极限),攻击也很容易被检测到,因为它们发射的频率非常高。事实上,系统在正常运行模式下停留的时间比受到攻击的时间更长,因此以这种方式降低检测速度将最终节省规则匹配操作所需的计算资源。 图1显示了工作过程中的一次抓包。
图1 入侵检测方案GUI正常运行情况
5 结论
本文描述了一种非常轻量级和完整的基于规则的分布式拒绝服务网络云入侵检测方法。该方案是集中式的,因此不会受到超载的影响,因为它保留了最少的通信实体的信息,并为检测做了最少的分析。它为网络入侵检测中基于规则的连续模式匹配节省了大量的资源。该方案不依赖于虚拟机,运行在集中式域
剩余内容已隐藏,支付完成后下载完整资料
英语原文共 7 页,剩余内容已隐藏,支付完成后下载完整资料
资料编号:[596103],资料为PDF文档或Word文档,PDF文档可免费转换为Word
以上是毕业论文外文翻译,课题毕业论文、任务书、文献综述、开题报告、程序设计、图纸设计等资料可联系客服协助查找。