ddos攻击web服务环境的虚拟.docx

上传人:小飞机 文档编号:2011299 上传时间:2022-12-31 格式:DOCX 页数:30 大小:257.90KB
返回 下载 相关 举报
ddos攻击web服务环境的虚拟.docx_第1页
第1页 / 共30页
ddos攻击web服务环境的虚拟.docx_第2页
第2页 / 共30页
ddos攻击web服务环境的虚拟.docx_第3页
第3页 / 共30页
ddos攻击web服务环境的虚拟.docx_第4页
第4页 / 共30页
ddos攻击web服务环境的虚拟.docx_第5页
第5页 / 共30页
点击查看更多>>
资源描述

《ddos攻击web服务环境的虚拟.docx》由会员分享,可在线阅读,更多相关《ddos攻击web服务环境的虚拟.docx(30页珍藏版)》请在三一办公上搜索。

1、DDoS攻击Web服务环境的虚拟摘要分布式拒绝服务(DDoS)攻击是当今网络安全领域最难解决的问题之一。其中重要的原因在于网络上大量不安全的机器的存在,其次是DDoS攻击工具的广泛可获得性以及攻击者通常采用假冒的源IP地址。对于大型的网络来说,拒绝服务攻击很可能会给企业造成巨大的麻烦,甚至造成企业网络的瘫痪。攻击发生时,攻击者短时间内向服务器申请大量的连接,造成服务器无法完成如此多的客户端连接请求,从而无法提供服务。因此,研究DDoS攻击及其对策是非常重要的。本文分析了DDoS攻击的攻击机制,攻击方法,常用DDoS攻击类型等,并在web服务器上加入允许进入控制模块,成功配置了有效的DDoS攻击

2、环境。对常用的三种DDoS攻击方式进行了虚拟和研究,分析了它们各自的优缺点。针对当前网络安全的不足和攻击类型的多样化,本文提出了一个攻击效果理想的DDoS攻击web服务环境的虚拟。这样,可以利用最少的资源获得最大程度的攻击强度。关键词:分布式拒绝服务攻击;web服务;允许进入控制;会话控制机制DDoS Attack Web Servers Environment VirtualAbstractDDoS attack is one of the most difficult problems in network security field. The most important reason

3、 is the being of many unsafe machines in network. DDoS attack tools abroad achieved and attack usually adopt cronk IP address. For large network, DDoS attacks are likely to give companies a huge trouble, and even caused the paralysis of the corporate network. When attack, the attacker to the server

4、for a short period of time a large number of connections, causing the server could not be completed so many client requests, thus unable to provide services. So, research the DDoS attack and countermeasure is very important. This article analyses DDoS attacks mechanism, method and the type that in c

5、ommon use. Also, we add the admission controller on the web server and successfully configures the most effect DDoS attack environment and can base on attack effect adjust attack stream. This article has been dummied and researched the three modes of the DDoS attack, and analyses each other merit an

6、d flaw. Aim at nowadays network safetys lack and attack types diversification, this article brings forward a very perfect attack effect of the DDoS attack environment. So, it can use the least resource gain the whole hog attack intension.Keywords:Distributed Deny of Service; web server; admission co

7、ntroller; seesion control目录1.概述11.1研究背景和意义11.2 DDoS攻击的研究现状11.3 DDoS攻击的防御对策研究现状21.3.2 当前session control机制研究状况31.4本文主要工作41.5论文的组织结构42.分布式拒绝服务攻击研究42.1 DDoS攻击原理42.1.1 DDoS网络42.1.2 DDoS进攻的一般过程62.1.3 DDoS进攻的一般步骤62.2 DDoS攻击分类72.2.1剧毒包攻击82.2.2 风暴型攻击82.3攻击工具的分析102.4本课题采用的攻击工具123.web服务器的搭建133.1 web服务器的选择133.2

8、 web服务器的开发133.2.1理论上的推导133.2.2 数值上的分析143.2.3 程序开发163.2.4 实验结果183.3 本章总结194.三种攻击环境的搭建194.1 攻击的环境194.2 Request Flooding Attack204.2.1 Request Flooding Attack攻击的形成原理204.2.2 Request Flooding Attack攻击的发起214.3 Asymmetric Workload Attack224.4 Repeated One-Shot Attack224.5 实验结果224.6 本章总结235.结束语23致谢241.概述1.1

