塞门阀件验收标准:什么是Dos攻击?

来源:百度文库 编辑:杭州交通信息网 时间:2024/04/29 05:34:18
请具体说明谢谢!~
还有怎样防范?

什么是DoS攻击
那么,DoS到底是什么?接触PC机较早的同志会直接想到微软磁盘操作系统 的DOS--Disk Operation System?哦,不不不,我看盖茨可不像是黑客的老大哟!此DoS非彼DOS也,DoS即Denial Of Service,拒绝服务的缩写。DoS是指故意的攻击网络协议实现的缺陷或直接通过野蛮手段残忍地耗尽被攻击对象的资源,目的是让目标计算机或网络无法提供正常的服务或资源访问,使目标系统服务系统停止响应甚至崩溃,而在此攻击中并不包括侵入目标服务器或目标网络设备。这些服务资源包括网络带宽,文件系统空间容量,开放的进程或者允许的连接。这种攻击会导致资源的匮乏,无论计算机的处理速度多快、内存容量多大、网络带宽的速度多快都无法避免这种攻击带来的后果。要知道任何事物都有一个极限,所以总能找到一个方法使请求的值大于该极限值,因此就会故意导致所提供的服务资源匮乏,表面上好象是服务资源无法满足需求。所以千万不要自认为拥有了足够宽的带宽和足够快的服务器就有了一个不怕DoS攻击的高性能网站,拒绝服务攻击会使所有的资源变得非常渺小。
其实,我们作个形象的比喻来理解DoS。街头的餐馆是为大众提供餐饮服务,如果一群地痞流氓要DoS餐馆的话,手段会很多,比如霸占着餐桌不结账,堵住餐馆的大门不让路,骚扰餐馆的服务员或厨子不能干活,甚至更恶劣……相应的计算机和网络系统则是为Internet 用户提供互联网资源的,如果有黑客要进行DoS攻击的话,可以想象同样有好多手段!今天最常见的DoS攻击有对计算机网络的带宽攻击和连通性攻击。带宽攻击指以极大的通信量冲击网络,使得所有可用网络资源都被消耗殆尽,最后导致合法的用户请求无法通过。连通性攻击指用大量的连接请求冲击计算机,使得所有可用的操作系统资源都被消耗殆尽,最终计算机无法再处理合法用户的请求。 什么是DDoS

传统上,攻击者所面临的主要问题是网络带宽,由于较小的网络规模和较慢的网络速度的限制,攻击者无法发出过多的请求。虽然类似"the ping of death"的攻击类型只需要较少量的包就可以摧毁一个没有打过补丁的UNIX系统,但大多数的DoS攻击还是需要相当大的带宽的,而以个人为单位的黑客们很难使用高带宽的资源。为了克服这个缺点,DoS攻击者开发了分布式的攻击。攻击者简单利用工具集合许多的网络带宽来同时对同一个目标发动大量的攻击请求,这就是DDoS攻击。
DDoS(Distributed Denial Of Service)又把DoS又向前发展了一大步,这种分布式拒绝服务攻击是黑客利用在已经侵入并已控制的不同的高带宽主机(可能是数百,甚至成千上万台)上安装大量的DoS服务程序,它们等待来自中央攻击控制中心的命令,中央攻击控制中心在适时启动全体受控主机的DoS服务进程,让它们对一个特定目标发送尽可能多的网络访问请求,形成一股DoS洪流冲击目标系统,猛烈的DoS攻击同一个网站。在寡不敌众的力量抗衡下,被攻击的目标网站会很快失去反应而不能及时处理正常的访问甚至系统瘫痪崩溃。可见DDoS与DoS的最大区别是人多力量大。DoS是一台机器攻击目标,DDoS是被中央攻击中心控制的很多台机器利用他们的高带宽攻击目标,可更容易地将目标网站攻下。另外,DDoS攻击方式较为自动化,攻击者可以把他的程序安装到网络中的多台机器上,所采用的这种攻击方式很难被攻击对象察觉,直到攻击者发下统一的攻击命令,这些机器才同时发起进攻。可以说DDoS攻击是由黑客集中控制发动的一组DoS攻击的集合,现在这种方式被认为是最有效的攻击形式,并且非常难以抵挡。
无论是DoS攻击还是DDoS攻击,简单的看,都只是一种破坏网络服务的黑客方式,虽然具体的实现方式千变万化,但都有一个共同点,就是其根本目的是使受害主机或网络无法及时接收并处理外界请求,或无法及时回应外界请求。其具体表现方式有以下几种:
1.制造大流量无用数据,造成通往被攻击主机的网络拥塞,使被攻击主机无法正常和外界通信。
2.利用被攻击主机提供服务或传输协议上处理重复连接的缺陷,反复高频的发出攻击性的重复服务请求,使被攻击主机无法及时处理其它正常的请求。
3.利用被攻击主机所提供服务程序或传输协议的本身实现缺陷,反复发送畸形的攻击数据引发系统错误的分配大量系统资源,使主机处于挂起状态甚至死机。

