版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、一种DDoS攻击的分布式检测与防御模型研究与设计第一章 绪论本章首先介绍课题的研究背景及意义,接着阐述了研究现状,然后分析了分布式拒绝服务攻击检测与防御在整个网络安全中的地位和作用,最后说明了论文的研究内容及论文的章节安排。1.1 研究背景及意义随着Internet的迅猛发展,各种基于Internet的新业务和应用不断涌现,人们对Internet的依赖性也不断增强,这使得Internet担当起重要的公共基础设施的责任,人们在尽情享受Internet带来的方便的同时,也正在面临着安全威胁。Internet的安全威胁主要来自渗入威胁(如假冒、旁路控制、授权侵犯等)、植入威胁(如特洛伊木马、陷阱门等
2、)、病毒、拒绝服务等。入侵者利用网络或系统漏洞,大肆对目标主机或网络进行各种破坏活动,或盗取机密信息,安装后门程序,或大量消耗目标主机或网络的系统资源或带宽,导致目标主机或网络不堪重负,甚至瘫痪,无法提供正常的服务等。因此,网络安全问题是亟待解决的重要问题。由于分布式拒绝服务(Distributed Denial of service,DDoS)易于实施、难于防范、破坏力大,因而在攻击中被广泛使用。DDoS攻击一般利用Internet中使用的TCP/IP协议的固有不足或服务程序设计中存在的一些缺陷,通过控制大量分布在不同网络的傀儡机,在短时间内对目标主机或网络发起大量请求的方法,企图大肆占用目
3、标主机或网络的系统资源或网络带宽,致使目标主机或网络不堪重负甚至瘫痪,使目标主机或网络无法提供正常的服务,造成合法用户不能访问和使用该服务。这是一种危害极大的网络攻击,己经成为当前Internet安全的头号威胁。DDoS攻击最早出现在1999年8月,明尼苏达大学一台服务器遭到DDoS攻击,导致系统服务中断2天。接着在2000年2月,yahoo、B、eBay、Amazon、CNN、Sina等著名网站遭受大型DDoS攻击,造成了这些网站瘫痪长达数小时,造成的经济损失高达12亿美元以上1。2001年5月,由于8万中国大陆网民潮水登录美国白宫网站而导致其瘫痪。2002年10月21日下午5时左右,因特网
4、的核心位于美国、瑞典、英国、日本等国家和地区的13个根名服务器遭受了有史以来规模最大、攻击方式最复杂的一次DDoS攻击,整个攻击横跨全世界,规模巨大,并持续了1小时左右。2006年4月16日下午2时,国内各大门户网站、Google中文搜索引擎以及部分专题网站发生了大面积的网络瘫痪现象,专家称这次突如其来的网络瘫痪是由于因特网受到大规模的DDoS攻击所导致。除了这些著名的DDoS攻击事件外,国内外还有许多遭受DDoS攻击而产生了巨大破坏的事件2。以上所列的只是DDoS攻击的一个缩影,诸如此类的事件在网络或者是报刊杂志上层出不穷。从DDoS攻击事件可以看出,即使是具有雄厚技术支持的高性能站点也逃不
5、过DDoS攻击的厄运。由此可见,DDoS攻击已经对因特网构成了巨大威胁。如何及早检测出DDoS攻击,采用有效的防御成为网络安全领域研究的重点与热点。虽然国内外针对DDoS攻击已经进行了大量的研究,但目前仍然没有一个有效的解决方案。本文正是在这种背景下通过对DDoS攻击的原理、检测方法、现有防御方法进行深入分析的基础上,提出了一种DDoS攻击的分布式检测与防御模型。1.2 DDoS攻击的研究现状自从1999年 8 月发生了第一次大规模 DDoS 攻击以来,这种新的攻击形式已引起了人们的注意,人们对DDoS攻击检测与防御展开了深入研究。1999年11月CNCERT/CC发表了Distributed
6、-Systems Intruder Tools Workshop 的报告3全面阐述了DDoS攻击问题,详细分析了DDoS的原理,并从预防、检测、响应三个方面阐述了针对DDoS攻击的短期、长期解决方案。目前,对 DDoS 攻击,从防御、检测、响应到追踪,国内外已经有了非常多的办法和理论。较典型的有:(1) DDoS攻击文献4对各种典型的DDoS攻击工具(Trin00、TFN、Stacheldraht、TFN2K、Shaft)做了详细的分析,这样既为DDoS攻击的防御提供了重要参数,同时也使攻击者能进一步改进攻击工具。文献5中对DDoS攻击工具做了理论性的全面评价,并给出了针对DDoS攻击的网络入
7、侵检测规则,为防御提供了依据。文献6对DDoS攻击建立了基于Teamwork模型和形式语法模型,并进行了模拟。(2) DDoS防御Felix Lau等对DDoS攻击的特征、攻击的方法进行研究后,于2000年10月提出了几种防御策略22:路由器过滤、无效IP广播、安全补丁、关闭未使用的服务及入侵检测。这些方法都要求用户具有一定的安全意识和安全防护经验,但是对于大量增加的Internet新手来说,难以实施。2001年11月,David Mankins等人提出了动态资源定价的方法来缓解DDoS攻击23。然而,这些方法都不能真正有效地缓解DDoS攻击,在这种情况下,Roshan Thomas24和Ta
8、o Peng25等分别提出了用过滤的方法来有效缓解DDoS攻击。由于大多数防御策略都不熟在受害段,不能实现对DDoS攻击的快速响应,针对以上不足,Jelena Mirkovic于2003年4月提出了源端DDoS防御方法26,这种策略部署在接近源端网络,对DDoS攻击进行抑制。源端防御能够实现快速响应,但难于检测,误报率高。为了接近防御系统单点失效问题,Udaya Kiran Tupakula等提出了多ISP协作防御的策略27,该方法使用路由仲裁在多个ISP域内抵御DDoS攻击。(3) DDoS检测目前针对DDoS攻击检测主要分为异常检测和特征检测,前者在统计的基础上建立网络流量的正常模式,如果
9、检测到的数据偏离模式,即判定攻击存在;而后者是建立一个所有已知的攻击特征数据库,如果检测到的数据与数据库中的某些特征参数匹配,即判定攻击存在。对于异常检测,2001年Gil和Poletto给出了MULTOPS方案7,它用树形的数据结构来记录往来的IP地址数据,TCP协议实现的特点是对于给定网络地址其包流率是平衡的,如果失衡,即可判定异常。但此方案的数据结构本身有缺陷,可以被攻击者利用。2003年Samuel等人对其进行了改进8,用哈希表代替了原有的数据结构,消除了原方案不足。2001年Xiong提出了一种基于On-off反馈控制的DDoS防范策略。当被攻击主机发现自己遭受攻击时,它将通知相连的
10、路由器降低攻击包的流量,路由器只需要知道主机可以接收的流量上限就可以确定从上一级路由器接受的流量限制,这种On-off控制信息可以在攻击路径上反响传播以达到防范攻击的目的9。2003年Laura Feinstein等分别使用了信息熵和Chi-Square的方法研究了DDoS的攻击和响应10。2004年Zhang给出了CIDS方案,靠统计量的互相关联的变化来检测攻击,其算法简单快速,所需系统资源少11。2005年Lee和Shieh根据访问IP的历史记录来检测入侵和过滤包12。2005年Gavrilis和Dermatas使用RBF神经网络(Radial Basis Function neural
11、network)识别DDoS攻击13。2007年Keunsoo Lee等将数据包通过信息熵分簇,通过计算它们之间的欧几里德距离检测DDoS攻击14。对于特征检测,2002年Branch和Bivens等提出了基于时间的确定性有限自动机模型15,它利用特定事件的时间间隔来提高检测的准确性。2004年Gavrilis将遗传算法引入了检测部件16,用来从统计数据中提取更有效的特征信息。(4) 响应和追踪:检测到攻击后,应该及时响应,并追踪到攻击发生的源端。2001年Sterne提出自动联合响应结构17,使IDS、防火墙、路由器以及其他部分相互协作,共同响应及追踪DDoS攻击。2002年Karnousk
12、os引入了主动网概念18,利用移动代理技术来异步响应。2003年Tupakula和Varadharajan提出了Controller-Agent模型19,针对特定的ISP,出边界路由器对数据包进行标注,受害者主机依据这些标注信息确定攻击流的源头,并要求处于攻击路径上的边界路由器丢弃非法包。2004年Ping等通过标记数据包,再用Agent追踪攻击者源地址并过滤数据包20。由上述可知,针对DDoS攻击,已有的方法、理论和产品在一定程度上能够有效地防御DDoS攻击,但是不能从根本上解决问题,一些产品还没有得到广泛应用,其效果如何很难判断。很多防御策略具有单一性、固定性,不能防御混合型攻击。此外,现
13、有的DDoS攻击的检测与防御方案只覆盖到受害端网络、中间网络及源端网络中的一处或多处,如果能够覆盖到整个网络,那是最好的检测与防御DDoS攻击的分布式模型。基于此,本文提出了一种DDoS攻击的分布式检测与防御模型。1.3 本文研究内容及章节安排本文通过对DDoS攻击的原理、检测方法以及各种防御方案进行详细的阐述,通过比较各种防御机制的优缺点,结合分布式检测方法,提出了一种DDoS攻击的分布式检测与防御模型,并通过仿真试验证明,此模型能够较为准确地检测出DDoS攻击,并能够有效地防御DDoS攻击。本文的主要研究内容如下:(1)详细阐述了DDoS的攻击原理、攻击分类及常用攻击工具,为检测与防御DD
14、oS攻击方案的提出奠定基础;(2)研究分析了基于攻击源端、中间网络以及受害端检测与防御DDoS攻击的优缺点,详尽讲述了一种分布式检测方法,为一种DDoS攻击的分布式检测与防御模型的提出指引了方向;(3)基于单点检测与防御方案的不足,提出了一种DDoS攻击的分布式检测域防御模型,并对该模型的防御原理、结构层次、防御过程等进行了详尽阐述及分析;(4)详细阐述了各个模块的功能、关键问题及解决方法;(5)通过使用OPNET仿真软件对该模型进行仿真试验,借之验证模型的正确性、有效性。本文章节安排如下:第一章 绪论:讲述了课题研究的背景及意义、研究的现状、研究的主要内容以及章节安排;第二章 DDoS概述:
15、本章从DDoS攻击的原理、攻击过程、攻击分类、常用攻击工具以及对DDoS攻击防御方法进行分类与阐述,比较其优缺点;第三章 DDoS分布式检测算法研究:单点检测已经不能满足系统需求,分布式的多点检测亟待研究。本章首先讲解了基于CUSUM算法的源端主机的检测算法,接着讲解了基于CUSUM算法的路由器检测算法;最后提出了一种分布式检测算法,并对此算法进行了详尽的说明;第四章DDoS攻击的分布式检测与防御模式设计:基于以上章节的讲解,本章节提出了一种DDoS攻击的分布式检测与防御模型,并对此模型的工作原理、结构层次等进行详细说明;第五章 模型的功能模块的研究:对模型中主要功能模块进行详细的说明,从理论
16、上进行实现;第六章 总结与展望:对全文工作进行总结,同时,对以后要做的工作进行展望。第二章 DDoS概述如何能够有效地防御DDoS攻击,首先,要对DDoS的攻击原理、攻击分类、常用攻击工具等全面深入的了解,然后,才能对症下药,除其根本。本章从DDoS攻击的定义着手,依次介绍了DDoS攻击原理、DDoS攻击分类、常用攻击工具以及现有的防御DDoS攻击的防御策略。这些为DDoS攻击的检测与防御方法的研究奠定了基础。2.1 DDoS攻击定义定义2.1 拒绝服务攻击29(Denial of Service attack,DoS 攻击):是指当一个或多个攻击源通过伪造数据、请求服务来淹没服务,使服务下降
17、、失败,以至于合法请求被丢失、忽略或服务速度慢。这种攻击使网络服务器充斥大量要求回复的信息,消耗网络宽带或系统资源,导致网络或系统不堪负荷以至于瘫痪而停止提供正常的网络服务。定义2.2 分布式拒绝服务攻击21(Distributed Denial of Service attack,DDoS 攻击):是指采用分布式的攻击方式,联合或控制网络上能够发动DoS攻击的若干主机同时发动攻击,制造数以万计的数据分组流入攻击目标,致使流向目标的服务请求极度拥塞,而造成目标系统的瘫痪。由于DDoS攻击容易实施,难以防范,破坏力极大,因此已经成为了当前因特网安全的最大威胁。一般来说,遭受DDoS攻击时具有以下
18、特征28:(1) 受害端主机充斥着大量等待连接的TCP或半开连接的TCP;(2) 网络上充斥着大量伪IP地址的垃圾数据包;(3) 高流量无用数据拥塞网络,造成受害端主机通信中断;(4) 利用TCP/IP协议的固有不足或服务程序中存在的缺陷反复高速地发送特定的服务请求,消耗系统资源或带宽,使得受害端主机无法提供正常服务;(5) 系统瘫痪,甚至崩溃。由此可见,DDoS攻击是通过占有或耗尽攻击目标的系统资源或带宽,使其无法响应合法用户的请求,从而无法提供正常的服务。由于Internet的连通性和开放性,使得攻击者拥有无尽的可用资源。近年来频频发生的DDoS攻击事件充分说明了因特网在DDoS攻击面前的
19、脆弱。换句话说,DDoS攻击作为一种简单有效的攻击手段将是网络安全防御的重点。2.2 DDoS攻击原理DDoS攻击是一种基于DoS攻击的分布式、协作的大规模攻击方式,它直接或间接通过互联网上其他受控主机攻击目标系统或者网络资源的可用性。一般而言,DDoS攻击架构为三层30:攻击者(Client)、主控端(Master)、代理端(Daemon)和被攻击者(Victim),它利用受控主机向攻击目标发起攻击,具有威力更大、更难防御、更难追随的特征。DDoS攻击原理图如图2-1所示。图2.1 DDoS攻击的体系结构各层分工不同,具体如下:攻击者:可以是网络上的任何一台主机,甚至是一台便携机。在整个攻击
20、过程中,它是攻击主控台,负责向主控端发送攻击命令,控制整个过程。攻击者与主控端的通信一般不包括在DDoS工具中,可以通过多种连接方法完成,最常用的有“telnet”TCP终端会话,此外还有绑定到TCP端口的远程shell,基于UDP的客户/服务器远程shell等。主控端:是攻击者非法侵入并控制的一些主机,它们分成了两个层次,分别运行非法植入的不同的攻击程序。每个主控端控制着大量的代理端,有其控制的代理端的地址列表,它通过监听端口,接收攻击者的命令,然后将命令转发给代理端。主控端与代理端的通信根据DDoS工具的不同而有所不同。比如:Trinoo使用UDP协议,TFN使ICMP协议通过ICMP_E
21、CHOREPLY数据包完成通信,Stacheldraht使用TCP和ICMP协议进行通讯等。代理端:在其上运行攻击程序,监听端口接收和运行主控端发来的命令,是真正进行攻击的机器。被攻击者:可以是路由器、交换机、主机等网络设备。遭受攻击时,它们的资源或带宽被耗尽。防火墙、路由器的阻塞还可能导致恶性循环,加重网络阻塞情况。一般而言,DDoS攻击实施过程可以分为三个阶段31:(1) 收集目标主机信息。通常,攻击者的攻击并非盲目进行的,他需要了解目标主机许多的信息,如被攻击目标主机数目、配置、性能、操作系统、地址情况以及目标网络带宽等。因此,在攻击发生前,攻击者需要先对目标进行侦查,如利用扫描攻击对攻
22、击目标进行扫描。(2) 占领主控机和代理主攻击者首先利用扫描器或其它工具选择网上一台或多台代理主机用于执行攻击行动。为了避免目标网络对攻击的有效响应和攻击被跟踪检测,代理主机通常应位于攻击目标网络和发动攻击网络域以外。代理主机必须具有一定脆弱性以方便攻击者能够占领和控制,且需具备足够资源用于发动强大攻击数据流。代理主机一般应具备以下条件: 链路状态较好和网络性能好; 系统性能好; 安全管理水平差。攻击者侵入代理主机后,选择一台或多台作为主控主机,并在其中植入特定程序,用于接受和传达来自攻击者的攻击指令。其余代理主机被攻击者植入攻击程序用于发动攻击。攻击者通过重命名和隐藏等多项技术保护主控机和代
23、理主机上的程序的安全和隐秘。被占领的代理主机通过主控主机向攻击者汇报有关信息。(3) 攻击的实施攻击者通过攻击主机发布攻击命令,主控主机接收到命令后立即向代理主机传达,隐蔽在代理主机上的攻击程序响应攻击命令,产生大量UDP、TCP SYN和ICMP响应请求等垃圾数据包,瞬间涌向目标主机并将其淹没。最终导致出现目标主机崩溃或无法响应请求等状况。在攻击过程中,攻击者通常根据主控主机及其与代理主机的通信情况改变攻击目标、持续时间等,分组、分头、通信信道等都有可能在攻击过程中被改变。通过上述讲解后,我们已经了解了DDoS攻击的基本原理,那么DDoS攻击的特性可以概述如下32,33: DDoS的攻击者的
24、分布式特性:DDoS攻击处于不同区域的多个攻击者同时向一个或数个目标发送攻击,或者一个或多个攻击者控制了位于不同区域的多台傀儡机并利用这些傀儡机对目标主机同时实施攻击。由于DDoS攻击采用分布式协作方式,使其难于防御和跟踪,同时,资源、目标和中间域之间缺乏协作也不能对攻击做出快速、有效和分布式的响应。 DDoS攻击流的不易识别特性:DDoS攻击流和网络中通讯的正常数据流十分相似,都符合网络协议并且能够通过Internet网络中的路由选择,两者难以区分。此外,数据包、数据包头、通信信道等都有可能在攻击过程中改变,导致DDoS攻击流不存在能用于检测和过滤的共同特性。因此,在受害者端对DDoS攻击防
25、范是极为困难的。这使得攻击者和受害者之间的力量极为悬殊,而攻击者总是处在极有利的地位。 DDoS攻击是洪泛攻击:即使Victim可以从众多接收数据包中识别出DDoS攻击数据包,它也无力抵御大规模的洪泛攻击,巨大的攻击数据流使得Victim无法为合法用户提供服务 ,攻击者从而达到了使Victim服务质量降低甚至崩溃的目的。 DDoS攻击具有很强的隐蔽性:攻击者为了隐藏自己的身份、躲避追踪,通常都会伪造IP地址,使得对DDoS攻击的检测、防御和追踪工作更加困难。2.3 DDoS攻击分类及分析由于DDoS攻击种类繁多,不同的依据有不同的分类方法。下面是两种经典的DDoS攻击分类方法:(1)依据攻击数
26、据包流量的特征,可以把DDoS攻击分为洪泛DDoS(Flooding DDoS)攻击和低平均速率DDoS(Low Rate Denial of Services,LRDoS)攻击,低平均速率DDoS攻击又称RoQ(Reduce of Quality)攻击。(2)依据具体的TCP/IP协议,又可以把DDoS攻击分成TCP协议攻击、UDP协议攻击和ICMP协议攻击等。2.3.1 洪泛DDoS攻击洪泛DDoS攻击是一种带宽攻击(Bandwidth Attack),如TCP Flooding攻击、UDP Flooding 攻击等,其攻击报文来自不同的攻击源。根据攻击源的不同,洪泛DDoS攻击又可以分成
27、两类34:(1)直接DDoS(Direct DDoS)攻击;(2)反射DDoS(Reflector DDoS)攻击。2.3.1.1 直接DDoS攻击直接DDoS攻击是通过聚集大量的攻击包直接对目标主机攻击,这些攻击包可以是UDP、TCP、ICMP或者是它们的混合形式。如图2-2(a)所示, 其中A 表示攻击者,V 表示被攻击主机, R 表示攻击者分组源地址对应的主机。由于服务器维护数以万计的半连接而消耗掉非常多的资源,最后堆栈溢出导致系统崩溃。此时从合法用户的角度看来, 作为被攻击主机的服务器失去响应, 也就是说, 服务器受到了拒绝访问攻击。在直接攻击之前,攻击者首先构建攻击网络,它由一个或多
28、个攻击主机、若干主控端和大量代理(也称为守护程序或僵尸)组成。如图2-3(a)所示,攻击主机是攻击者实际控制的主机,攻击主机通过扫描脆弱主机并植入主控程序或代理程序,一个攻击主机控制一个或多个主控端,并且每一个主控端都连接着一组代理。文献42给出了组建整个DDoS攻击网络的详细过程。攻击网络组建后,攻击主机向主控端发送攻击命令(包括:目标主机IP、攻击周期、攻击方式及其他相关参数),每个主控端接到攻击命令后,转发给它的代理,所有代理对目标主机实施DDoS攻击。图2-2 两种类型的DDoS攻击2.3.1.2 反射DDoS攻击反射攻击是一种间接攻击, 在反射攻击中, 攻击者利用反射器(包括路由器、
29、web服务器和DNS服务器等)进行攻击。攻击主机向反射器发送大量源地址为被攻击主机地址的分组。由于反射器并不知道这些分组的源地址是经过伪装的, 反射器便会向被攻击主机回应大量分组。如图2-2(b)所示, 如果反射器数量足够多, 那么反射分组将淹没被攻击主机,从而形成反射DDoS攻击。反射攻击的体系结构如图2-3(b)所示。图2-3 DDoS攻击体系结构在洪泛DDoS攻击过程中,攻击数据流的源地址一般都是伪造的或随机生成的,并且攻击主机发出攻击命令后便断开了网络连接,这些都增加了检测难度。由于反射DDoS攻击利用了网络中的反射器,使得反射DDoS攻击比直接DDoS攻击更难防范。2.3.2 低平均
30、速率DDoS攻击目前,低平均速率DDoS攻击以RoQ攻击为代表,也称作Shrew DDoS(或LRDoS,Low Rate Denial of Service)攻击35。RoQ攻击利用TCP拥塞控制和超时重传(RTO,Retransmission Timeout)机制,攻击者与目标机RTO值取得同步,周期性地向目标机高速发送大量的TCP数据包,使目标机的队列溢出而周期性地进入拥塞阶段。整个攻击周期内,只有少量的合法TCP数据包被目标机接收,大量合法TCP数据包(或TCP连接请求)被拒绝,这便形成了一个矩形波式的RoQ攻击。典型的RoQ攻击模型如图2-4所示,可用三元组(R,T,L)描述RoQ攻
31、击,其中T为攻击周期(Period of Attack),L为脉冲攻击长度(Length of Burst),R为脉冲攻击速率(Burst Rate)。图2-4 典型的RoQ攻击一个RoQ攻击周期T内,只有L时间长的高速TCP数据包,T-L时间长的TCP数据包量趋于正常状态。所以,一个RoQ攻击周期T内的TCP数据包平均速率很低。这样,整个攻击过程就是一个低平均速率的RoQ攻击。2.3.3 TCP、UDP和ICMP协议攻击2.3.3.1 TCP协议攻击TCP Flooding攻击又称TCP SYN拒绝服务攻击、Land攻击等。一般情况下,一个TCP连接的建立需要发起者与目标机经过三次握手过程。
32、图2-5所示是正常的TCP连接过程,图2-6是DDoS攻击在TCP协议攻击中的一次实现。 图2-5 TCP三次握手 图2-6 TCP攻击图2-6与图2-5的区别在TCP三次握手的第三步,TCP连接请求发起者不发送TCP ACK,目标机一只处于等待状态。因此,如果大量的TCP连接请求发起者在TCP三次握手过程的第三步步发送TCP ACK,目标机的TCB控制块资源就会耗尽,其他的TCP连接请求不能被响应,目标机很难接受到合法的TCP数据包。2.3.3.2 UDP协议攻击UDP协议攻击主要是UDP Flooding攻击,攻击者向目标机发送大量的UDP报文,目标机会花费大量的时间和资源处理UDP报文,
33、这些UDP攻击报文不但会使存放UDP报文的缓存溢出,而且也会占有大量的网络带宽,目标机无法(或很少)接受到合法的UDP报文。2.3.3.3 ICMP协议攻击正常情况下,为了对网络进行诊断,一些诊断程序(如Ping)会发出ICMP响应请求报文,即ICMP ECHO。目标机接收到ICMP ECHO后,会响应一个ICMP ECHO Reply报文。大量的ICM响应请求报文会占用目标机过多的资源(CUP时间和内存等),目标机就会崩溃。ICMP ECHO请求包用来对网络进行诊断,当目标机接收到ICMP ECHO请求包时,会向报文的源IP地址回应一个ICMP ECHO Reply报文。如果攻击者把ICMP
34、 ECHO请求包的源IP地址设置成一个广播地址,这样计算机在恢复Reply时会以广播地址为目的地址,本地网络上所有的计算机都必须出来这些广播报文。大量的ICMP ECHO请求包产生的Rep报文会淹没整个网络,形成攻击。 DDoS攻击方式小结现将典型DDoS攻击方式进行汇总,如表2-1所示。由表2-1可知,DDoS攻击是DoS攻击的扩展,其利用分布式的攻击网络发出DoS攻击流;同时由于其分布式的特点,DDoS可以有更多的攻击方式。表2-1 DDoS攻击分类 分类依据攻击方式具体分类攻击数据包流量的特征Flooding DDoSDirect DDoSReflector DDoSLRDoSRoQTC
35、P/IP协议TCP协议攻击TCP协议攻击UDP协议攻击UDP协议攻击ICMP协议攻击ICMP协议攻击本节只介绍了两种典型的DDoS分类,根据不同的分类标准,DDoS攻击具有更多的分类。具体的分类标准应根据具体的工程应用。2.4 DDoS常用攻击工具DDoS 攻击采用了一种比较特别的体系结构,从许多分布的主机同时攻击一个目标,从而导致目标瘫痪。目前,对这种攻击还没有很好的解决办法。为了找出这种攻击的漏洞,从而有效地防御这种攻击,有必要对其所用的工具进行具体分析。常见的DDoS攻击工具有:Trinoo、TFN(Tribe Flood Network)、TFN2K(Tribe Flood Netwo
36、rk 2000)、Stacheldraht、Trinity、Stream/mstream等。下面将详细介绍这些工具的用法及工作原理。(1) Trinoo36这是一个典型的攻击工具,它最早出现于1999年6月或7月。它由三部分组成:攻击执行端、主控端和客服端(NETCAT,标准TELNET程序等)。它的执行端(源程序名为NS.C)最初是在Solaris 2.x系统上被发现的,因为这些系统都有漏洞(RPC.Statd、RPC.Cmsd、RPC.Ttdbserverd、RPC.amd)。攻击者通过Telnet之类的软件连接到主控端(Master)的7665 TCP端口,连接成功以后,输入口令(默认的
37、口令是“betaalmostdone”)就可以向主控端发送对Victim的攻击请求了。主控端主要是传达攻击者的命令给执行端(Daemon),它通过UDP的31335端口与执行端进行通信。执行段工作在27444和31355端口。从执行端向目标主机发送的数据包都是UDP报文,每一个含有4个空字节,这些报文都是从一个端口发出来的。但是随机地攻击Victim上的不同端口,目标主机对每一个报文回复一个ICMP Port Unreachable的信息,大量的不同主机发来的这些洪水般的报文致使目标主机将很快慢下来,直到剩余带宽变为零。其特点是:口令保护 ,为了防止系统管理员或者其他的黑客组织控制这个Trin
38、oo“网络”,主控端和执行端都设置了密码保护,所采用的加密方式是对称加密方式,而且密码被编译到主控端和执行端的程序中,一些发送给主控端和执行端的控制命令也可以被设置口令,但这些是采用明文的方式传输的;没有体统IP伪装的功能,因此,在被攻击的主机系统日志里可以查到相应的记录。Trinoo只能攻击Victim的随机端口,可操作性和可配置性较差,属于早期DDoS攻击工具,但是它却是后期演变出来的各种DDoS攻击工具的基础。(2)TFN(Tribe Flood Network)37TFN最早出现于1999年8月,它与Trinoo的功能和结构差不多。它由主控端和代理端程序两部分组成。主要采用的攻击方法为
39、:ICMP风暴、SYN风暴、UDP炸弹和SMURF攻击。攻击者控制主控端可以通过多种方法。攻击者可以把具有root权限的远程shell调用绑定到某个端口上,以便攻击者输入控制指令;基于ICMP的客服机/服务器的SHELL(LOKI)、SSH终端会话或者一般的TELNET会话。在主控端没有设置密码保护,主控端和执行端不是采用基于TCP或者UDP的包进行通讯的,而是通过ICMP_ECHOREPLY包进行通讯的。主控端是通过ICMP_ECHOREPLY包中的16位的数据标记字段发送命令给执行端的,并且这个数据包的序号是0x00,这样就好像是对Ping命令的回应。因此,具有更强的隐蔽性。其特点是:具有
40、伪造数据包的能力,采用的通讯方式更加灵活而且隐蔽,主控端和执行端采用的是ICMP_ECHOREPLY,而不是ICMP_ECHO,或者TCP、UDP进行通讯,因为一般的网络监视工具不会显示ICMP数据包的数据部分,所以这种通讯很少能被察觉;因为主控端和执行端都需要创建一个AF_INET的套接字(Socket),所以必须具有root的权限方能执行;攻击者连接到主控端是以明文的形式传输的。(3)TFN2K(Tribe Flood Network 2000)38TFN2K是由TFN发展而来的,在TFN所具有的特性上,TFN2K又新增一些特性,它的主控端和代理端的网络通讯是经过加密的,中间还可能混杂了许
41、多虚假数据包,而TFN对ICMP的通讯没有加密。攻击方法增加了Mix和Targa3.并且TFN2K可配置代理端进程端口。TFN2K是TFN的一个更高级版本,它“修复”了TFN的某些缺点:在TFN2K下,主控端与代理之间的通讯可以使用许多协议,例如TCP、UDP或ICMP,这使得协议过滤不可能实现;TFN2K能够发送破坏信息包,从而导致系统瘫痪或不稳定;TFN2K伪造IP源地址,让信息包看起来好像是从LAN上的一个临近机器来的,这样就可以挫败出口过滤和入口过滤。(4) Stacheldraht39Stacheldraht是从TFN派生而来的,可以并行发动多种flooding攻击,例如ICMP f
42、looding、TCP SYN flooding、UDP flooding和Smurf攻击等;也具有与TFN相同的伪造数据包能力。但是,与TFN和TFN2K不同,Stacheldraht代码没有包含绑定到某个TCP端口的root shell。同时,Daemon与Master之间的通讯是加密的,它采用可变的TCP/UDP端口和特殊格式的ICMP包进行控制命令通讯,并且Stacheldraht还带一个内嵌的代理升级模块,可以自动下载并安装最新的代理程序。(5)Trinity40Trinity最早出现于2000年8月,可以发动多种flooding攻击,包含UDP flooding、TCP SYN f
43、looding等。从Attacker或Master到Zombie的通讯则是通过即时通讯(Internet Relay Chat 即IRC)或美国在线(AOL)的ICQ。Trinity也是最早利用IRC进行控制的DDoS工具之一。Trinity最早使用的端口号是6667,并且有一个后门程序监听TCP端口33270.(6) Stream/mstream41与其它的工具相比,mstream比较初级,其程序中有不少错误,其控制功能也相对单一。然而,它也像其他的工具一样,会非受害者带来很大的灾难。有上述可知,这些攻击工具基本上都能实现ICMP flood、SYN flood、UDP flood和Smur
44、f等攻击方式,但是从它们的发展历程来看,它们能实现的攻击功能都差不多,可是它们使得检测攻击变得越来越难,而且隐蔽性越来越强。2.5 DDoS攻击防御策略研究DDoS攻击无疑是网络安全的头号威胁,因而对DDoS攻击的防御是非常重要的。本节分别阐述了源端、中间网络、受害端及分布式的防御策略,并分析了各种防御策略及方法的优缺点。 源端防御策略在源端防御策略中,防御节点被部署在Internet的入口路由器上,这些节点不停地检测经过该路由器的数据包,发现异常后立即进行出口包的过滤限流等响应。典型的源端防御策略参考文献43,65,66,84。源端防御策略的优点是:能够及早阻断攻击包,使其不能进入互联网核心
45、,避免其混入合法流量,减少了受害端网络的拥塞程度;另外,靠近源端的防御可以较容易追溯到攻击点,有助于攻击的分析。源端防御策略的缺点:由于部署在源端,攻击还没有实现汇聚,此时攻击检测困难,误报率高。这势必会造成合法数据包被丢弃,攻击者在一定程度上达到了攻击的目的。 中间网络防御策略在中间网络防御策略中,防御节点通常设置在核心路由器上,通过该路由器上的异常检测机制来检测异常,并对数据流进行过滤和流量限制等响应。典型的中间网络防御策略有WATCHERS82、追踪 67,70,68,69,71和回推机制83。中间端网络策略优点:由于核心路由器上有大量数据包流过,一旦攻击被成功检测,则可进行迅速抑制;大
46、大降低了对受害端的危害。中间端网络策略缺点:由于核心路由器处理数据量大,给该策略带来异常检测上与流量区分上的一些困难。核心路由器不能将大量存储器和处理器资源用于进行复杂的流模型匹配和统计特征提取算法,对于异常的检测可能不准确,会造成对合法流的间接损害;攻击流与合法流混在一起难以区分。 受害端防御策略由于历史原因,传统的DDoS防御系统多数都是基于受害端应用而设计的,这很容易理解,因为受害端直接遭受DDoS攻击而蒙受损失,有对DDoS防御系统的迫切需求。在受害端策略中防御节点部署在受害端网络的边界路由器上,负责对攻击检测以及相应的响应策略。该防御策略有EMERALD75、资源审核73,76,77
47、,72,78和协议安全策略79,80,74,81。所有的这些防御策略能够缓解DDoS攻击,并争取更多的响应时间。受害端策略优点:由于接近受害者,检测异常显得相对容易。受害端策略缺点:由于大量数据包拥塞到受害端,使得受害端面临瘫痪的可能,防御系统根本无力处理这样海里的数据包;此外,面对如此浩瀚的数量流,防御系统很难区分出合法数据包和攻击数据包,这必然会影响防御系统的响应速度。 分布式防御策略由上述讨论可以看出,单点部署DDoS防御策略不可能有效抵御DDoS攻击,最有效的防御策略是分布式防御策略,即防御结点分布在源端、中间网络及受害端的两处或多处,实现分布式、协作防御。这样才能达到较为理想的防御效
48、果。首先我们以检测-过滤响应方式讨论检测点与过滤点的最佳放置位置。从攻击流的发送端到受害端,有四个地点可以部署检测过滤机制(如图2-7)。从图2-7可以看出,DDoS攻击流呈漏斗状44:攻击流产生于一个分布式的区域,与漏斗的顶部;攻击流汇集与受害者端,类似于漏斗狭窄的底部。因此受害者网络能观察到所有的攻击报文,检测到DDoS攻击相对容易。而在攻击源网络,除非该网络有大量攻击源,否则很难检测到DDoS攻击。与攻击检测相反,越靠近受害者,越多的合法报文将被误判丢弃,攻击过滤的有效性也就越差。在一场典型的大规模DDoS攻击中,受害者网络及其ISP网络往往被迫将所有发往受害者的报文丢弃,因此正常报文存
49、活率(Normal Packet Survival Ratio,NPSR)值接近于零。图2-7 理想的DDoS防御部署图源端网络:虽然在攻击源端网络很难检测到DDoS攻击,但是它能有效的滤除基于地址伪造的非法报文(包括DDoS攻击报文)。在攻击源端网络接入ISP网络的节点处可以设置出口报文过滤(Egress Filtering)机制滤除报文源地址不属于该子网内地址的报文(将报文的源IP地址与该网的子网掩码进行逻辑与运算后看是否和子网地址匹配)。同理在接入点的ISP网络方,可以部署入口报文过滤(Ingress Filtering)机制滤除来自该子网且报文源IP地址又不属于该子网内部地址的报文。出
50、口报文过滤和入口报文过滤两者能取得相同的效果。如果我们全面部署入口(或出口)报文过滤机制,那么所有直接攻击报文和反射式攻击中发往反射者的报文将被滤除,DDoS攻击将被阻止。但是这样会影响网络的性能;同时,让所有的ISP部署入口(或出口)报文过滤机制也是不现实的。受害者网络:与源端网络不同,受害者网络可以通过检测到网络入口流量急剧增高或者服务器性能下降等异常现象来确认DDoS攻击。但是,在受害者网络过滤攻击报文的同时也丢弃大量合法报文,所以这在一定程度上也造成了拒绝服务现象。受害者上游ISP网络:通常在受到DDoS攻击时,受害者会要求其上游ISP为其过滤攻击报文。在引入IDS后,受害网络可以向上
51、游ISP路由器发送入侵警报信息,描述攻击流的特征。由于接近受害网络,在受害者上游网络过滤攻击报文的有效性仍然不高,一部分合法报文仍会被丢弃。这样可能导致受害者网络仍然不可用;此外,上游ISP网络本身也可能在足够大规模的DDoS攻击中发生阻塞。上游ISP网络:如果受害者上游ISP网络无法解决问题,还可以向更上游ISP网络要求攻击过滤。受害者网络负责检测DDoS攻击,提交攻击报文特征,而上游ISP网络负责过滤符合特征的攻击报文。我们将介绍分布式检测原理。分布式攻击检测DAD(distributed attack detection)依赖一系列的分布式检测系统(Detection System,简称
52、DS)来发现网络异常和滥用44.在DAD方法中,许多DSs被部署在Internet的关键位置上,它们独立地检测和处理流经它们地网络流量以发现可能存在的DDoS攻击。每一个DS观测到的是部分异态(或者没有),这就需要各个DSs协作工作,交换它们从局部观测得来的攻击信息,整合这些信息形成DDoS攻击的全貌。DSs可以部署在网络接入点、互联网交换点以及骨干ISP网络等。由于DDoS攻击的分布式特性,每一DS只能检测到部分异常,由此,完整的攻击检测处理过程包含两级:局部检测和全局检测。我们运用假设检验进行分析,假设:表示存在DDoS攻击,:表示不存在。现有数据包序列,具有相同的目的IP地址、包类型、T
53、CP标志位、端口号等相关信息。只要在局部检测中发生,那么就可以通过向其他DSs发送警报信息,进而得到一个全局的检测结论。也就是说,如果一个DDoS攻击被证实,DS可以通过激活过滤器来过滤掉非法包,也可以要求其上游的网络来过滤这些攻击报文。2.6 小结本章对DDoS攻击进行了深入全面的阐述。首先,介绍了DoS攻击和DDoS攻击的定义;然后,对DDoS攻击的原理、分类以及常用攻击工具进行了详细的说明;最后,通过对传统DDoS防御策略优缺点的分析,进而引出了DDoS攻击的分布式防御策略,并运用实例进行详细描述。第三章 DDoS分布式检测算法研究DDoS攻击出现之后,国内外众多专家提出了许多DDoS攻
54、击检测和防御策略,并且这些技术还在迅速的发展着。本章主要介绍了一个分布式检测算法。首先讲述用于检测DDoS攻击的CUSUM算法和非参数CUSUM算法;接着分别详述了基于CUSUM的源端检测算法和中间网络算法;然后阐述了DDoS分布式检测方法;最后对DDoS分布式检测算法进行性能分析。3.1 CUSUM算法及非参数CUSUM算法 CUSUM算法CUSUM(Cumulative Sum)算法45,46,47是在统计过程控制中常用的算法,它可以检测到一个统计过程均值的变化。CUSUM算法基于这样一个事实:如果有变化发生,随机序列的概率分布也会改变。设,其为独立的同分布,为独立的同分布。其中,为未知变
55、量,对于给定的观察序列,假设对于原假设的似然比统计量为(以表示标准正态分布的分布密度函数): (3-1)由,可对数化为: (3-2)设变量,与有偏移,那么其对数似然统计量为: (3-3)设我们检测的样本为向上偏移,即,则上述的对数似然统计量等价于如下的统计量: (3-4)定义3-1:设n-1个观测值没有均值偏移,即,为门限值。如果再时刻n满足: (3-5)那么这个过程就发生了均值偏移。记作,且,于是可得: (3-6)用不定参数代替,即可得到的递推公式: (3-7)设报警门限为,如果在第个观察点满足,则报警,表明在过程之前的统计量发生了均值偏移。 非参数CUSUM算法早期的文献48已经证明:CU
56、SUM算法在参数模型已知的情况下是渐进最优的。通常,CUSUM算法需要随机序列的参考模型,以便能够用概率密度函数进行检测序列,但是因特网是一个非常复杂而动态的实体,因特网业务模型的理论结构是一个复杂的问题,因而,一个关键的问题是如何模拟随机序列。非参数CUSUM算法不需要具体的模型,更适合于分析因特网。非参数CUSUM算法的主要思想是:累计明显比正常运行情况下的平均水平高的值。非参数CUSUM算法的优点是:不需要具体的网络业务模型就能以连续的方式监控输入随机变量,从而达到实时检测。非参数CUSUM算法的正式定义如下: (3-8)其中,开始时,就是测试统计。为了降低在线运行开销,可以使用非参数CUSUM算法的递归定义,如下所示: (3-9)其中定义为: (3-10)是的累积正值,考虑在时刻发生的变化,判决函数描述如下: (3-11)式(3-11)中,是攻击检测的门限值,函数代表在时刻的判决:
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
最新文档
- 龙岩学院《大数据分析实训》2023-2024学年第一学期期末试卷
- 淮北师范大学《设计软件基础》2023-2024学年第一学期期末试卷
- 贺州学院《燃气储存与输配》2023-2024学年第一学期期末试卷
- 重庆财经学院《时事政治述评》2023-2024学年第一学期期末试卷
- 浙江宇翔职业技术学院《编程语言与技术》2023-2024学年第一学期期末试卷
- 浙江工业大学之江学院《思想政治教育学原理》2023-2024学年第一学期期末试卷
- 抽凝改背压机组项目可行性研究报告模板-备案拿地
- 电路有哪三种工作状态
- 中北大学《学术交流技能》2023-2024学年第一学期期末试卷
- 长治学院《工程图学及应用》2023-2024学年第一学期期末试卷
- 高中英语新课程标准试题含答案(四套)
- 当前中国个人极端暴力犯罪个案研究
- 食品欺诈预防控制程序分享
- 员工辞职报告下载(6篇)
- 建筑节能PPT 课件
- GB/T 31525-2015图形标志电动汽车充换电设施标志
- GB/T 17906-2021消防应急救援装备液压破拆工具通用技术条件
- GB/T 16674-1996六角法兰面螺栓小系列
- GB/T 13436-2008扭转振动测量仪器技术要求
- 高低压配电柜-福建宁德核电站投标书
- 干燥综合症护理课件
评论
0/150
提交评论