9、研究背景和意义分布式拒绝服务DDoS(Distributed Denial of Service)攻击是一种分布、协作的大规模攻击方式,它借助于互联网上数以万计的被植入主控或守护进程的攻击主机,对目标同时发起大规模攻击,从而达到瘫痪目标服务器的目的。DDoS攻击最早出现在1999年夏天1,当时只是在黑客站点上进行的一种理论上的探讨。到2000年2月,Yahoo、B、Ebay、CNN等美国一些知名网站均遭受到DDoS攻击,在短短几天之内,致使有的站点停止服务达几个小时甚至几十个小时,据统计所造成的经济损失可能在12亿美元以上。此后,DDoS攻击便频频爆发。2002年1月,网站被一种更先进的恶意洪

10、水数据包攻击,这种攻击被称之为分布式反射服务攻击(DRDoS,Distributed Reflection Denial of Service)2。2002年10月,位于美国、瑞典、英国、日本等国家和地区的13个根名服务器(国际互联网系统的核心),遭受了有史以来规模最大、最复杂的一次DDoS攻击,前后持续了1小时左右,差点让互联网崩溃3。2005年1月,权威IT媒体IT时代周刊网站更是遭到了史无前例的长达200多个小时的持续DDoS攻击,网站内容更新不到5分钟,网站便突然无法浏览,与网站使用的同一服务器邮件系统也同时瘫痪。上述攻击案例表明我们的网络环境依然恶劣,网络上采用DDoS方法的攻击破坏

11、活动异常猖獗,DDoS攻击已经成为互联网面临的最为严重的威胁之一。一方面,DDoS攻击由于实现简单、难于防范和破坏性极大4而被广泛应用;另一方面,国内外研究人员提出的诸多防御方法7 8 9中,很少能够及时阻止正在进行的攻击并快速有效地确定攻击源。由此可见,切实可行地解决DDoS攻击防御问题显得尤为迫切。1.2 DDoS攻击的研究现状由于当前的互联网仍然是基于TCP/IP协议的,而且TCP/IP协议在制定时并没有考虑安全因素,因此存在很多安全漏洞:源IP地址可以任意改变、无限制的SYN连接以及缺乏对信息源的有效认证等,这些都是引起拒绝报务(DoS)攻击的关键因素。DDoS攻击并不是针对某一特殊系

12、统,而是对基于TCP/IP协议的所有系统均可进行拒绝服务攻击,这也是这种攻击方法为何如此普遍的原因之一。面对日益严重的DDoS攻击的威胁,国内外研究人员一直致力于这方面研究,并取得了一系列成果。基于DDoS攻击报文的源IP地址伪造特性,可以采用入口包过滤技术,如果该技术能被全面部署的话,将能够有效地杜绝DDoS攻击,然而该方案的部署难度太大。鉴于此,Park和Lee5提出了基于路由的包过滤机制,该技术使用BGP(Border Gateway Protocol)信息来识别源IP地址伪造报文,实验结果显示:只要在18%的Internet核心路由器上部署该机制,就能较有效地防范DDoS攻击,然而该方

13、案的部署仍然存在较大困难。2003年Abraham Yaar6提出的PI方法是一种新的包标记算法,它的主要思想是将路径信息植入每一个包中(通过相同路径的每一个包具有相同的标识信息),使得受害者能据此识别来自网络的每一个包,不管其源址是否为欺骗IP。当存在有数以千计的攻击者参与的大规模DDoS攻击时,该方案运行良好,即使在网络中只有一半路由器部署了该方案,防御也是很有效的,但是,当攻击路径被识别出来后,受害者必须得信赖上一跳路由器来执行包过滤机制。2004年Antonio Challita7提出了分组漏斗(Packet Funning)算法,通过限制流向访问链接的活动IP的数目达到限制拥塞的目的

14、,与首次出现的独立IP地址相比,间隔很小或连续的IP地址的分组会被延迟发送,直到链接的带宽允许发送。该方法易于实现,不需要各节点间的协作,即使网络负载重,仅会引起轻微的传输延迟,但它不能从信息流中识别出合法信息。贝尔实验室的Bellovin8提出在路由中使用ICMP Traceback Messages,用于追踪真正的攻击源。该方案要求路由器额外地向报文的目的IP地址发送ICMP Traceback Messages,从而使接收方能够重建攻击流的路径。同年,Barros9对该方案做了改进,以适用于反射式DDoS攻击情况10。1.3 DDoS攻击的防御对策研究现状1.3.1 session co

