您好,欢迎来到抵帆知识网。
搜索
您的当前位置:首页DDOS攻击类型和防护

DDOS攻击类型和防护

来源:抵帆知识网
DDOS各类攻击和防患

DDoS攻击类型

1 基于IcMP协议的DDoS攻击

IcMP协议用于错误处理和传递控制信息,它的主要功能是用于主机之间的联络。它通过发送一个“回复请求”(echo request)信息包请求主机响应,以判断与主机之间的连接是否正常。大多数系统将TcP/IP协议簇中的ICMP的数据报的数量规定为k字节左右,例如Windows2000系统规定的最大值是65527字节,当数据报的数釜超过最大值时,系统将会产生内存分配错误。

攻击者可以利用系统的这个漏洞,伪造目标主机的IP地址向局域网内主机发布广播分组,当局域网内的主机接受到广播分组后,都会向目标主机发送echo响应信息包,而目标主机在处理ICMP时将会被大量的信息包淹没。 这种攻击可以摧毁目标服务器,阻塞目标网络,致使合法用户无法登录网络。ping洪水攻击软件和smurf攻击软件就是典型基于IcMP协议的攻击软件。

2 基于UDP协议的DDoS攻击

uDP协议是用来定义在网络环境中提供数据包交换的计算机通信协议,处在TCP/IP协议中IP(网络)层的上层。它为用户程序之间的信息传输提供了简便的协议机制,但不提供提交和复制的保护功能。

UDP模块必须能够决定源主机和目标主机的网络地址,而且必须能够从报头中获得所使用的协议类型。可能的方式就是返回整个数据报,包括接收操作返回的数据报头,还应该允许UDP向IP传送带完整报头的数据报用于IP传送,由IP来确定数据的一致性和计算校验码。

由于uDP不会脸证其发送的数据报是否被正确接收就会发送新的数据报,因此,就可以伪造大量的数据报用于攻击目标主机。UDPnooder是基于该协议的攻击软件。

3 基于TcP协议的DDoS攻击

TCP与UDP不同,它是基于连接的协议。TCP协议要求在传送数据前必须在服务器与客户机之间建立连接。而建立代P连接必须经过“三次握手”,即:

第一次:客户机发送带灯N的连接请求。sYN(Synchronize)是同步的意思,同步连接将指出客户建立连接使用的端口号和TcP连接的初始序号。

第二次:服务器在接收到sYN报文后,将响应一个SYN+ACK(Acknowledgement)的报文,表示接受请求,同时TCP序号加1。

第三次:客户端接收到服务器的确认信息后,同样返回一个ACK报文给服务器,同样TcP序号加1,至此,TCP连接建立。

而在建立TCP连接的过程中,如果在第二次握手以后,由于客户端或网路出现故障以及其它原因,致使服务器没有接收到来自客户端的第三次握手信息,服务器

一般会重新发送SYN+ACK报文给客户端,并在等待一段时间后丢弃这个没有建立连接的请求。

值得注意的是:服务器的用于等待来自客户机的ACK信息包的TCP/IP堆栈是有限的,如果缓冲区被等待队列充满,它将拒绝下一个连接请求。

那么,攻击者就可以利用这个漏洞,在瞬间伪造大量的SYN数据报,而又不回复服务器的sYN+AcK信息包,就可实现攻击企图。

这类攻击软件有SYNn flood攻击软件等。此外,还有利用应用程序的漏洞实施的拒绝服务攻击,如 Telnet漏洞等。

参考文献:《DoS和DDoS攻击的实现原理及防范研究》。王春水, 刘航 DDoS 攻击主要种类

受害主机在 DDoS 攻击下,明显特征就是大量的不明数据报文流向受害主机,受害主机的网络接入带宽被耗尽,或者受害主机的系统资源(存储资源和计算资源)被大量占用,甚至发生死机。前者可称为带宽消耗攻击,后者称为系统资源消耗攻击。两者可能单独发生,也可能同时发生。

1 带宽消耗攻击

