关于冰盾 | 使用条款 | 网站地图
 
网络攻击的行为特征和防御方法
网络攻击的行为特征和防御方法
作者:冰盾防火墙 网站:www.bingdun.com 日期:2014-12-12
 
网络攻击是一种主动式攻击威胁,其安全威胁是最高的,因为这些实施网络攻击的黑客们通常是有明确目的的,一旦攻击成功,就可能给公司带来巨大的损失。在本章1.2.4节已介绍到了网络攻击的一些主要类型,本节要具体介绍这些网络攻击的行为特征和基本防御方法。

1.1 拒绝服务攻击行为特征和防御方法

拒绝服务(Denial of Service,DoS)攻击是最常见的一种网络攻击。目前已知的拒绝服务攻击就有几百种,它是最基本的网络攻击手段,也是最难对付的网络攻击之一。
DoS攻击的目的是使计算机或网络无法提供正常的服务。最常见的DoS攻击有汁算机网络带宽攻击和连通性攻击。带宽攻击指以极大的通信量冲击网络,使得所有可用网络资源都被消耗殆尽,最后导致合法的用户请求无法通过。连通性攻击指用大量的连接请求冲击计算机,使得所有可用的操作系统资源都被消耗殆尽,最终计算机无法再处理合法用户的请求。在这一攻击原理下,针对所攻击的服务或协议的不同,它又有许多种不同的攻击方式。正确了解这些不同的拒绝攻击方式,就可以正确、系统地为自己所在企业部署完善的安全防护系统。在此,我们仅针对几种典型的拒绝服务攻击原理进行简要分析,并给出基本的防御策略。但是要注意,

就目前来说,对于拒绝服务攻击,并没有特别有效的预防方法,所以DoS攻击尤其是DDoS攻击成为了黑客们经常使用的攻击手段之一。部署防火墙和**检测系统可以起到一定的预防作用。

1.TCP SYN洪水(TCP SYN Flood)攻击
TCP SYN洪水攻击是整个拒绝服务攻击中被黑客们应用最广、最容易实现的一类拒绝服务攻击。它的攻击原理就是TCP/IP栈只能等待有限数量的ACK(应答)消息,因为每台计算机用于创建TCP/IP连接的内存缓冲区都是非常有限的。如果这一缓冲区充满了等待响应的初始信息,则该计算机就会对接下来的连接停止响应,直到缓冲区里的连接超时。TCP SYN洪水攻击利用了这一系统漏洞来实施攻击。要明白TCP SYN洪水攻击的具体过程得先明白TCP协议连接建立的三次握手过程。
TCP SYN拒绝服务攻击原理其实也就是TCP连接的三次握手过程。我们知道,一个TCP
连接的建立需要经过三次握手,即:
(1)建立发起者向目标计算机发送一个TCP SYN报文。
(2)目标计算机收到这个SYN报文后,在内存中创建TCP连接控制块(TCB),然后向发
起者回送一个TCP ACK报文,等待发起者的回应。
(3)发起者收到TCP ACK报文后,再回应一个ACK报文。
通过以上3个简单的步骤就把一个TCP连接建立起来了。但黑客也正是利用了这一连接原理的不足而实施攻击的。攻击的过程与TCP连接的三次握手过程基本一样,只是在最后一步发起者收到TCP ACK报文后不向目标计算机回应ACK报文,这样导致目标计算机一直处于等待状态。由此可以看出,目标计算机如果接收到大量的TCP SYN报文,而没有收到发起者的ACK回应,会一直等待,处于这样尴尬状态的半连接如果很多,则会把日标计算机的资源(TCB控制结构,TCB,一般情况下是有限的)耗尽,而不能响应正常的TCP连接请求。
攻击者在实施TCP SYN洪水攻击时,首先利用伪造的IP地址向目标发出多个连接(SY-N)
请求,目标系统在接收到请求后发送确认信息,并等待回答。由于黑客们发送请示的IP地址是伪造的,所以确认信息不会到达任何汁算机,当然也就不会有任何计算机为此确认信息作出应答了。而在没有接收到应答之前,目标计算机系统是不会主动放弃连接的,会继续在缓冲区中保持相应连接信息。当达到一定数量的等待连接后,缓区部内存资源耗尽,从而开始拒绝接收任何其他连接请求,当然也包括本来属于正常应用的请求,这就是黑客们的最终目的。
防御TCP SYN洪水攻击的基本方法:在防火墙上过滤来自同一主机的后续连接。防火墙
具体抵御TCP SYN洪水攻击的方法将在本书的第3章中详细介绍。
2.ICMP与UDP洪水攻击
正常情况下,为了对网络进行诊断,一些诊断程序,比如PING等,会发出ICMP响应请
求报文(ICMP ECHO),接收计算机接收到ICMP ECHO后,会回应一个ICMP ECHO Reply报
文。而这个过程是需要CPU处理的,有的情况下还可能消耗掉大量的资源,比如处理分片的
时候。这样如果攻击者向目标计算机发送大量的ICMP ECHO报文f产生ICMP洪水),则目标
计算机会忙于处理这些ECHO报文,而无法继续处理其他的网络数据报文,这就是ICMP洪水
攻击,也是一种拒绝服务攻击(DOS)。
UDP洪水攻击原理与ICMP洪水类似,攻击者通过发送大量的UDP报文给目标计算机,
导致目标计算机忙于处理这些UDP报文而无法继续处理正常的报文。
防御ICMP与UDP洪水攻击的基本方法:关掉不必要的TCP/IP服务,或者对防火墙进行配置阻断来自Intemet的请求这些服务的ICMP和UDP请求。