15、ntrol机制在目前的互联网,拥塞控制还在包级的水平。还没有机制来防止积聚了大量的数据流进入路由器。现有的拥塞控制机制在路由器与来源回路之间采用丢包的方法来控制发送的数据包数量迈向一个拥挤的路由器连接。他们既不是防止大量数据流进入,也不阻止新的流来加入该网络,并进一步增加挤塞的情况。由于这种不平衡现象,当有大量数据包流入到网络中,每个流获得非常少的带宽,并长时间停留在该网络中。这伤害了流完成时间的弹性应用和交互性的流媒体应用。由于增加了数据包的丢包率,他们在公平的分享中进一步降低了吞吐量的流量;由于持续增加的转播,他们在网络吞吐量为好的情况下有一个明显的降低。会话级别控制的整体功能的目标是使流

16、达到最大限度的完成率,并在会话超负荷时尽量减少弹性TCP流的流完成时间。不像大量的研究流接纳控制,该会话控制机制,不提供任何履约担保。除了这些功能目标,也符合下列后勤和切合实际部署的工程要求。1路由器不保留任何每流状态。2没有推测的通信量(或流量)的分布,假设没有来袭流的表征(例如使用令牌桶参数,峰值速度等)的需要。 3会话控制机制的计划是稳健地变化,无论是突发性还是渐进性。 4在最坏的情况下,在没有任何会话控制的情况下性能不降解到低于所得。按照传统,过载控制,是通过比较一种或多种系统或网络负载对一个或多个指定荷载门槛的措施来完成。这一阈值为基础办法的局限性是,在指定的阈值,除非调谐,在所有的

17、网络和制度条件下是不可能会产生最优性能的。事实上,当网络和体制条件发生明显变化,在大大低于最优的时候这性能可能会更好。会话控制机制的第一个战略,利用独特的黄金分割搜索(GSS)和梯度上升(GA)的结合的完成本搜索。但是,为削减分布输入流的大小,最大化流的完成率,使用GSS+GA,可产生非常高的流完成时间。这是因为,削减分布输入流的大小,在一个允许的高于最高流量完成率本身速率最大流完成率将达到。这种行为造成高流完成时间。因此,要保持流完成时间,根据检查,开发了第二个战略,即寻找一个最大化流的完成率所允许的速率,但并没有超出完成率。1.3.2 当前session control机制研究状况允许进入

18、控制机制已经研制成功,并广泛用于电话与ATM网络11。这目的是为了储备资源,具体办法由来袭流向及附表获取资源,以提供统计或难以履约担保。但是,由于各种不同的互联网应用系统的需求的复杂性,这些计划都没有被广泛部署在互联网上。接纳控制争论弹性通信首先由Massoulif和Roberts12 制造,后来Roberts等人介绍了基于测量的接纳控制机制弹性流量估计,“可用带宽”的一个瓶颈环节和接纳一个新流只是如果这个估计数大于最低门槛,其中任何新的流量都会达到。否则,所有新的流动是拒绝到更多的带宽可供使用。他们试行了两种不同的技术估算,“可用带宽”,第一,用一个TCP连接超过瓶颈环节和测量带宽;第二,度

19、量损失概率超过瓶颈环节和有关它的TCP吞吐量。基于估算QoS参数工作,在ATM网络中通信流用大偏差的理论13在为弹性通信互联网上,Mortier等人提出了一个基于测量的准入控制计划14。这是一个门槛,根据计划有效带宽的交通组合,估计用投入通信量的熵和一个新的流量承认只有当丢包率不超过某一界限。库马尔等人提出了一种TCP准入控制计划15,使用环节的入住门槛准入控制标准。在这项计划下,新的流量都允许进入,只有当连住的是低于一个设定的门槛。所有上述计划作出假设性质来袭通信,使他们作出控制进入的决定,或使用损失的阈值。虽然假设明知性质来袭可能搁置流流动,但并不一定使弹性流动以可变的速率发送数据,并以不

20、可预知的方式。此外,所有上述计划是基于门槛,因此患上了缺陷,没有在不断变化的网络和体制条件下受到强有力的反对。在下列重要途径中,该会话控制机制的工作不同于以往的工作。第一,该会话控制机制的计划使用一个基于搜索的方式寻找最优允许率,使该计划更稳健,以改变通信状况,而不是用荷载门槛。第二,对网络流量的带宽要求,它不作任何假设。第三,除了要增加每流性能,在短期和长期的活动流动之间,展现了明显的改善。最后,该计划并没有使新的流量挨饿,即使现有的流留在该系统相当长的时间。Siddharth Ramesh等人16提出了两种新型的基于搜索的会议级别的拥塞控制机制(GSS+GA和CP),以补充现有的包级别的机

