版权说明:本文档由用户提供并上传,收益归属内容提供方,若内容存在侵权,请进行举报或认领
文档简介
1、北京市西城经济科学大学毕 业 设 计题目:ddos 攻击与部署防御措施姓 名: 学 号: 学 院: 北京市西城经济科学大学 专 业: 计算机网络与安全管理 指 导 教 师: 协助指导教师: 2011年3月15日本 人 声 明我声明,本设计及其研究工作是由本人在导师指导下独立完成的,在完成设计时所利用的一切资料均已在参考文献中列出。2011年3月15日摘 要dos(denial of service 拒绝服务)的攻击,是一种常见而有效的网络攻击技术,它通过利用协议或系统的漏洞,采取欺骗或伪装的策略来进行网络攻击,最终使得受害者的系统因为资源耗尽或无法作出正确响应而瘫痪,从而无法向合法用户提供正常
2、服务。经由dos发展来的ddos(分布式拒绝服务)更以其大规模性、隐蔽性和难防范性而著称。它攻击范围广,隐蔽性强、简单而有效,目前已经成为了网络中一种强大的攻击技术,极大地影响和破坏着网络和业务主机系统的有效服务。本文从ddos概念开始,介绍了受到ddos攻击的现象,并通过对ddos攻击的原理的分析和攻击过程描述,展示了ddos攻击的巨大破坏力,并进一步从几个方面,提出了部署防御ddos攻击的方法与措施。关键词:ddos,攻击,部署,防御,措施目 录引言1第1章 ddos11.1 ddos攻击概念11.1.1 dos的攻击方式11.1.2 ddos攻击手段11.1.3 分布式拒绝服务攻击11.
3、1.4 分布式与普通的拒绝服务攻击区别11.2.被ddos攻击时的现象21.3攻击实施原理2第2章 黑客如何组织一次ddos攻击32.1搜集了解目标的情况32.2占领傀儡机42.3实际攻击42.4 ddos攻击举例 - syn flood攻击4第3章 部署ddos的防御63.1 针对ddos攻击主要预防为主保证安全63.2 找机会应对攻击73.3针对主机上的设置73.4针对网络设备上的设置7第4章 体会与收获8参考文献9致 谢10北京市西城经济科学大学计算机系毕业设计引言随着计算机技术的发展,网络也在迅猛地普及和发展。人们在享受着网络带来的各种便利的同时,也经常会受到黑客的攻击。在众多的攻击种
4、类中,有一种叫做 dos(denial of service 拒绝服务)的攻击,是一种常见而有效的网络攻击技术,它通过利用协议或系统的缺陷,采取欺骗或伪装的策略来进行网络攻击,最终使得受害者的系统因为资源耗尽或无法作出正确响应而瘫痪,从而无法向合法用户提供正常服务。它看上去平淡无奇,但是攻击范围广,隐蔽性强、简单有效而成为了网络中一种强大的攻击技术,极大地影响了网络和业务主机系统的有效服务。其中,ddos(分布式拒绝服务)更以其大规模性、隐蔽性和难防范性而著称。第1章 ddos ddos中文为分布式拒绝服务攻击,它是从以前的拒绝服务攻击dos攻击发展过来的,是一种比较新的黑客攻击方法,最早出现
5、在1999年夏天。它的基本原理就是通过向服务器发送大量虚假的服务请求,大量占用服务器软硬件资源,使服务器无暇处理正常服务请求,造成服务中断、服务被拒绝,甚至造成服务器瘫痪。dos通常是通过一个攻击电脑来向服务器发出攻击,而ddos则是通过控制很多攻击电脑来同时向服务器发起攻击,所以攻击效果也就成倍的增加,造成的损害巨大,又因为其攻击形式是冒充正常的访问,所以防范起来甚为困难。 1.1 ddos攻击概念1.1.1 dos的攻击方式dos的攻击方式有很多种,最基本的dos攻击就是利用合理的服务请求来占用过多的服务资源,从而使合法用户无法得到服务的响应。1.1.2 ddos攻击手段ddos攻击手段是
6、在传统的dos攻击基础之上产生的一类攻击方式。单一的dos攻击一般是采用一对一方式的,当攻击目标cpu速度低、内存小或者网络带宽小等等各项性能指标不高它的效果是明显的。随着计算机与网络技术的发展,计算机的处理能力迅速增长,内存大大增加,同时也出现了千兆级别的网络,这使得dos攻击的困难程度加大了-目标对恶意攻击包的消化能力加强了不少,例如你的攻击软件每秒钟可以发送3,000个攻击包,但我的主机与网络带宽每秒钟可以处理10,000个攻击包,这样一来攻击就不会产生什么效果。1.1.3 分布式拒绝服务攻击 这时侯分布式的拒绝服务攻击手段(ddos)就应运而生了。你理解了dos攻击的话,它的原理就很简
7、单。如果说计算机与网络的处理能力加大了10倍,用一台攻击机来攻击不再能起作用的话,攻击者使用10台攻击机同时攻击呢?用100台呢?ddos就是利用更多的傀儡机来发起进攻,以比从前更大的规模来进攻受害者。2000年2月开始,这种攻击方法开始大行其道。雅虎网站和美国另外几家著名的因特网网站都曾因遭到外来ddos攻击而造成短时间瘫痪,可见其防范的难度。1.1.4 分布式与普通的拒绝服务攻击区别分布式的拒绝服务攻击使用与普通的拒绝服务攻击同样的方式,但是发起攻击的源是多个,至少要达到几百甚至上千台计算机,才能达到满意的效果。高速广泛连接的网络给用户带来了方便,也为ddos攻击创造了极为有利的条件。在低
8、速网络时代时,黑客占领攻击用的傀儡机时,总是会优先考虑离目标网络距离近的机器,因为经过路由器的跳数少,效果好。而现在电信骨干节点之间的连接都是以g为级别的,大城市之间更可以达到2.5g的连接,这使得攻击可以从更远的地方或者其他城市发起,攻击者的傀儡机位置可以分布在更大的范围,选择起来更灵活了。 1.2.被ddos攻击时的现象 当主机受到ddos攻击时,如果我们检查网络,会发现以下现象: 被攻击主机上有大量等待的tcp连接; 网络中充斥着大量的无用的数据包,源地址为假; 制造高流量无用数据,造成网络拥塞,使受害主机无法正常和外界通讯; 利用受害主机提供的服务或传输协议上的缺陷,反复高速的发出特定
9、的服务请求,使受害主机无法及时处理所有正常请求; 严重时会造成系统死机。1.3攻击实施原理如图2.1所示:一个比较完善的ddos攻击体系分成四大部分:攻击者、控制机、攻击机、受害者。先来看一下最重要的第2和第3部分:它们分别用做控制和实际发起攻击。请注意控制机与攻击机的区别,对第4部分的受害者来说,ddos的实际攻击包是从第3部分攻击傀儡机上发出的,第2部分的控制机只发布命令而不参与实际的攻击。对第2和第3部分的计算机,黑客有控制权或者是部分的控制权,并把相应的ddos程序上传到这些平台上,这些程序与正常的程序一样运行并等待来自黑客的指令,通常它还会利用各种手段隐藏自己不被别人发现。在平时,这
10、些傀儡机器并没有什么异常,只是一旦黑客连接到它们进行控制,并发出指令的时候,攻击傀儡机就成为害人者去发起攻击了。 黑客为什么不直接去控制攻击傀儡机,而要从控制傀儡机上转一下呢?这就是导致ddos攻击难以追查的原因之一了。从攻击者的角度来说,肯定不愿意被捉到,而攻击者使用的傀儡机越多,他实际上提供给受害者的分析依据就越多。在占领一台机器后,高水平的攻击者会首先做两件事:1. 考虑如何留好后门方便以后再次登陆!2. 如何清理日志。这就是擦掉脚印,不让自己做的事被别人查觉到。低水平的黑客会不管三七二十一把日志全都删掉,但这样的话网管员发现日志都没了就会知道有人干了坏事了,顶多无法再从日志发现是谁干的
11、而已。相反,高水平的黑客会挑有关自己的日志项目删掉,让人看不到异常的情况。这样就可以长时间地利用傀儡机了。但是在第3部分攻击傀儡机上清理日志实在是一项庞大的工程,即使在有很好的日志清理工具的帮助下,黑客也是对这个任务很头痛的。这就导致了有些攻击机弄得不是很干净,通过它上面的线索找到了控制它的上一级计算机,这上级的计算机如果是黑客自己的机器,那么他就会被揪出来了。但如果这是控制用的傀儡机的话,黑客自身还是安全的。控制傀儡机的数目相对很少,一般一台就可以控制几十台攻击机,清理一台计算机的日志对黑客来讲就轻松多了,这样一来从控制机再找黑客的可能性也就会大大降低了。第2章 黑客如何组织一次ddos攻击
12、这里用“组织”这个词,是因为ddos并不象入侵一台主机那样简单。一般来说,黑客进行ddos攻击时会经过这样的步骤:1搜集了解目标的情况;2占领傀儡机;3. 实际攻击。2.1搜集了解目标的情况下列情况是黑客非常关心的情报: 被攻击目标主机数目、地址情况; 目标主机的配置、性能 ; 目标的带宽。对于ddos攻击者来说,攻击互联网上的某个站点,如,有一个重点就是确定到底有多少台主机在支持这个站点,一个大的网站可能有很多台主机利用负载均衡技术提供同一个网站的www服务。以某网站为例,一般会有下列地址都是提供服务的: 2021067580202106758120210675822021067583202
13、106758420210675852021067586如果要进行ddos攻击的话,应该攻击哪一个地址呢?使2021067580这台机器瘫掉,但其他的主机还是能向外提供www服务,所以想让别人访问不到的话,要所有这些ip地址的机器都瘫掉才行。在实际的应用中,一个ip地址往往还代表着数台机器:网站维护者使用了四层或七层交换机来做负载均衡,把对一个ip地址的访问以特定的算法分配到下属的每个主机上去。这时对于ddos攻击者来说情况就更复杂了,他面对的任务可能是:要让几十台主机的服务都不正常,这件任务完成起来是相当艰巨的。 所以说事先搜集情报对ddos攻击者来说是非常重要的,这关系到使用多少台傀儡机才能
14、达到预定的攻击效果的问题。简单地考虑一下,在相同的条件下,假设攻击同一站点的2台主机需要2台傀儡机的话,攻击5台主机可能就需要5台以上的傀儡机。有人说做攻击的傀儡机越多越好,不管你有多少台主机我都用尽可能多的傀儡机来发动攻击就是了,反正傀儡机超过时效果会更好。但在实际过程中,有很多黑客并不进行情报的搜集而是直接进行ddos的攻击,这时候攻击的盲目性就很大了,效果如何也要靠运气。其实做黑客也象网管员一样,是不能偷懒的。一件事做得好与坏,态度最重要,水平还在其次。 2.2占领傀儡机黑客最感兴趣的是有下列情况的主机: 链路状态好的主机; 性能好的主机 ; 安全管理水平差的主机。这一部分实际上是使用了
15、另一大类的攻击手段:利用形攻击。这是和ddos并列的攻击方式。简单地说,就是占领和控制被攻击的主机。取得最高的管理权限,或者至少得到一个有权限完成ddos攻击任务的帐号。对于一个ddos攻击者来说,准备好一定数量的傀儡机是一个必要的条件,下面说一下他是如何攻击并占领它们的。 首先,黑客做的工作一般是扫描,随机地或者是有针对性地利用扫描器去发现互联网上那些有漏洞的机器,象程序的溢出漏洞、cgi、unicode、ftp、数据库漏洞简直举不胜举,都是黑客希望看到的扫描结果。随后就是尝试入侵了,具体的手段可以采用如:ipc$攻击、telnet等。总之黑客现在占领了一台傀儡机!然后他做什么呢?除了上面说
16、过留后门擦脚印这些基本工作之外,他会把ddos攻击用的程序上载过去,一般是利用ftp。在攻击机上,会有一个ddos的发包程序,黑客就是利用它来向受害目标发送恶意攻击包的。 2.3实际攻击经过前2个阶段的精心准备之后,黑客就开始瞄准目标准备发射了。前面的准备做得好的话,实际攻击过程反而是比较简单的。就象图示里的那样,黑客登录到做为控制台的傀儡机,向所有的攻击机发出命令:“预备 ,瞄准,开火!”。这时候埋伏在攻击机中的ddos攻击程序就会响应控制台的命令,一起向受害主机以高速度发送大量的数据包,导致它死机或是无法响应正常的请求。黑客一般会以远远超出受害方处理能力的速度进行攻击,老到的攻击者一边攻击
17、,还会用各种手段来监视攻击的效果,在需要的时候进行一些调整。简单些就是开个窗口不断地ping目标主机,查看攻击效果。在能接到回应的时候就再加大一些流量或是再命令更多的傀儡机来加入攻击。 2.4 ddos攻击举例 - syn flood攻击syn-flood是目前最流行的ddos攻击手段,早先的dos的手段在向分布式这一阶段发展的时候也经历了浪里淘沙的过程。syn-flood的攻击效果最好,应该是众黑客不约而同选择它的原因吧。那么我们一起来看看syn-flood的详细情况。1. syn flood原理三次握手syn flood利用了tcp/ip协议的固有漏洞。面向连接的tcp三次握手是syn f
18、lood存在的基础。下面是tcp连接的三次握手的图示。 图3.1 tcp三次握手如图3.1所示,在第一步中,客户端向服务端提出连接请求。这时tcp syn标志置位。客户端告诉服务端序列号区域合法,需要检查。客户端在tcp报头的序列号区中插入自己的isn。服务端收到该tcp分段后,在第二步以自己的isn回应(syn标志置位),同时确认收到客户端的第一个tcp分段(ack标志置位)。在第三步中,客户端确认收到服务端的isn(ack标志置位)。到此为止建立完整的tcp连接,开始全双工模式的数据传输过程。 2. syn flood攻击者不会完成三次握手图3.2 syn flood恶意地不完成三次握手假
19、设一个用户向服务器发送了syn报文后突然死机或掉线,那么服务器在发出syn+ack应答报文后是无法收到客户端的ack报文的(第三次握手无法完成),这种情况下服务器端一般会重试(再次发送syn+ack给客户端)并等待一段时间后丢弃这个未完成的连接,这段时间的长度我们称为syn timeout,一般来说这个时间是分钟的数量级(大约为30秒-2分钟),如图3.2所示。一个用户出现异常导致服务器的一个线程等待1分钟并不是什么很大的问题,但如果有一个恶意的攻击者大量模拟这种情况,服务器端将为了维护一个非常大的半连接列表而消耗非常多的资源数以万计的半连接,即使是简单的保存并遍历也会消耗非常多的cpu时间和
20、内存,何况还要不断对这个列表中的ip进行syn+ack的重试。实际上如果服务器的tcp/ip栈不够强大,最后的结果往往是堆栈溢出崩溃即使服务器端的系统足够强大,服务器端也将忙于处理攻击者伪造的tcp连接请求而无暇理睬客户的正常请求(毕竟客户端的正常请求比率非常之小),此时从正常客户的角度看来,服务器失去响应,这种情况我们称做:服务器端受到了syn flood攻击(syn洪水攻击)。成千上万个syn的半连接存储在内存中,这时候被攻击机已经不能响应新的服务请求了,系统运行非常慢,也无法ping通。通常在攻击发起后几十秒钟左右就可以达到上述效果,由此可见ddos攻击的威力!第3章 部署ddos的防御
21、到目前为止,进行ddos攻击的防御还是比较困难的。首先,这种攻击的特点是它利用了tcp/ip协议的漏洞,除非你不用tcp/ip,才有可能完全抵御住ddos攻击。我这里给出一个比喻:ddos就好象有1,000个人同时给你家里打电话,这时候你的朋友还打得进来吗?不过即使它难于防范, 但还是有方法的。对付ddos是一个系统工程,想仅仅依靠某种系统或产品防住ddos是不现实的,可以肯定的是,完全杜绝ddos目前是不可能的,但通过适当的措施抵御90%的ddos攻击是可以做到的,基于攻击和防御都有成本开销的缘故,若通过适当的办法增强了抵御ddos的能力,也就意味着加大了攻击者的攻击成本,那么将迫使绝大多数
22、攻击者将无法继续下去而放弃,也就相当于成功的抵御了ddos攻击。3.1 针对ddos攻击主要预防为主保证安全ddos攻击黑客经常采用而难以防范的攻击手段,下面列出了对付它的一些常规方法。1. 定期扫描要定期扫描现有的网络主节点,清查可能存在的安全漏洞,对新出现的漏洞及时进行清理。骨干节点的计算机因为具有较高的带宽,是黑客利用的最佳位置,因此对这些主机本身加强主机安全是非常重要的。而且连接到网络主节点的都是服务器级别的计算机,所以定期扫描漏洞就变得更加重要了。2. 在骨干节点配置防火墙防火墙本身能抵御ddos攻击和其他一些攻击。在发现受到攻击的时候,可以将攻击导向一些牺牲主机,这样可以保护真正的
23、主机不被攻击。当然导向的这些牺牲主机可以选择不重要的,或者是linux以及unix等漏洞少和天生防范攻击优秀的系统。3. 用足够的机器承受黑客攻击这是一种较为理想的应对策略。如果用户拥有足够的容量和足够的资源给黑客攻击,在它不断访问用户、夺取用户资源之时,自己的能量也在逐渐耗失,或许未等用户被攻死,黑客已无力支招儿了。不过此方法需要投入的资金比较多,平时大多数设备处于空闲状态,和目前中小企业网络实际运行情况不相符。4. 充分利用网络设备保护网络资源 所谓网络设备是指路由器、防火墙等负载均衡设备,它们可将网络有效地保护起来。当网络被攻击时最先死掉的是路由器,但其他机器没有死。死掉的路由器经重启后
24、会恢复正常,而且启动起来还很快,没有什么损失。若其他服务器死掉,其中的数据会丢失,而且重启服务器又是一个漫长的过程。特别是一个公司使用了负载均衡设备,这样当一台路由器被攻击死机时,另一台将马上工作。从而最大程度的削减了ddos的攻击。5. 过滤不必要的服务和端口可以使用inexpress、express、forwarding等工具来过滤不必要的服务和端口,即在路由器上过滤假ip。比如cisco公司的cef(cisco express forwarding)可以针对封包source ip和routing table做比较,并加以过滤。只开放服务端口成为目前很多服务器的流行做法,例如www服务器那
25、么只开放80而将其他所有端口关闭或在防火墙上做阻止策略。6. 检查访问者的来源使用unicast reverse path forwarding等通过反向路由器查询的方法检查访问者的ip地址是否是真,如果是假的,它将予以屏蔽。许多黑客攻击常采用假ip地址方式迷惑用户,很难查出它来自何处。因此,利用unicast reverse path forwarding可减少假ip地址的出现,有助于提高网络安全性。7. 过滤所有rfc1918的ip地址 rfc1918的ip地址是内部网的ip地址,像、 和,它们不是某个网段的固定的ip地址,而是in
26、ternet内部保留的区域性ip地址,应该把它们过滤掉。此方法并不是过滤内部员工的访问,而是将攻击时伪造的大量虚假内部ip过滤,这样也可以减轻ddos的攻击。 8. 限制syn/icmp流量 用户应在路由器上配置syn/icmp的最大流量来限制syn/icmp封包所能占有的最高频宽,这样,当出现大量的超过所限定的syn/icmp流量时,说明不是正常的网络访问,而是有黑客入侵。早期通过限制syn/icmp流量是最好的防范dos的方法,虽然目前该方法对于ddos效果不太明显了,不过仍然能够起到一定的作用。3.2 找机会应对攻击如果用户正在遭受攻击,他所能做的抵御工作将是非常有限的。因为在原本没有准
27、备好的情况下有大流量的灾难性攻击冲向用户,很可能在用户还没回过神之际,网络已经瘫痪。但是,用户还是可以抓住机会寻求一线希望的。1. 检查攻击来源,通常黑客会通过很多假ip地址发起攻击,此时,用户若能够分辨出哪些是真ip哪些是假ip地址,然后了解这些ip来自哪些网段,再找网管理员将这些机器关闭,从而在第一时间消除攻击。如果发现这些ip地址是来自外面的而不是公司内部的ip的话,可以采取临时过滤的方法,将这些ip地址在服务器或路由器上过滤掉。2. 找出攻击者所经过的路由,把攻击屏蔽掉。若黑客从某些端口发动攻击,用户可把这些端口屏蔽掉,以阻止入侵。不过此方法对于公司网络出口只有一个,而又遭受到来自外部
28、的ddos攻击时不太奏效,毕竟将出口端口封闭后所有计算机都无法访问internet了。 3. 最后还有一种比较折中的方法是在路由器上滤掉icmp。虽然在攻击时他无法完全消除入侵,但是过滤掉icmp后可以有效的防止攻击规模的升级,也可以在一定程度上降低攻击的级别。3.3针对主机上的设置几乎所有的主机平台都有抵御dos的设置,总结一下,基本的有几种: 关闭不必要的服务; 限制同时打开的syn半连接数目; 缩短syn半连接的time out 时间; 及时更新系统补丁。3.4针对网络设备上的设置企业网的网络设备可以从防火墙与路由器上考虑。这两个设备是到外界的接口设备,在进行防ddos设置的同时,要注意一下这是以多大的效率牺牲为代价的,对你来说是否值得。1. 防火墙 禁止对主机的非开放服务的访问 限制同时打开的syn最大连接数 限制特定ip地址的访问 启用防火墙的防ddos的属性 严格限制对外开放的服务器的向外访问第五项主要是防止自己的服务器被当做工具去害人。2. 路由器 以cisco路由器为例 cisco express forwarding(cef) 使用 unicast reverse-path 访问控制列表(acl)过滤 设置syn数据包流量速率 升级版本过低的
温馨提示
- 1. 本站所有资源如无特殊说明,都需要本地电脑安装OFFICE2007和PDF阅读器。图纸软件为CAD,CAXA,PROE,UG,SolidWorks等.压缩文件请下载最新的WinRAR软件解压。
- 2. 本站的文档不包含任何第三方提供的附件图纸等,如果需要附件,请联系上传者。文件的所有权益归上传用户所有。
- 3. 本站RAR压缩包中若带图纸,网页内容里面会有图纸预览,若没有图纸预览就没有图纸。
- 4. 未经权益所有人同意不得将文件中的内容挪作商业或盈利用途。
- 5. 人人文库网仅提供信息存储空间,仅对用户上传内容的表现方式做保护处理,对用户上传分享的文档内容本身不做任何修改或编辑,并不能对任何下载内容负责。
- 6. 下载文件中如有侵权或不适当内容,请与我们联系,我们立即纠正。
- 7. 本站不保证下载资源的准确性、安全性和完整性, 同时也不承担用户因使用这些下载资源对自己和他人造成任何形式的伤害或损失。
评论
0/150
提交评论