常见的DoS攻击

拒绝服务攻击是一种对网络危害巨大的恶意攻击。今天,DoS具有代表性的攻击手段包括Ping of Death、TearDrop、UDP flood 、SYN flood、Land Attack、IP Spoofing DoS等。我们看看它们又是怎么实现的。

死亡之 ping ( ping of death ) :ICMP (Internet Control Message Protocol,Internet控制信息协议)在Internet上用于错误处理和传递控制信息。它的功能之一是与主机联系,通过发送一个"回音请求"(echo request)信息包看看主机是否"活着"。最普通的ping程序就是这个功能。而在TCP/IP的RFC文档中对包的最大尺寸都有严格限制规定,许多操作系统的TCP/IP协议栈都规定ICMP 包大小为64KB,且在对包的标题头进行读取之后,要根据该标题头里包含的信息来为有效载荷生成缓冲区。"Ping of Death" 就是故意产生畸形的测试Ping(Packet Internet Groper)包,声称自己的尺寸超过 ICMP 上限,也就是加载的尺寸超过 64KB上限,使未采取保护措施的网络系统出现内存分配错误,导致 TCP/IP 协议栈崩溃,最终接收方荡机。

泪滴( teardrop ) :泪滴攻击利用在 TCP/IP 协议栈实现中信任IP 碎片中的包的标题头所包含的信息来实现自己的攻击。IP 分段含有指示该分段所包含的是原包的哪一段的信息,某些 TCP/IP协议栈(例如NT 在service pack 4 以前)在收到含有重叠偏移的伪造分段时将崩溃。 UDP 洪水 (UDP flood) :如今在Internet上UDP(用户数据包协议)的应用比较广泛,很多提供WWW和Mail等服务设备通常是使用Unix的服务器,它们默认打开一些被黑客恶意利用的UDP服务。如echo服务会显示接收到的每一个数据包,而原本作为测试功能的chargen服务会在收到每一个数据包时随机反馈一些字符。UDP flood假冒攻击就是利用这两个简单的 TCP/IP 服务的漏洞进行恶意攻击,通过伪造与某一主机的 Chargen 服务之间的一次的 UDP 连接,回复地址指向开着Echo 服务的一台主机,通过将Chargen 和 Echo服务互指,来回传送毫无用处且占满带宽的垃圾数据,在两台主机之间生成足够多的无用数据流,这一拒绝服务攻击飞快地导致网络可用带宽耗尽。 SYN 洪水 ( SYN flood ) :我们知道当用户进行一次标准的TCP(Transmission Control Protocol)连接时,会有一个3次握手过程。首先是请求服务方发送一个SYN(Synchronize Sequence Number)消息,服务方收到SYN后,会向请求方回送一个SYN-ACK表示确认,当请求方收到SYN-ACK后,再次向服务方发送一个ACK消息,这样一次TCP连接建立成功。"SYN Flooding"则专门针对TCP协议栈在两台主机间初始化连接握手的过程进行DoS攻击,其在实现过程中只进行前2个步骤:当服务方收到请求方的SYN-ACK确认消息后,请求方由于采用源地址欺骗等手段使得服务方收不到ACK回应,于是服务方会在一定时间处于等待接收请求方ACK消息的状态。而对于某台服务器来说,可用的TCP连接是有限的,因为他们只有有限的内存缓冲区用于创建连接,如果这一缓冲区充满了虚假连接的初始信息,该服务器就会对接下来的连接停止响应,直至缓冲区里的连接企图超时。如果恶意攻击方快速连续地发送此类连接请求,该服务器可用的TCP连接队列将很快被阻塞,系统可用资源急剧减少,网络可用带宽迅速缩小,长此下去,除了少数幸运用户的请求可以插在大量虚假请求间得到应答外,服务器将无法向用户提供正常的合法服务。