21、制。根据不同的通信情况和负荷的变化,详细评价了该会话控制算法,在会话挤塞的情况,用会话控制算法比无会话控制有巨大的好处。比较这种算法,我们发现,整体而言,CP的性能优于GSS+GA,不仅在大幅度降低流完工时间,而且还可以在最大限度流的完成率。此外,它是相当强劲,所有的变化,包括脉冲型变化。因此,可以建议CP作为互联网一个可行的会话控制机制。这个算法的目标是要找到允许的最大流的完成率。此外,由于最大流的完成率,可随着时间的变化,该算法需要检测这些变化并在一个合理的时间内收敛到新的最大的速率。找到最高(最低)的问题,是典型的任何全球性的优化算法。1.4本文主要工作本论文综合分析了现有的DDoS攻击

22、手段和防御对策,其中重点研究了DDoS攻击原理和攻击环境的问题,并在此基础上,实现了一些攻击。论文的主要完成的工作内容具体包括:1.分析了DDoS攻击的攻击机制,攻击方法,对DDoS攻击方法进行了综合归类和研究,对现有的DDoS攻击对策技术进行了深入的研究。2.在web服务器上开发admission controller模块,实现拒绝服务,衡量web服务器性能。3.实现和分析了常见的三种DDoS攻击效果。1.5论文的组织结构各章节的内容分布如下:第一章是课题的相关背景总的概述,引出了本文将要研究的问题,回顾了从DDoS攻击发生以来对DDoS攻击及其对策展开的研究。第二章研究了DDoS攻击原理和

23、攻击方法,并对DDoS攻击的防范和对策进行了详细的分析。第三章分析了web服务器的原理,开发了一个具有拒绝服务的web服务器,用于测试DDoS攻击效果。第四章我们根据常见的三种DDoS攻击特性,配置了这三种DDoS攻击,并对它们的攻击效果进行了分析和比较。第五章是结论,同时介绍了今后需要进一步完善的工作。2.分布式拒绝服务攻击研究DDoS攻击是在DoS攻击基础上发展起来的。本章将重点研究DoS/DDoS攻击的基本原理及攻击特点、DDoS常用攻击工具及本课题所采用的攻击工具,这为后面的攻击奠定了基础。2.1 DDoS攻击原理2.1.1 DDoS网络DDoS网络为一种三层客户机/服务器结构,如图2

24、-1。从图中可以看出DDoS攻击分为三层:攻击者,傀儡机,代理端,三者在攻击中扮演着不同的角色,再加上受害端组成四个部分。图21 DDoS攻击原理图1.攻击者:攻击者可以是网络上的任何一台主机。在整个进攻过程中,他是攻击主控台,向傀儡机发送攻击命令,包括目标主机地址,控制整个过程。攻击者与傀儡机的通信一般不包括在DDoS工具中,可以通过多种连接方式完成,最常用的有“telnet”TCP终端会话,还可以是绑定到TCP端口的远程shell,基于UDP的客户/服务器远程shell等。2.傀儡机:傀儡机和代理端都是攻击者非法侵入并控制的一些主机,它们分为了两个层次,分别运行非法植入的不同的攻击程序。每

25、个傀儡机有多个代理端,有其控制的代理端的地址列表,它监听端口接收攻击者发来的命令后将命令转发给代理端。傀儡机和代理端的通信根据DDoS工具的不同有所不同。如Trinoo使用UDP协议,TFN使用ICMP协议并通过ICMP-ECHOREPLY数据包完成通信,Stacheldraht使用TCP和ICMP协议进行通信。3.代理端:代理端同样也是攻击者入侵并控制的一批主机,在它们上面运行攻击程序,监听端口接收和运行傀儡机发来的命令,是真正执行DDoS进攻的机器。4.受害端:可以是主机,路由器,交换机等。遭受DDoS进攻时,它们的资源或网络带宽被耗尽。防火墙,路由器的阻塞还可能导致恶性循环,加重网络阻塞

26、情况,严重时造成网络全面瘫痪。2.1.2 DDoS进攻的一般过程我们这里描述的是分布式拒绝服务攻击的一个典型过程。实际上,并非每一次攻击都要遵循这样一个过程的。1.准备阶段,收集目标信息通常,攻击者的攻击是有计划地进行的,为了使得攻击奏效,攻击者需要了解受害者许多的信息如被攻击目标主机数目、配置、性能、操作系统、地址情况以及目标网络的带宽等。因此,在攻击发生前,攻击者需要先对目标进行侦察,如利用扫描工具对目标进行扫描。2.占领傀儡机和代理端在DDoS中,攻击者可以通过自己的机器直接对目标发起攻击,这样攻击者可能会冒着被发现的风险。通常,为了掩蔽自己不被发现,攻击者需要占领一些傀儡机,用来实施攻