3.死亡之Ping(Ping 0f death)攻击
在早期,路由器对包的大小是有**的,许多操作系统TCP/IP栈规定ICMP包的大小**在64KB以内。在对ICMP数据包的标题头进行读取之后,是根据该标题头里包含的信息来为有效载荷生成缓冲区。当ICMP包大小超过64KB,就会出现内存分配错误,导致TCP/IP堆栈崩溃,从而使接受方计算机宕机。这就是这种“死亡之Ping”攻击的原理所在。根据这一攻击原理,黑客们只需不断地通过Ping命令向攻击目标发送超过64KB的数据包,就可使目标计算机的TCP/IP堆栈崩溃,致使接收方宕机。
防御死亡之Ping攻击的基本方法:现在所有的标准TCP/IP协议都已具有对付超过64KB大小数据包的处理能力,并且大多数防火墙能够通过对数据包中的信息和时间间隔的分析,自动过滤这些攻击。Windows 98、Windows NT 4.0(SP3之后1、Windows 2000/XP/Server 2003、Linux、Solaris和Mac OS等系统都已具有抵抗一般“Ping of death”拒绝服务攻击的能力。此外,对防火墙进行配置,阻断ICMP以及任何未知协议数据包,都可以防止此类攻击发生。

4.分片IP报文攻击
IP分片是在网络上传输lP报文时常采用的一种技术手段,但是其中存在一些安全隐患。
最近,一些IP分片攻击除了用于进行拒绝服务攻击之外,还经常作为躲避防火墙或者网络**检测系统的一种手段。部分路由器或者基于网络的**检测系统fNIDS),由于IP分片重组能力的欠缺,导致无法进行正常的过滤或者检测。
为了传送一个大的IP报文,lP协议栈需要根据链路接口的MTU对该IP报文进行分片,
通过填充适当的IP头中的分片指示字段,接收计算机可以很容易地把这些IP分片报文组装起来。目标计算机在处理这些分片报文的时候,会把先到的分片报文缓存起来,然后一直等待后续的分片报文,这个过程会消耗掉一部分内存,以及一些IP协议栈的数据结构。如果攻击者给目标计算机只发送一片分片报文,而不发送所有的分片报文,这样攻击者计算机便会一直等待(直到一个内部计时器到时),如果攻击者发送了大量的分片报文,就会消耗掉目标讨‘算机的资源,而导致不能处理正常的IP报文,这也是一种DoS攻击。
防御分片IP报文攻击的基本方法:对于这种攻击方式,目前还没有一种十分有效的防御方法。一些包过滤设备或者**检测系统来说,首先通过判断目的端口号来采取允许/禁止措施。但是由于通过恶意分片使目的端口号位于第二个分片中,因此包过滤设备通过判断第一个分片,决定后续的分片是否允许通过。但是这些分片在目标主机上进行重组之后将形成各种攻击。通过这种方法可以迂回一些**检测系统及一些安全过滤系统。当然,目前一些智能的包过滤设备可直接丢掉报头中未包含端口信息的分片,但这样的设备目前价格比较昂贵,不是每个企业能承受得起的。

5.泪滴(teardrop)攻击
对于一些大的IP数据包,往往需要对其进行拆分传送,这是为了迎合链路层的MTU(最大传输单元)的要求。比如,一个6000字节的IP包,在MTU为2000字节的链路上传输时,就需要分成3个IP包。


  • 2楼
  • 2011-08-29 14:25