Land (Land Attack)攻击:在 Land 攻击中,黑客利用一个特别打造的SYN 包--它的原地址和目标地址都被设置成某一个服务器地址进行攻击。此举将导致接受服务器向它自己的地址发送 SYN-ACK 消息,结果这个地址又发回 ACK 消息并创建一个空连接,每一个这样的连接都将保留直到超时,在 Land 攻击下,许多 UNIX将崩溃,NT 变得极其缓慢(大约持续五分钟)。

IP欺骗DOS攻击:这种攻击利用TCP协议栈的RST位来实现,使用IP欺骗,迫使服务器把合法用户的连接复位,影响合法用户的连接。假设现在有一个合法用户(100.100.100.100)已经同服务器建立了正常的连接,攻击者构造攻击的TCP数据,伪装自己的IP为100.100.100.100,并向服务器发送一个带有RST位的TCP数据段。服务器接收到这样的数据后,认为从100.100.100.100发送的连接有错误,就会清空缓冲区中已建立好的连接。这时,合法用户100.100.100.100再发送合法数据,服务器就已经没有这样的连接了,该用户就被拒绝服务而只能重新开始建立新的连接。

常见的DDoS攻击

smurf、Fraggle 攻击、Trinoo、Tribe Flood Network(TFN)、TFN2k以及Stacheldraht是比较常见的DDoS攻击程序,我们再看看它们的原理,其攻击思路基本相近。 Smurf 攻击:Smurf是一种简单但有效的 DDoS 攻击技术,Smurf还是利用ping程序进行源IP假冒的直接广播进行攻击。在Internet上广播信息可以通过一定的手段(通过广播地址或其他机制)发送到整个网络中的机器。当某台机器使用广播地址发送一个ICMP echo请求包时(例如Ping),一些系统会回应一个ICMP echo回应包,这样发送一个包会收到许多的响应包。Smurf攻击就是使用这个原理来进行的,同时它还需要一个假冒的源地址。也就是说Smurf在网络中发送的源地址为要攻击的主机地址,目的地址为广播地址的ICMP echo请求包,使许多的系统同时响应并发送大量的信息给被攻击主机(因为他的地址被攻击者假冒了)。Smurf是用一个伪造的源地址连续ping一个或多个计算机网络,这就导致所有计算机响应的那个主机地址并不是实际发送这个信息包的攻击计算机。这个伪造的源地址,实际上就是攻击的目标,它将被极大数量的响应信息量所淹没。对这个伪造信息包做出响应的计算机网络就成为攻击的不知情的同谋。一个简单的 smurf 攻击最终导致网络阻塞和第三方崩溃,这种攻击方式要比 ping of death 洪水的流量高出一两个数量级。这种使用网络发送一个包而引出大量回应的方式也被叫做Smurf"放大"。

Fraggle 攻击:Fraggle 攻击对 Smurf 攻击作了简单的修改,使用的是 UDP 应答消息而非 ICMP。