27、击。另外,为了达到需要的攻击力度,就需要大量的傀儡机器用于增强攻击的“火力”。这些傀儡机器最好具有良好的性能和充足的资源,如强的计算能力、大的带宽等等,这样攻击者会获得较大的攻击力。并且,攻击者还需要向傀儡机发送命令的代理端,因此攻击者还需利用某些被其攻破的机器或者其拥有访问权限的机器作为代理端。攻击者占领这些傀儡机的一般方法是先通过扫描,得到一些容易攻破的机器,然后采用一些较为简单的方法予以攻破。此外,由于新的软件越来越多,软件的漏洞使得恶意程序可以自动地攻破大量的主机,然后提供给攻击者作为傀儡机使用。攻击者占领傀儡机以后,需要在傀儡机上安装后门,以保持对傀儡机的占有,对于那些攻击者选作攻击

28、机的傀儡机,攻击者还需在上面安装攻击软件。3.攻击的实施在前面的准备工作完成之后,实际的攻击过程却相对比较简单,攻击者只需通过控制台向傀儡机发出指令,令其立即或在某个时间向指定的受害者大量发送特定的攻击数据包即可。或者,攻击者可以在傀儡机上作一定时设置,时间一到,这些傀儡机就自行对既定目标发起攻击。2.1.3 DDoS进攻的一般步骤分布式拒绝服务攻击(DDoS)是在传统DoS攻击基础上演变而成的。分布式拒绝服务攻击将攻击源的个数从一个扩展为多个,采用多对一的方式,从多个攻击源同时发起攻击,攻击威力大大增强了。通常分布式拒绝服务攻击的步骤如下:1)探测扫描大量主机以寻找可入侵的傀儡机;2)入侵有

29、安全漏洞的主机并获取控制权,作为DDoS攻击的傀儡机;3)选取一台傀儡机,在其中安装DDoS攻击控制程序,作为控制傀儡机;4)在其它傀儡机上,安装攻击程序;5)攻击者通过控制傀儡机,同时向攻击傀儡机发布攻击命令;6)攻击傀儡机同时向目标系统发送洪水般的数据,造成目标系统拒绝服务。2.2 DDoS攻击分类DDoS攻击有很多种类型,不同的应用场合采用不同的分类标准。DDoS攻击按是否自动化分,可分为手动攻击,半自动攻击和自动攻击。DDoS攻击的四个阶段:扫描,入侵,植入攻击程序和发动攻击。早期的DDoS攻击在四个阶段中都手动完成。半自动攻击是指前三个阶段都是自动的,在使用攻击程序实施攻击时手动完成

30、。自动攻击则是整个攻击过程都是自动完成。如W32/Blaster攻击。DDoS攻击按攻击频率分,可分为持续攻击和变动频率攻击。持续攻击是当攻击指令下达后,攻击主机就全力持续攻击,瞬时产生大量流量阻断目标的服务,变动频率攻击的频率可能是从慢速渐渐增加或频率高低变化,这样可以使攻击不容易被侦测到。DDoS攻击按源地址的有效性分,可分为假冒源地址攻击和有效源地址攻击。假冒源地址攻击是常用的攻击方式,因为攻击者假冒源地址可以逃避责任,对检测产生干扰。假冒源地址又可以分为假冒可路由的源地址和不可路由的源地址。假冒可路由的源地址就是假冒某个用户的可使用的IP地址,如Smurf攻击,假冒不可路由的源地址就是

31、假冒被保留的地址集合中的地址和网络中己分配但未被使用的地址空间中的地址,如使用地址192.168.0.0/16。DDoS攻击按是否可特征化分,分为可特征化攻击和可特征化攻击。可特征化攻击是指那些针对受害端的特定协议或应用程序的攻击,并且能够通过IP头和协议头的值的组合或数据包的内容而被识别。如:TCP SYN攻击,DNS请求攻击等。不可特征化攻击是针对不同的应用程序和协议,使用多种多样的数据包来消耗网络带宽。如:TCP ACK,ICMP ECHO等构成的混合攻击。这里,我们把所有的拒绝服务攻击分成3类,第一类是杀手包或剧毒包(killer Packet)型攻击,这类攻击也是逻辑攻击,它主要是利