在IP报头中有一个偏移字段和一个拆分标志(MF)。如果MF标志设置为1,则表明这个IP包是一个大IP包的片断,其中偏移字段指出了这个片断在整个IP包中的位置。例如,对一个6000字节的IP包进行拆分(MTU为2000),则3个片断中偏移字段的值依次为:0、2000、4000。这样接收端在全部接收完IP数据包后,就可以根据这些信息重新组装这几个分次接收的拆分IP包。在这里就出现了一个安全漏洞,就是如果黑客们在截取IP数据包后,把偏移字段设置成不正确的值,这样接收端在收到这些分拆的数据包后就不能按数据包中的偏移字段值正确重组这些拆分的数据包,但接收端会不断尝试,这样就可能致使日标计算机操作系统因资源耗尽而崩溃。
泪滴攻击通过修改在TCP/IP堆栈实现中信任IP碎片中的包的标题头所包含的信息来实现。IP分段含有指示该分段所包含的是原包的哪一段信息,某些操作系统(如SP4以前的Windows NT 4.0)的TCP/IP在收到含有重叠偏移的伪造分段时将崩溃,不过新的操作系统已基本上能自己抵御这种攻击了。
防御泪滴攻击的基本方法:尽可能采用最新的操作系统,或者在防火墙上设置分段重组功能,由防火墙先接收到同一原包中的所有拆分数据包,然后完成重组工作,而不是直接转发。因为防火墙上可以设置当出现重叠字段时所采取的规则。

6.Land攻击
Land攻击与TCP SYN洪水攻击类似,也是利用了TCP连接建立的三次握手过程,通过向一个目标计算机发送一个TCP SYN报文(连接建立请求报文)而完成对目标计算机的攻击。与TCP SYN洪水攻击的方法不同的是,这里并不是不给ACK响应,而是给被攻击方发送一个源IP地址和目的lP地址相同的假TCP SYN报文,都是目标计‘算机的IP地址。这样目标计算机接收到这个SYN报文后,就会向该报文的源地址发送一个ACK报文,并建立一个TCP连接控制结构(TCB),而该报文的源地址就是自己,因此,这个ACK报文就发给了自己。这样如果攻击者发送了足够多的SYN报文,则目标计算机的TCB可能会耗尽,最终不能正常提供服务。这也是一种DoS攻击。
防御Land攻击的基本方法:这类攻击的检测方法相对来说比较容易,因为可以直接从判断网络数据包的源地址和目标地址是否相同得出是否属于攻击行为。**击的方法当然是适当地配置防火墙设备或包过滤路由器的包过滤规则,过滤掉那些源地址与目标地址一样的包,从而可以有效地分析并跟踪攻击来源。

7.Smuff攻击
这是一种由有趣的**人物而得名的拒绝服务攻击。Smurf攻击利用的是多数路由器具有的同时向许多计算机广播请求的功能。ICMP ECHO请求包用来对网络进行诊断,当一台计算机接收到这样一个报文后,会向报文的源地址回应一个ICMP ECHO REPLY。一般情况下,计算机是不检查该ECHO请求的源地址的。攻击者伪造一个合法的IP地址,然后由网络上所有的路由器广播要求受攻击计算机做出回答的请求。由于这些数据包表面上看是来自己知地址的合法请求,因此网络中的所有系统向这个地址做出回答,最终结果可导致该网络的所有主机都对此ICMP应答请求作出答复,导致网络阻塞,这也就达到了黑客们的目的了。这种Smurf攻击比前面介绍的Ping ofDeath洪水攻击的流量高出一至两个数量级,更容易攻击成功。还有些新型的Smurf攻击,将源地址改为第三方的受害者(不再采用伪装的IP地址),最终导致第三方雪崩。
除了把ECHO报文的源地址设置为广播地址外,攻击者还可能把源地址设置为一个子网广播地址,这样,该子网内的计算机就可能受影响。
防御Smurf攻击的基本方法:关闭外部路由器或防火墙的广播地址特性,并在防火墙上设置规则,丢弃掉ICMP协议类型数据包。

8.Fraggle攻击
Fraggle攻击只是对Smurf攻击作了简单的修改,使用的是UDP协议应答消息,而不再是ICMP协议了(冈为黑客们清楚UDP协议更加不易被用户全部禁止)。同时Fraggle攻击使用了特定的端口(通常为7号端口,但也有许多使用其他端口实施Fraggle攻击的),攻击方式与Smurf攻击基本类似,这里不再赘述。
防御Fraggle攻击的基本方法:关闭外部路由器或防火墙的广播地址特性。在防火墙上过滤掉UDP报文,或者屏蔽掉一些常被黑客们用来进行Fraggle攻击的端口。
 

 
最新内容:
什么是udpdns[2014-12-12]
DDoS前世今生 攻击原理与防御方法解析[2014-12-12]
DDoS来了网站该如何抵御[2014-12-12]
谨防浏览网页硬盘被共享[2014-12-12]
黑客经验谈系列之入侵3389起源完整编[2014-12-12]
经典总结:各个网络端口的入侵方法[2014-12-12]
相关内容:

合作伙伴: 黑基网 补天科技 威盾科技 站长下载 新飞金信 北京电信 ZOL应用下载
中华人民共和国增值电信业务经营许可证京ICP备14024464 公安备案号 京1081234 
版权所有©2003-2016 冰盾防火墙  www.BingDun.com 法律声明
服务热线:(010)51661195