"trinoo"攻击:trinoo 是复杂的 DDoS 攻击程序,是基于UDP flood的攻击软件。它使用"master"程序对实际实施攻击的任何数量的"代理"程序实现自动控制。当然在攻击之前,侵入者为了安装软件,已经控制了装有master程序的计算机和所有装有代理程序的计算机。攻击者连接到安装了master程序的计算机,启动master程序,然后根据一个IP地址的列表,由master程序负责启动所有的代理程序。接着,代理程序用UDP 信息包冲击网络,向被攻击目标主机的随机端口发出全零的4字节UDP包,在处理这些超出其处理能力垃圾数据包的过程中,被攻击主机的网络性能不断下降,直到不能提供正常服务,乃至崩溃。它对IP地址不做假,因此此攻击方法用得不多。

"Tribal Flood Network"和 "TFN2K" 攻击:Tribe Flood Network与trinoo一样,使用一个master程序与位于多个网络上的攻击代理进行通讯,利用ICMP给代理服务器下命令,其来源可以做假。TFN可以并行发动数不胜数的DoS攻击,类型多种多样,而且还可建立带有伪装源IP地址的信息包。 可以由TFN发动的攻击包括:SYN flood、UDP flood、ICMP回音请求flood及Smurf(利用多台服务器发出海量数据包,实施DoS攻击)等攻击。TFN的升级版TFN2k进一步对命令数据包加密,更难查询命令内容,命令来源可以做假,还有一个后门控制代理服务器。

"stacheldraht"攻击:Stacheldraht也是基于TFN和trinoo一样的客户机/服务器模式,其中Master程序与潜在的成千个代理程序进行通讯。在发动攻击时,侵入者与master程序进行连接。Stacheldraht增加了新的功能:攻击者与master程序之间的通讯是加密的,对命令来源做假,而且可以防范一些路由器用RFC2267过滤,若检查出有过滤现象,它将只做假IP地址最后8位,从而让用户无法了解到底是哪几个网段的哪台机器被攻击;同时使用rcp (remote copy,远程复制)技术对代理程序进行自动更新。Stacheldraht 同TFN一样,可以并行发动数不胜数的DoS攻击,类型多种多样,而且还可建立带有伪装源IP地址的信息包。Stacheldraht所发动的攻击包括UDP 冲击、TCP SYN 冲击、ICMP 回音应答冲击。

如何防止DoS/DdoS攻击