DDoS带宽消耗攻击主要为直接洪流攻击。 直接洪流攻击采取了简单自然的攻击方式,它利用了攻击方的资源优势,当大量代理发出的攻击流汇聚于目标时,足以耗尽其 Internet 接入带宽。通常用于发送的攻击报文类型有:TCP报文(可含TCP SYN报文),UDP报文,ICMP报文,三者可以单独使用,也可同时使用。

1.1 TCP洪流攻击

在早期的DoS攻击中,攻击者只发送TCP SYN报文,以消耗目标的系统资源。而在 DDoS 攻击中,由于攻击者拥有更多的攻击资源,所以攻击者在大量发送TCP SYN报文的同时,还发送ACK, FIN, RST报文以及其他 TCP 普通数据报文,这称为 TCP 洪流攻击。该攻击在消耗系统资源(主要由 SYN,RST 报文导致)的同时,还能拥塞受害者的网络接入带宽。由于TCP协议为TCP/IP协议中的基础协议,是许多重要应用层服务(如WEB 服务,FTP 服务等)的基础,所以TCP洪流攻击能对服务器的服务性能造成致命的影响。据研究统计,大多数DDoS攻击通过TCP洪流攻击实现。 1.2 UDP 洪流攻击

用户数据报协议(UDP)是一个无连接协议。当数据包经由UDP协议发送时,发送双方无需通过三次握手建立连接, 接收方必须接收处理该数据包。因此大量的

发往受害主机 UDP 报文能使网络饱和。在一起UDP 洪流攻击中,UDP 报文发往受害系统的随机或指定端口。通常,UDP洪流攻击设定成指向目标的随机端口。这使得受害系统必须对流入数据进行分析以确定哪个应用服务请求了数据。如果受害系统在某个被攻击端口没有运行服务,它将用 ICMP 报文回应一个“目标端口不可达”消息。通常,攻击中的DDoS工具会伪造攻击包的源IP地址。这有助于隐藏代理的身份,同时能确保来自受害主机的回应消息不会返回到代理。UDP洪流攻击同时也会拥塞受害主机周围的网络带宽(视网络构架和线路速度而定)。因此,有时连接到受害系统周边网络的主机也会遭遇网络连接问题。

1.3 ICMP洪流攻击

Internet 控制报文协议传递差错报文及其它网络管理消息,它被用于定位网络设备,确定源到端的跳数或往返时间等。一个典型的运用就是 Ping 程序,其使用 ICMP_ECHO REQEST 报文,用户可以向目标发送一个请求消息,并收到一个带往返时间的回应消息。ICMP 洪流攻击就是通过代理向受害主机发送大量ICMP_ECHO_ REQEST)报文。这些报文涌往目标并使其回应报文,两者合起来的流量将使受害主机网络带宽饱和。与UDP洪流攻击一样,ICMP洪流攻击通常也伪造源IP地址。

2 系统资源消耗攻击

DDoS系统资源消耗攻击包括恶意误用 TCP/IP 协议通信和发送畸形报文两种攻击方式。两者都能起到占用系统资源的效果。具体有以下几种: TCP SYN攻击。DoS的主要攻击方式,在DDoS攻击中仍然是最常见的攻击手段之一。只不过在 DDoS 方式下,它的攻击强度得到了成百上千倍的增加。 TCP PSH+ACK 攻击。在 TCP 协议中,到达目的地的报文将进入 TCP栈的缓冲区,直到缓冲区满了,报文才被转送给接收系统。此举是为了使系统清空缓冲区的次数达到最小。然而,发送者可通过发送 PSH 标志为 1 的TCP 报文来起强制要求接受系统将缓冲区的内容清除。TCP PUSH+ACK 攻击与 TCP SYN 攻击一样目的在于耗尽受害系统的资源。当代理向受害主机发送PSH和ACK标志设为1的TCP报文时, 这些报文将使接收系统清除所有 TCP 缓冲区的数据(不管缓冲区是满的还是非满),并回应一个确认消息。如果这个过程被大量代理重复,系统将无法处理大量的流入报文。 畸形报文攻击。顾名思义,畸形报文攻击指的是攻击者指使代理向受害主机发送错误成型的IP报文以使其崩溃。有两种畸形报文攻击方式。一种是IP 地址攻击,攻击报文拥有相同的源 IP 和目的 IP 地址。它能迷惑受害主机的操作系统,并使其消耗大量的处理能力。另一个是IP报文可选段攻击。攻击报文随机选取IP报文的可选段并将其所有的服务比特值设为1。对此,受害系统不得不花费额外的处理时间来分析数据包。当发动攻击的代理足够多时,受害系统将失去处理能力。 3 应用层攻击

