代昆玉,胡滨
云计算环境下的DDoS攻击防御技术研究
代昆玉,胡滨
传统的网络防御技术在云计算环境下难以抵御DDoS攻击。针对云计算网络流量的行为特征,提出了一种云计算环境下的基于用户身份认证超载检测和网络流量负载平衡策略的DDoS攻击检测防御模型。该模型对访问云计算数据中心的用户进行身份认证,并通过对异常流量的分层处理来满足云计算服务的数据传输效率与安全性要求。仿真实验结果表明,该模型可有效地检测防御云计算环境下的DDoS攻击行为。
云计算;DDoS攻击防御;流量认证;负载平衡
云计算是一种基于互联网的服务,它可使用户不受时间和地点的限制进入可配置的计算资源共享池(包括服务器、存储、应用软件、服务、网络等资源)按需实现对计算资源的在线访问[1]。云计算作为新兴技术和商业模式的混合体,由于具有超大规模、虚拟化、高可靠性、可扩展性好、按需服务等优点,近年来得到迅猛发展。
根据互联网数据分析合作协会的调查,互联网上每周至少出现约 5000例 DDoS(分布式拒绝服务)攻击事件[2]。DDoS 攻击可以使云计算平台瘫痪,导致其无法向云用户提供正常服务,造成巨大的经济损失和社会影响[3]。在云计算环境下,DDoS攻击虚拟服务器降低云计算服务的性能以达到网络攻击目的[4]。由于云计算服务的数据中心 (Data Centre, DC) 存储着大量的核心数据,因此其成为 DDoS攻击的核心目标。
基于传统互联网模式的DDoS攻击防御方法并不适用于云计算环境。针对云计算的特点,相关学者对云计算环境下的DDoS攻击的行为特征进行了初步研究,并提出相应的检测方法和防范技术。Alireza等人对DDoS的攻击原理及其在云计算环境下的行为特征进行了研究[5]。Lee等人提出了一种基于Hadoop的DDoS攻击检测方法,该方法在一定条件下可从大规模的流量中检测出DDoS攻击行为[6]。针对云计算环境下的DDoS攻击的行为特征,本文提出一种基于用户身份认证超载检测和网络流量负载平衡策略检测机制的云计算环境下DDoS攻击检测防御方法。仿真实验结果表明,通过在不同层次的身份验证,该方法可有效检测并防御云计算环境中出现的DDoS攻击行为,保护云计算服务免受DDoS攻击。
本文提出的云计算环境下的DDoS攻击防御模型包括5个部分,分别是网络流量接收模块(Flow Receive Module, FRM)、网络防火墙、认证模块(Authenticity Module, ATM)、限制请求管理模块(Restrain Request Manager, RRM)和负载均衡模块(Load Balance Module, LBM),如图1所示:
图1 DDoS攻击检测防御模型
上图中,用户客户端发起的访问请求数据包被送入检测系统中的FRM模块。FRM检测传入请求的数据流量速率,对接收的数据流量进行分类。该模块同时起到识别早期数据流量状态的预警功能作用。正常的数据流量被识别后送入后继的网络防火墙。通过网络防火墙的数据包送进入ATM模块,ATM模块接收到客服端的请求数据包后,进一步对输入的客户端数据包类型进行识别和分类处理。
RRM模块用于验证传入的客户端请求类型,只有在有新注册请求时被激活。使用不同用户分类的 RRM,可优化客户端数据包类型的识别和分类速率,在适当的时间允许合法用户的新请求。经RRM处理后的数据进一步到达LBM模块。LBM的功能是检测数据流量的过载,其在前面模块中得到用户的身份验证信息,可迅速、高效地处理客服端的各种请求。LBM同时将检测到的异常用户信息反馈给系统中的网络防火墙,过滤掉出现的异常用户的非法请求,使系统的负载达到均衡。
2.1 网络流量接收模块
系统中的FRM模块持续监控传入的客户端访问流量并预测访问流量的变化趋势,可用作该DDoS攻击检测系统的早期预警子系统。
为满足合法用户正常的访问需求,该模块依据流量过载检测机制对网络的异常流量实现预警检测。若传入被监控网络的请求流量超过系统预先设置的云计算服务网络的带宽阈值,则把用户请求送入队列中排队等候。队列限制可由云服务提供商(Cloud Service Provider,CSP)根据DC的流量现状动态配置。网络流量接收模块的算法如下:
算法1:网络流量接收模块算法
输出:网络流量状况
1)For每一个时间间隔t;
2)计算输入请求的流量RTin;
4)否则output (异常输入流量);
5)end for.
经过FRM模块处理后的数据流量,正常的输入流量被识别并送入网络防火墙,通过防火墙的数据流量送入 ATM模块做下一步的处理。
2.2 认证模块算法
传入ATM的网络数据包可分为两种类型:服务请求和访问请求。为了能够在ATM中动态的识别各种请求,所传入的请求类型需在Web服务器上进行配置。如果请求类型是服务请求,ATM把该请求直接转发到LBM。一旦访问请求被验证或者服务请求被批准,则该请求不会受到太大的干预或仅作定期监测。使用连续监测认证请求替换请求流量处理可有效降低系统计算资源的消耗。
访问请求用于对传入的请求用户进行身份验证,其可进一步分为两类:已注册请求、新注册请求。新注册请求转发到RRM做进一步处理。在给定时限阈值内,若再次接收到来自相同源主机的已排队请求,则该服务请求可归为DDoS攻击流量类型;若在给定时间t内,相同源主机的已排队请求次数超过阈值,则来自该源主机的网络数据包将一律被视为异常流量并被网络防火墙拦截。认证模块算法如下:算法2. 认证模块算法.输入:通过FRM的请求输出:认证的请求类型
1)For每一个通过FRM的请求;
2)type = RecognizeTypeRe ();
3)如果type=Racc;
4)如果type=Rnr,则送到RRM中处理;
5)否则, 如果type=Rre, 则IdentifyRe ();
6)否则, 如果type=Rauth, 则送到LBM中处理;
7)end for.
其中函数RecognizeTypeRe ()用于识别输入的请求是新请求还是已注册请求,函数IdentifyRe ()用于对已注册请求进行进一步认证,Racc表示访问请求,Rnr表示在CSP上的新的注册请求,Rre表示进入DC源的已注册请求,Rauth表示到达LBM的认证客户端请求。
2.3 限制请求管理模块
RRM是ATM功能的延伸,只有在有新注册请求时被激活。
在用户对DC的请求繁忙时,为避免出现后续注册用户的无限期等待、DC资源的死锁等导致DC资源浪费甚至崩溃,将用户请求被分两类:新用户请求和合法老用户请求,使用不同的队列缓冲区存储这两类用户的排队请求。其中队列Qnr存放新用户注册申请,队列Qre存放已注册的老用户申请。仅当网络流量异常增大时,已注册的老用户申请才需进入Qre队列,且只需等待较短时间;其它情况下无需进入该队列,而是直接送入下一环节的LBM。
对于新用户请求,根据从用户请求的时间戳返回的IDc (客户端ID)的初始响应值来识别新用户请求。使用队列Qnr对新用户请求进行排队处理,在系统超时后销毁IDc的响应请求,DC在规定时间内未收到新用户的IDc,则新注册请求将被拒绝。在网络数据流量异常增大时,合法老用户对DC的新连接请求也需在队列Qre中排队等候。在未知用户请求流量超载的网络情况下,使用该RRM可有效缓解DC服务器的访问压力、有利于CSP维持DC网络的稳定性。其处理算法如下所示,其中IDse表示维持在DC端的会话ID:
算法 3.抑制请求模块算法
输入:请求类型,流量条件
输出:在DC上正常的网络性能请求排队
1)For每一个请求;
2)如果流量条件=异常流量;
3)如果请求类型=Rnr, 则排队Rnr产生新的IDc并且在Qnr触发超时时间;
4)否则,在Qre用IDse排队IDc;
5)否则,如果流量条件=正常流量并且请求类型=Rnr,则排队Rnr产生新的IDc并且在Qnr触发超时时间;
6)end for.
2.4 负载均衡模块
LBM位于网络服务请求过滤的最后一层,其用于识别访问DC资源请求的过载类型、降低访问流量以达到负载均衡。由于恶意和合法的输入请求类型相似,故采用流量模式偏离作为特征来区分传入请求的合法性。
进入该模块的流量可以根据IDc唯一确定,计算和更新。请求流量记录有助于计算每个传入IDc的流量率。这个流量率模式有助于鉴别进入的请求者。额定的流量特征由 CSP根据网络带宽进行配置,其根据每秒钟每个请求者发出的请求进行设置。因此,它检测每个独立的请求者的流量行为更加容易。流量率计算和流量行为的预测为从每个传入请求者中区分过载请求铺平了道路。LBM算法如下:
算法 4. 负载均衡模块算法
输入:已通过认证模块的请求,IDc
输出:分类合法流量
1)For每一个进入的请求;
2)如果其IDc在流量行为库中,则更新流量率;
3)否则, 为其创建一个记录;
4)如果IDc有一个异常的流量特征,则推迟IDc一定的时间;
5)且通过转发IDc到防火墙来阻止该请求;
6)end for.
LBM模块维护流量的行为库如表1所示:
表1 流量行为库
流量行为库中包含了能够唯一标识请求者的客户端 ID、流量率以及撤销违反流量率访问的会话密钥。
当请求者的实际流量率出现异常或超过额定流量限制阈值,相应的请求信息从流量行为库中移出并被网络防火墙拦截,直到会话过期。这种方法可提高异常流量的检测率,因为它监测的流量率揭示了请求者的直接行为,并且当请求者企图过载DC时,流量行为库阻止并进一步的封锁相应请求,同时报告防火墙来拒绝请求者使用相应会话密钥开始进一步的服务直到会话过期。在会话结束后,请求者被送入访问DC资源的正常流量行为特征的队列。如果请求者再次犯错,它们将被死锁;否则它们被认为是合法的请求并转发到实际的负载平衡器,并尽快对其响应。在该模块中,保存最优会话时间可提高系统性能以及检测效率。
到达LBM模块的网络请求被彻底监控,LBM根据它们的流量模式发现超载的原因和威胁,并通过网络防火墙进行拦截。一旦流量通过 LBM,那么请求流量被视为完全合法的流量。通过这种策略可在不破坏网络资源的情况下应对超载威胁实现对DC资源的保护。
为了验证在云计算环境下该模型对 DDoS攻击检测防御的有效性,实验选取了一个典型的云计算网络拓扑结构并使用OPNET[7]在云计算环境对DDoS攻击检测进行仿真实验,网络拓扑结构如图2所示:
图2 实验网络环境结构图
图中云计算服务器的DC请求者包括三个子网,每个子网分别包含100个工作站、100个DDoS攻击者和200个合法用户,分别模拟云计算环境中的DDoS攻击以及合法的用户访问请求。
实验选用5种常见的DDoS攻击类型SYN-FLOOD、ICMP-FLOOD、UDP-FLOOD,TNF2K、SMURF进行测试,并使用检测正确率、误判率和遗漏率作为检测模型性能有效性的评价指标。为避免攻击数据集合大小不对称造成实验偏差,采样10次交叉验证法并以10次实验结果的平均值作为最终检测结果,实验结果如表2所示:
表2 不同类型的DDoS攻击检测结果
表 2表明该检测系统在云计算环境下可有效检测不同类型的DDoS攻击行为。随着网络中的DDoS攻击时间增长,该系统对DDoS攻击的检测正确率随之增长。
该DDoS攻击检测模型是由不同的功能模块协同工作。为描述各功能模块在整个系统中的异常网络流量负载检测情况,分别统计在DDoS攻击情况下各功能模块的异常流量负载检测效率,如图3所示:
图3 不同模块的异常流量负载检测效率
统计结果表明,随着DDoS攻击时间的增加,系统中云计算 DC的异常流量负载检测率维持一个较低的水平,而其它各功能模块分担负载了网络中出现的大部分的异常流量。系统中,前端模块的异常流量负载检测率较高,而后端的LBM模块的异常流量负载检测率较低,这是因为LBM模块的主要功能是维持一个正常的流量负载平衡,而不是异常流量的过载检测。
和传统的超载检测方案进行比较,文中提出的负载均衡检测模型具有以下优点:
1)负载平衡从第一层开始,在本模型中,传入的流量在各层被持续的处理,到达DC的流量速率更容易被检测,增加了系统的灵活性,从而更好的服务于请求者。
2)提出的模型包括ATM模块,其负责验证大量的数据流。在有新的注册请求到达时激活 RRM,仅允许注册请求通过负载平衡器是安全又快速的。该流量处理的方法适合共有/私有/混合云的配置模型。
3)当DDoS攻击发生时,在各模块中对新注册请求者和已注册请求者采用单独的队列管理提高了可靠性。处于安全考虑,已注册请求有更高的优先权,而新的请求则降低其优先权,从而提高资源的可用性。
DDoS攻击是云计算数据中心的主要威胁,而传统的DDoS攻击检测方法并不适用于全新的云计算网络环境。本文根据云计算网络环境中数据流量的自身特点,提出一种云计算环境下的用户身份认证的超载检测和网络流量负载平衡策略的DDoS攻击检测防御方法,并以此设计适用于云计算数据中心的DDoS攻击检测防御模型。仿真实验结果表明,该模型对云计算环境下的 DDoS攻击检测防御具有一定的可用性和实用性。
[1] 陈康, 郑纬民. 云计算:系统实例与研究现状[J]. 软件学报, 2009, 20(5):1337-1348.
[2] Zargar T., Josh J.i, and D. Tipper, "A Survey of defense Mechanisms Against Distributed Denial of Service (DDoS) Flooding Attacks[J]," IEEE Communications Surveys & Tutorials, 2013, 99:1-24.
[3] 冯登国, 张敏, 张妍,等. 云计算安全研究 [J]. 软件学报 , 2012,22(1):72-81.
[4] Rashmi V. Deshmukh, Kailas K. Devadkar. “Understanding DDoS Attack & Its Effect In Cloud Environment”[J];Procedia Computer Science,2015,49, 202-210
[5] Alireza Shameli-Sendi, Makan Pourzandi, Mohamed Fekih-Ahmed et.al.”Taxonomy of Distributed Denial of Service Mitigation Approaches for Cloud Computing”;[J] Journal of Network and Computer Applications, 2015,2:
[6] Lee Y, Lee Y. Detecting DDoS Attacks with Hadoop[C]//.Proceedings of The ACM CoNEXT Student Workshop. ACM,2011:7.
[7] Jeyanthi N. and Ch. N. Iyengar .S. N., “Packet resonance strategy: a spoof attack detection and prevention mechanism in cloud computing environment [J], International Journal of Communication Networks and Information Security, 2012, 4,(3)163-173.
Research of DDoS Attack Defense Method in Cloud Computing Environment
Dai Kunyu, Hu Bin
(College of Computer Science and Technology, Gui Zhou University, Guiyang 550025, China)
For the conventional network defense technologies, it is hard to defend against the DDoS attacks in cloud computing environment. According to the behavior characteristics of the cloud computing network flow, it proposes a model for the detecting and the defending of the DDoS attacks in cloud computing environment based on the overload detection of user identity authentication and the load balancing strategy of network flow. To meet the requirements of data transmission efficiency and the security of cloud computing services, the proposed model authenticates the identity of users who access the data center and hierarchically processe the abnormal network flow. The simulation results have shown that the proposed model can effectively detect and defend the DDoS attacks to the data center in cloud computing environment.
Cloud computing; DDoS attack defense; Flow certification; Load balancing
TP393
A
1007-757X(2016)11-0023-03
2016.05.03)
贵州省科学技术基金(黔科合J字[2011]2198号);贵州大学青年教师科研基金(贵大自青基合字(2012)018号)
作者信息:代昆玉(1979-),女,贵州大学计算机科学与技术学院,讲师,硕士,研究方向:数据挖掘,计算机网络安全,贵阳,550025
胡 滨(1979-),男,贵州大学计算机科学与技术学院,副教授,硕士,研究方向:人工智能,计算机网络安全,贵阳,550025