DoS攻击几乎是从互联网络的诞生以来,就伴随着互联网络的发展而一直存在也不断发展和升级。值得一提的是,要找DoS的工具一点不难,黑客群居的网络社区都有共享黑客软件的传统,并会在一起交流攻击的心得经验,你可以很轻松的从Internet上获得这些工具,像以上提到的这些DoS攻击软件都是可以从网上随意找到的公开软件。所以任何一个上网者都可能构成网络安全的潜在威胁。DoS攻击给飞速发展的互联网络安全带来重大的威胁。然而从某种程度上可以说,DoS攻击永远不会消失而且从技术上目前没有根本的解决办法。
面对凶多吉少的DoS险滩,我们该如何对付随时出现的黑客攻击呢?让我们首先对造成DoS攻击威胁的技术问题做一下总结。DoS攻击可以说是如下原因造成的:
1.软件弱点是包含在操作系统或应用程序中与安全相关的系统缺陷,这些缺陷大多是由于错误的程序编制,粗心的源代码审核,无心的副效应或一些不适当的绑定所造成的。由于使用的软件几乎完全依赖于开发商,所以对于由软件引起的漏洞只能依*打补丁,安装hot fixes和Service packs来弥补。当某个应用程序被发现有漏洞存在,开发商会立即发布一个更新的版本来修正这个漏洞。由于开发协议固有的缺陷导致的DoS攻击,可以通过简单的补丁来弥补系统缺陷。
2.错误配置也会成为系统的安全隐患。这些错误配置通常发生在硬件装置,系统或者应用程序中,大多是由于一些没经验的,无责任员工或者错误的理论所导致的。如果对网络中的路由器,防火墙,交换机以及其他网络连接设备都进行正确的配置会减小这些错误发生的可能性。如果发现了这种漏洞应当请教专业的技术人员来修理这些问题。
3.重复请求导致过载的拒绝服务攻击。当对资源的重复请求大大超过资源的支付能力时就会造成拒绝服务攻击(例如,对已经满载的Web服务器进行过多的请求使其过载)。
要避免系统免受DoS攻击,从前两点来看,网络管理员要积极谨慎地维护系统,确保无安全隐患和漏洞;而针对第三点的恶意攻击方式则需要安装防火墙等安全设备过滤DoS攻击,同时强烈建议网络管理员应当定期查看安全设备的日志,及时发现对系统的安全威胁行为。
3Com公司是一个全面的企业网络解决方案提供商,旨在为企业用户提供"丰富、简单、灵活、可*而高性能价格比"的网络解决方案。Internet支持工具就是其中的主要解决方案之一,包括SuperStack 3 Firewall、Web Cache以及Server Load Balancer。不但作为安全网关设备的3Com SuperStack 3 防火墙在缺省预配置下可探测和防止"拒绝服务"(DoS)以及"分布式拒绝服务"(DDoS)等黑客侵袭,强有力的保护您的网络,使您免遭未经授权访问和其他来自Internet的外部威胁和侵袭;而且3Com SuperStack 3 Server Load Balancer在为多服务器提供硬件线速的4-7层负载均衡的同时,还能保护所有服务器免受"拒绝服务"(DoS)攻击;同样3Com SuperStack 3 Web Cache在为企业提供高效的本地缓存的同时,也能保证自身免受"拒绝服务"(DoS)攻击

http://sky.mimi.com.cn/7sky/dispbbs.asp?boardid=28&id=15952

什么是DOS攻击
??
??DOS:即Denial Of Service,拒绝服务的缩写,可不能认为是微软的dos操作系统了。好象在5?1的时候闹过这样的笑话。拒绝服务,就相当于必胜客在客满的时候不再让人进去一样,呵呵,你想吃馅饼,就必须在门口等吧。DOS攻击即攻击者想办法让目标机器停止提供服务或资源访问,这些资源包括磁盘空间、内存、进程甚至网络带宽,从而阻止正常用户的访问。比如:
??
??* 试图FLOOD服务器,阻止合法的网络通讯
??
??* 破坏两个机器间的连接,阻止访问服务
??
??* 阻止特殊用户访问服务
??
??* 破坏服务器的服务或者导致服务器死机
??
??不过,只有那些比较阴险的攻击者才单独使用DOS攻击,破坏服务器。通常,DOS攻击会被作为一次入侵的一部分,比如,绕过入侵检测系统的时候,通常从用大量的攻击出发,导致入侵检测系统日志过多或者反应迟钝,这样,入侵者就可以在潮水般的攻击中混骗过入侵检测系统。
??
??有关TCP协议的东西
??
??TCP(transmission control protocol,传输控制协议),是用来在不可靠的因特网上提供可靠的、端到端的字节流通讯协议,在RFC793中有正式定义,还有一些解决错误的东西在RFC 1122中有记录,RFC 1323
??
??则有TCP的功能扩展。
??
??我们常见到的TCP/IP协议中,IP层不保证将数据报正确传送到目的地,TCP则从本地机器接受用户的数据流,将其分成不超过64K字节的数据片段,将每个数据片段作为单独的IP数据包发送出去,最后在目的地机器中再组合成完整的字节流,TCP协议必须保证可靠性。
??
??发送和接收方的TCP传输以数据段的形式交换数据,一个数据段包括一个固定的20字节头,加上可选部分,后面再跟上数据,TCP协议从发送方传送一个数据段的时候,还要启动计时器,当数据段到达目的地后,接收方还要发送回一个数据段,其中有一个确认序号,它等于希望收到的下一个数据段的顺序号,如果计时器在确认信息到达前超时了,发送方会重新发送这个数据段。