32、用协议本身或者其软件实现中的漏洞,通过一些非正常的数据包使得受害者系统在处理时出现异常,导致受害者系统崩溃。由于这类攻击对攻击者的运算能力或带宽没有要求,一个通过modem连接的低档的PC机就可以攻破一个具有高带宽的大型系统。因此,这类攻击有时也称作非对称DDoS攻击。此类攻击一般可以通过打补丁或者在防火墙处过滤特定的畸形数据包达到对受害者的保护目的。第二类是风暴型(flood type)攻击,攻击者通过大量的无用数据包,无用是指它们不是正常用户的正常请求,因此是无用的;这些数据包从单个来看是无害的但当汇集到一定数量以后却会损害受害者的服务,因此我们也称这些数据包为有害数据包;同时,由于这些数

33、据包是旨在攻击受害者,由攻击者发出的或者攻击机响应攻击者的指令而发出的,因此我们有时也称之为攻击性数据包。在这类攻击中,攻击数据包可以是各种类型的,数据包中的数据也可以是多种多样的,这些数据包与正常服务的数据包是难以区分的。第三类攻击我们称为重定向攻击,它既不是利用剧毒包,也不是利用风暴来攻击受害者。它是通过修改网络中的一些参数如ARP表、DNS缓存,使得从受害者发出的或者发向受害者的数据包被重定向到了其他的地方。这种方法常常是用于窃听或者中间人攻击(将来自于受害者或者流向受害者的数据包重定向到攻击者),但是,如果数据包被重定向到不存在的主机或者存在但不将数据包转发到其真正目的地的主机,则构成

34、实际的拒绝服务。由于这种方式通常在窃听中研究,所以很多人不把它当成拒绝服务攻击,我们这里不对此进行深入讨论。下面我们对前两种攻击分别作一个简单的介绍。2.2.1剧毒包攻击1)Land攻击Land是一段C程序,其向受害者发送TCP SYN包,用于Land攻击的数据包中的源地址和目标地址是相同的,源端口和目的端口也是相同的,当操作系统接收到这类数据包时,不知道该如何处理堆栈中通信源地址和目的地址相同的这种情况,或者循环发送和接收该数据包,消耗大量的系统资源,从而有可能造成系统崩溃或死机等现象。2)Ping of death攻击Ping of death攻击利用协议实现时的漏洞,向受害者发送超长的p

35、ing数据包,导致受害者系统异常。根据TCP/IP规范要求,数据包的长度不得超过65535个字节,其中包括至少20字节的包头和0字节或更多字节的选项信息,其余的则为数据。而Internet控制消息协议ICMP是基于IP的,ICMP包要封装到IP包中。ICMP的头有8字节,因此,一个ICMP包的数据不能超过65507字节。如果攻击者发送数据超过65507的ping包到一个有此漏洞的受害者,则受害者系统可能会因此而崩溃、死机、重启等等。事实上,对于有的系统,攻击者只需向其发送载荷数据超过4000字节的ping包就可以达到目的,而不用使数据超过65507。3)循环攻击循环攻击,有的也称之为死锁或振荡

36、攻击。这类攻击中最常见的是Echo-chargen攻击1291,当运行着chargen服务的UDP端口(通常为端口号19)收到一个数据包以后,其会产生一个字符串作为回应。当运行着echo服务的UDP端口(通常为端口号7)收到一个数据包以后,其会简单地返回该包的数据内容作为回应。这两种服务可被攻击者利用来进行循环攻击。循环攻击既可以看作是剧毒包型攻击,也可以看作是风暴型攻击,一方面,它只要求攻击者发送一个或数个数据包;另一方面,在受害者处却有大量的数据包出现。这种攻击可以针对单个系统,也可以针对两个或多个系统。循环攻击的对策:过滤特定的包,关闭不需要的服务如UDPchargen、UDPecho、

37、time、daytime等。2.2.2 风暴型攻击风暴型DDoS攻击是最为主要的、发生最多的一种拒绝服务攻击类型,它又可进一步分为单纯风暴型和反射型两种。风暴型DoS攻击依靠数据包的总量来达到攻击的目的,因此,它也是一种强力攻击或者野蛮攻击。虽然这种攻击通常会采用源地址伪造(假冒)的手段,但除了某些特定的攻击方式外,源地址伪造不一定是必须的但常常是对攻击者有利的。对于风暴型拒绝服务攻击,可以由一个攻击者攻击一个受害者,多个攻击者攻击多个受害者、多个攻击者攻击一个受害者等。2.2.2.1直接风暴攻击l)SYN风暴攻击SYN风暴攻击是最常见的一种攻击。在TCP的连接建立过程中,需要连接双方完成3次

