新睿云

> DDoS高防云服务器 > ddos攻击教程与测试工具大全(下)

ddos攻击教程与测试工具大全(下)

作者/来源:新睿云小编 发布时间:2019-07-12

传送门——ddos攻击教程与测试工具大全(上)

DoS攻击

DoS:是Denial of Service的简称,即拒绝服务,造成DoS的攻击行为被称为DoS攻击,其目的是使计算机或网络无法提供正常的服务。不同于其他的留有木马后门或劫持数据的方式,DoS攻击并不威胁敏感数据,只是使合法用户不能获得应有的服务。DoS攻击也可以被用于瘫痪WAF,以便进一步攻击网站系统。

拒绝服务攻击与分布式拒绝服务攻击(DoS VS DDoS

DDOS:分布式拒绝服务(DDoS:Distributed Denial of Service)攻击指借助于客户/服务器技术,将多个计算机联合起来作为攻击平台,对一个或多个目标发动DDoS攻击,从而成倍地提高拒绝服务攻击的威力。

简单来讲,DOS攻击从单一网络节点发起攻击,攻击源一般只有一个;DDOS攻击从分布在网络上的多个攻击源发起攻击,攻击源有成千上万,甚至更多....

拒绝服务攻击的分类(DOS)

DOS攻击大致分为两大类:应用层拒绝服务攻击与网络层拒绝服务攻击。为了更好的理解,我们先介绍“层”的概念 。

OSI参考模型将网络划分为7层架构,是指导应用程序在网络中通信的标准模型。

网络层拒绝服务攻击

这类攻击集中在网络层与传输层,属于资源消耗型攻击(CPU满负荷或内存不足),用海量的恶意流量淹没目标机器,消耗目标机器的所有资源,从而使目标服务器失去正常响应。

TCP SYN Flood 攻击

SYN Flood攻击工作在传输层,为了能更好的了解这一攻击方式,我们需要先了解TCP连接的建立过程。

大家都知道,TCP与UDP不同,它是基于连接的,也就是说:为了在服务端和客户端之间传送TCP数据,必须先建立一个虚拟链路,也就是TCP连接,建立TCP连接的标准过程俗称“三次握手”(Three-way Handshake):

第一次握手:建立连接时,客户端发送syn包(syn=j)到服务器,并 进入SYN_SENT状态,等待服务器确认;SYN:同步序列编号(Synchronize Sequence Numbers)。

第二次握手:服务器收到syn包,必须确认客户的SYN(ack=j+1),同时自己也发送一个SYN包(syn=k),即SYN+ACK包,此时服务器进入SYN_RECV状态;

第三次握手:客户端收到服务器的SYN+ACK包,向服务器发送确认包ACK(ack=k+1),此包发送完毕,客户端和服务器进入ESTABLISHED(TCP连接成功)状态,完成三次握手。

问题就出在TCP连接的三次握手中,假设一个用户向服务器发送了SYN报文后突然死机或掉线,那么服务器在发出SYN+ACK应答报文后是无法收到客户端的ACK报文的(第三次握手无法完成),这种情况下服务器端一般会重试(再次发送SYN+ACK给客户端)并等待一段时间后丢弃这个未完成的连接,这段时间的长度我们称为SYN Timeout,一般来说这个时间是分钟的数量级(大约为30秒-2分钟);一个用户出现异常导致服务器的一个线程等待1分钟并不是什么很大的问题,但如果有一个恶意的攻击者大量模拟这种情况。

服务器端将为了维护一个非常大的半连接列表而消耗非常多的资源----数以万计的半连接,即使是简单的保存并遍历也会消耗非常多的CPU时间和内存,何况还要不断对这个列表中的IP进行SYN+ACK的重试。实际上如果服务器的TCP/IP栈不够强大,最后的结果往往是堆栈溢出崩溃---即使服务器端的系统足够强大,服务器端也将忙于处理攻击者伪造的TCP连接请求而无暇理睬客户的正常请求(毕竟客户端的正常请求比率非常之小),此时从正常客户的角度看来,服务器失去响应,这种情况我们称作:服务器端受到了SYN Flood攻击(SYN洪水攻击)。

热门标签
new year
在线咨询
咨询热线 400-1515-720
投诉与建议
{{item.description}}

—您的烦恼我们已经收到—

我们会将处理结果发送至您的手机

请耐心等待