所谓拒绝服务攻击就是大家常说的DDOS,这种攻击是所有入侵者的最后杀手锏,明枪一挡,暗剑难防,几乎所有的网站都无法有效的防范此类的攻击。
? 举个例子,任何一个网站都会有它提供的服务,然而这个服务就是突破点,非法入侵者可以利用服务来耗费系统资源,这种类型通常是攻击者通过对拥有一定系统访问权的系统进行资源耗费,比如说cpu利用率,内存等等。这样一来,就回造成系统的崩溃或文件进程被挂起等原因而导致系统不可使用。其二是耗费带宽,就是用更宽的带宽对相对窄带的网络用户进行淹没或通过动用大量无辜的网络上的计算机来放大他的攻击效果,从而达到窄带攻击宽带的效果。
? 我们首先看看最简单的ping, ping是一个很普遍的DOS命令,在这个时刻也成了武器。原理很简单,就是你利用ping 命令向目标主机大量的ICMP Echo请求,从而导致对方内存分配错误,造成tcp/ip堆栈崩溃,致使对方当机。这种已经的很古老的方法了,而且效果也不是很好,所以不多作介绍。
? 现在DDOS最普遍的是运用syn flood(syn淹没),先讲一下原理:比如向服务器发送一个请求,服务器接收了以后并处理了,我又发送了一个请求,服务器接收了以后并处理了之后我又发送了一个请求,如此反复,相信服务器的任务会变得很繁重,而且他也没有时间来接受其他正常用户的请求。事情发生在tcp/ip协议的three-way-hand-shake中。我不停的发出syn封包,但我却得不到服务器回应的syn/ack封包的话,服务器那边很快就会无法正常运做了。这就是所谓的syn flood.作为一个服务器,会向每个连接请求分配一段内存来处理连线时的各种信息。如果超过一定时间还不能建立,内存就被释放。但是如果不断有syn封包,服务器就会不断分配内存,当内存耗尽,服务器当机。
? 另外还有smurf定向广播放大攻击,它的可怕之处就是往一个网络上的多个系统发送定向的的ping请求,这些系统则对各种请求作出响应的结果。且定向广播是不用逐个ping一个子网内的每个地址就能检查有那些地址是存在的。Sumrf利用了定向广播,通过放大网络发送伪造的icmp来请求回射分组。如果攻击者利用拥有100个会对广播ping作出响应的放大网络发送单个icmp分组,那么它就把这个Dos攻击放大了100倍,结果可想而知,这是比较高级的DDOS攻击方法。
? 总的来说,Ddos的原理就是攻击者利用在客户端的大量攻击源同时向目标主机发动攻击。具体的说就是攻击者要先尽可能多的控制网络上的计算机。然后再在这些主机上面运行特定的程序,最后再用这些主机去 攻击目标。这就是说成功的DDos对攻击的入侵能力也是一种考验,要不去哪找这么多主机啊。
?? 还有最近流行的DDOS攻击方法--反映射DDOS。
?? 反映射攻击跟其他传统的DDOS攻击一样,需要控制一些肉鸡来发动攻击。但是它不需要完全控制电脑。通俗的说任何一台WEB服务器都是肉鸡。
?? 为什么呢?因为当我们给一台WEB服务器提交请求的时候,WEB服务器也会发一个返回信息到你的电脑。所以要用反映射DDOS就很容易了。伪装成要DDOS的电脑的IP给成千上万台WEB服务器发送请求,后果你们知道。这种攻击在LINUX上更容易实现。

DoS攻击 和防御
http://www.yesky.com/searchsecurity/505532403951861760/20050205/1909923.shtml

http://www.51cto.com/html/2005/1123/11829.htm