38、握手,只有当3次握手都顺利完成,一个TCP连接才告建立。在第一步中,客户端向服务端提出连接请求。这时TCP SYN标志置位。客户端告诉服务端序列号区域合法,需要检查。客户端在TCP报头的序列号区中插入自己的ISN。服务端收到该TCP分段后,在第二步以自己的ISN回应(SYN标志置位),同时确认收到客户端的第一个TCP分段(ACK标志置位)。在第三步中,客户端确认收到服务端的ISN(ACK标志置位)。到此为止建立完整的TCP连接,开始全双工模式的数据传输过程。假设一个用户向服务器发送了SYN报文后突然死机或掉线,那么服务器在发出SYN + ACK应答报文后是无法收到客户端的ACK报文的(第三次握

39、手无法完成),这种情况下服务器端一般会重试(再次发送SYN+ACK给客户端)并等待一段时间后丢弃这个未完成的连接,这段时间的长度我们称为SYN Timeout,一般来说这个时间是分钟的数量级(大约为30秒-2分钟);一个用户出现异常导致服务器的一个线程等待1分钟并不是什么很大的问题,但如果有一个恶意的攻击者大量模拟这种情况,服务器端将为了维护一个非常大的半连接列表而消耗非常多的资源有数以万计的半连接,即使是简单的保存并遍历也会消耗非常多的CPU时间和内存,何况还要不断对这个列表中的IP进行SYN+ACK的重试。实际上如果服务器的TCP栈不够强大,最后的结果往往是堆栈溢出崩溃一即使服务器端的系统

40、足够强大,服务器端也将忙于处理攻击者伪造的TCP连接请求而无暇理睬客户的正常请求,此时从正常客户的角度看来,服务器失去响应,这种情况就称做:服务器端受到了SYN风暴攻击。2)TCP连接耗尽攻击这种攻击是为了绕过常规防火墙的检查而设计的,一般情况下,常规防火墙大多具备过滤TearDrop、Land等DDoS攻击的能力,但对于正常的TCP连接是放过的,殊不知很多网络服务程序(如:IIS、Apache等web服务器)能接受的TCP连接数是有限的,一旦有大量的TCP连接,即便是正常的,也需要占用很多的内存和CPU时间,会导致访问非常缓慢甚至无法访问。TCP全连接攻击就是通过许多代理端不断地与受害服务器

41、建立大量的TCP连接,直到服务器的内存等资源被耗尽而被拖跨,从而造成拒绝服务,这种攻击的特点是可绕过一般防火墙的防护而达到攻击目的,缺点是代理端的IP是暴露的,因此容易被追踪。Naptha就属于这种攻击方式,它能非常有效地利用TCP连接耗尽。其有效在于其不是用传统的网络API建立TCP连接,与实际的TCP栈不同,它不保持任何的连接状态信息。它只根据收到的数据包中的flag来回答。当Naptha向受害者发起成千上万的连接后,其给攻击者系统带来较少的资源消耗,但却会耗尽受害者系统的所有资源,通过这种方式,也可以暴露受害者系统的某些服务甚至TCP/IP栈本身的漏洞。3)UDP风暴UDP是一无连接的协

42、议,在传输数据之前不需要如TCP那样建立连接。当一个系统收到一个UDP包时,它会检查何种应用程序在监听该端口,如果有应用程序监听,则把数据交该应用程序处理,如果没有应用程序监听该端口,则回应一个ICMP包说明目标不可达。UDP风暴通常的主要目的是占用网络带宽,达到阻塞网络的目的,因此通常UDP风暴攻击的数据包会比较长。一般是使两个或两个以上的系统之间产生巨大的UDP数据包。首先使这两种UDP服务都产生输出,然后让这两种UDP服务(例如chargen服务(UDP)和echo服务(UDP)之间互相通信,使一方的输出成为另一方的输入。这样会形成很大的数据流量。当多个系统之间互相产生UDP数据包时,最

43、终将导致整个网络瘫痪。还有一种是用户数据报(UDP)炸弹:发送一个头信息错误的UDP包,可使某些计算机重启,危害很大。4)邮件炸弹邮件炸弹指的是邮件发送者,利用特殊的电子邮件软件或邮件服务器,在很短的时间内连续不断地将邮件邮寄给同一个收信人,在这些数以千万计的大容量信件面前收件箱肯定不堪重负,该地址或服务器的存储空间塞满而不能提供正常的服务。2.2.2.2反弹攻击虽然同为风暴型攻击,与直接风暴型攻击不同,反弹攻击多了反弹器的反弹环节。在这种攻击中,攻击者或其控制下的傀儡机(攻击机)不是直接向受害者发送攻击数据包,而是向第三方的反弹器发送特定的数据包,再经由反弹器向受害者发送攻击者所希望的数据包