典型如国内流行的传奇假人攻击,这种攻击利用傀儡机,模拟了传奇服务器的数据流,能够完成普通传奇戏服务器的注册、登陆等功能,使得服务器运行的传奇游戏内出现大量的假人,影响了正常玩家的登陆和游戏,严重时完全无法登陆。

1、SYNFlood攻击判定

观察每秒收到包数量,1网上邻居->右键选“属性”->双击网卡。若大于500则可以肯定是受到SYNFlood攻击。

则说明遭受了SYNFlood攻击。2开始->顺序->附件->命令提示符->C:\\>netstat–na若观察到大量的SYN_RECEIVED连接状态。

服务器立即凝固无法操作,3网线插上后。插入后有时可以恢复,有时候需要重新启动机器才可恢复,则也说明遭受了SYNFlood类的流量攻击。 2、TCP多连接攻击判定

则说明遭到TCP多连接攻击。开始->顺序->附件->命令提示符->C:\\>netstat–na若观察到很多外部IP地址都与本机的服务端口建立了几十个以上的ESTABLISHED状态的连接。 二、解决方案

想彻底解决DDOS几乎不可能的就好比治疗感冒一样,多年的统计数据标明。可以治疗,也可以预防,但却无法根治,但我若采取积极有效的防御方法,则可在很大程度上降低或减缓生病的机率,防治DDOS攻击也是如此,拥有充分的带宽和配置足够高的主机硬件是必需的那么什么算是充分的带宽呢?一般来说至少应该是100M共享,那么什么算配置足够高的主机硬件呢?一般来说至少应该是P42.4GCPU512M内存和Intel等品牌网卡。拥有此配置的带宽和主机理论上可应对每秒20万以上的SYN攻击,但这需要借助于专业配置和专用软件才可实现,默认情况下,绝大多数服务器难以抵御每秒1000个以上SYN攻击。针对网吧的DDOS解决方案,首先要确保有一台高配置带双网卡的电脑做为网关机,卡接,内网卡接内网,对于已经购买路由器的可考虑将路由器串接在内网卡上或者放弃不用,对于采用装置Sygat等路由软件做网关机的直接对该网关机做优化处置或装置专业防火墙软件即可。以下方案即为针对网关机进行的

1、免费DDOS解决方案

可有效对抗每秒约1万个左右的SYN攻击,通过优化Windows2000或2003系统的注册表。方法是把以下文本内容存盘为antiddos.reg然后导入注册表并重新启动即可,当然也可地址

\"TcpMaxHalfOpen\"=dword:000001f4

\"TcpMaxHalfOpenRetrIEd\"=dword:00000190

1、如何发现攻击

在服务器上可以通过CPU使用率和内存利用率简单有效的查看服务器当前负载情况,如果发现服务器突然超负载运作,性能突然降低,这就有可能是受攻击的

征兆。不过也可能是正常访问网站人数增加的原因。如何区分这两种情况呢?按照下面两个原则即可确定受到了攻击。

(1)网站的数据流量突然超出平常的十几倍甚至上百倍,而且同时到达网站的数据包分别来自大量不同的IP。

(2)大量到达的数据包(包括TCP包和UDP包)并不是网站服务连接的一部分,往往指向你机器任意的端口。比如你的网站是Web服务器,而数据包却发向你的FTP端口或其它任意的端口。

原文出自【风信网】,转载请保留原文链接:http://www.ithov.com/server/85614.shtml

2、BAN IP地址法

确定自己受到攻击后就可以使用简单的屏蔽IP的方法将DOS攻击化解。对于DOS攻击来说这种方法非常有效,因为DOS往往来自少量IP地址,而且这些IP地址都是虚构的伪装的。在服务器或路由器上屏蔽攻击者IP后就可以有效的防范DOS的攻击。不过对于DDOS来说则比较麻烦,需要我们对IP地址分析,将真正攻击的IP地址屏蔽。

不论是对付DOS还是DDOS都需要我们在服务器上安装相应的防火墙,然后根据防火墙的日志分析来访者的IP,发现访问量大的异常IP段就可以添加相应的规则到防火墙中实施过滤了。

当然直接在服务器上过滤会耗费服务器的一定系统资源,所以目前比较有效的方法是在服务器上通过防火墙日志定位非法IP段,然后将过滤条目添加到路由器上。例如我们发现进行DDOS攻击的非法IP段为211.153.0.0 255.255.0.0,而服务器的地址为61.153.5.1。那么可以登录公司核心路由器添加如下语句的访问控制列表进行过滤。

cess-list 108 deny tcp 211.153.0.0 0.0.255.255 61.135.5.1 0.0.0.0,这样就实现了将211.153.0.0 255.255.0.0的非法IP过滤的目的。

小提示:在访问控制列表中表示子网掩码需要使用反向掩码,也就是说0.0.255.255表示子网掩码为255.255.0.0 。

3、增加SYN缓存法

上面提到的BAN IP法虽然可以有效的防止DOS与DDOS的攻击但由于使用了屏蔽IP功能,自然会误将某些正常访问的IP也过滤掉。所以在遇到小型攻击时不建议大家使用上面介绍的BAN IP法。我们可以通过修改SYN缓存的方法防御小型DOS与DDOS的攻击。该方法在笔者所在公司收效显著。

修改SY缓存大小是通过注册表的相关键值完成的。我们将为各位读者介绍在WINDOWS2003和2000中的修改方法。

(1)WIN2003下拒绝访问攻击的防范:

第一步:“开始->运行->输入regedit”进入注册表编辑器。

第二步:找到HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices,在其下的有个SynAttackProtect键值。默认为0将其修改为1可更有效地防御SYN攻击。

小提示:该参数可使TCP调整SYN-ACKS的重新传输。将SynAttackProtect设置为1时,如果系统检测到存在SYN攻击,连接响应的超时时间将更短。

第三步:将HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices下EnableDeadGWDetect键值,将其修改为0。该设置将禁止SYN攻击服务器后强迫服务器修改网关从而使服务暂停。

第四步:将HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices下EnablePMTUDiscovery键值,将其修改为0。这样可以限定攻击者的MTU大小,降低服务器总体负荷。

第五步:将HKEY_LOCAL_MACHINESYSTEMCurrentControlSetServices下KeepAliveTime设置为300,000。将NoNameReleaseOnDemand

设置为1。

(2)WIN2000下拒绝访问攻击的防范:

在WIN2000下拒绝访问攻击的防范方法和2003基本相似,只是在设置数值上有些区别。我们做下简单介绍。

第一步:将SynAttackProtect设置为2。

第二步:将EnableDeadGWDetect设置为0。

第三步:将EnablePMTUDiscovery设置为0。

第四步:将KeepAliveTime设置为300000。

第五步:将NoNameReleaseOnDemand设置为1。

总结:经过上面介绍的察觉攻击法,BAN IP法和最后的修改注册表法可以有效的防范DOS与DDOS的攻击。不过由于DDOS攻击的特点,实际上没有一台服务

器能够彻底防范它,即使安装了专业的防范DDOS的硬件防火墙也不能百分之百的避免损失。今天介绍的几个方法只是免费的防范手段,实际中能起到一定的效果。

原文出自【风信网】,转载请保留原文链接:http://www.ithov.com/server/85614_2.shtml

因篇幅问题不能全部显示,请点此查看更多更全内容

Copyright © 2019- dfix.cn 版权所有 湘ICP备2024080961号-1

违法及侵权请联系:TEL:199 1889 7713 E-MAIL:2724546146@qq.com

本站由北京市万商天勤律师事务所王兴未律师提供法律服务