44、。其利用了反弹器根据一个消息生成另一个消息的能力。这一部分的内容我们将在第五章作详细介绍,这里就不再多作介绍。2.3攻击工具的分析1)Smurf攻击Smurf攻击是以最初发动这种攻击的程序名Smurf来命名。这种攻击方法是基于IP欺骗和ICMP回复方法的分布式反弹攻击。攻击的过程是:攻击者向一个具有大量主机和因特网连接的网络的广播地址发送一个欺骗性Ping分组(echo请求),而欺骗性Ping分组的源地址就是受害端系统。由于多数系统都会尽快地处理ICMP传输信息,攻击者又把分组的源地址设置为目标系统,因此目标系统都很快就会被大量的echo信息吞没,使大量网络传输充斥目标系统,这样轻而易举地就能

45、够阻止该系统处理其它任何网络传输,对其它的正常请求失去反应能力。2)Trinoo攻击Trinoo,是发现最早的DDoS工具之一,在1999年6、7月就出现了。它是一种基于UDP风暴攻击工具,它向被攻击目标主机随机端口发送全零的4字节UDP包,被攻击主机的网络性能在处理这些超出其处理能力垃圾数据包的过程中不断下降,直至不能提供正常服务甚至崩溃。Trinoo攻击功能的实现,是通过三个模块付诸实施的:(1)攻击守护进程(NS)(2)攻击控制进程(MASTER)(3)客户端(NETCAT,标准TELNET程序等)攻击守护进程NS是真正实施攻击的程序,它一般和攻击控制进程(MASTER)所在主机分离,在

46、原始C文件ns.c编译的时候,需要加入可控制其执行的攻击控制进程MASTER所在主机IP,编译成功后,攻击者通过目前比较成熟的主机系统漏洞破解(如rpc.cmsd,rpc.ttdbserver,rpc.statd)可以方便的将大量NS植入因特网中有上述漏洞主机内。NS运行时,会首先向攻击控制进程(MASTER)所在主机的31335端口发送内容为HELLO的UDP包,标示它自身的存在,随后攻击守护进程即处于对端口27444的侦听状态,等待master攻击指令的到来。攻击控制进程(MASTER)在收到攻击守护进程的HELLO包后,会在自己所在目录生成一个加密的名为的可利用主机表文件,MASTER的

47、启动是需要密码的,在正确输入默认密码gOrave后,MASTER即成功启动,它一方面侦听端口31335,等待攻击守护进程的HELLO包,另一方面侦听端口27665,等待客户端对其的连接。当客户端连接成功并发出指令,MASTER所在主机将向攻击守护进程ns所在主机的27444端口传递指令。客户端(NETCAT)不是trinoo自带的一部分,可用标准的能提供TCP连接的程序,如TELNET,NETCAT等,连接MASTER所在主机的27665端口,进入攻击控制可操作的提示状态。3)TFN攻击TFN是The Tribe Flood Network的缩写,它的出现是在trinoo之后,是最危险的DDo

48、S工具之一。攻击者利用即RPC服务的安全漏洞“state”,“cmsd”,“ttdbserved”,等进行入侵,植入攻击程序。TFN的控制台和攻击主体构成的攻击网络能够实施多种攻击,如ICMP风暴、SYN风暴、UDP风暴和SMURF等。TFN与trinoo有较大的区别,其攻击者、控制台、攻击主体之间的通讯采用ICMPECHO和ECHOREPLY消息。在TFN中,攻击者到控制台的通讯采用的是明文方式,即没有加密处理,容易受到标准的TCP攻击如会话劫持(session hijacking)、RST截断(RST snipin)等。TFN的控制台到攻击机的通讯通过ICMPECHOREPLY包。由于有些协议监视工具不截取ICMP包,因此TFN不依赖于TCP和UDP进行通讯的特征使得在某些情况下其更不易被发现。TFN2K是由TFN发展而来的,在TFN所具有的特性上,TF

展开阅读全文
相关资源
猜你喜欢
相关搜索

当前位置:首页 > 生活休闲 > 在线阅读


备案号:宁ICP备20000045号-2

经营许可证:宁B2-20210002

宁公网安备 64010402000987号