DDoS攻击可以具体分成两种形式:
带宽消耗型以及资源消耗型,都是透过大量合法或伪造的请求占用大量网络以及器材资源,以达到瘫痪网络以及系统的目的。 DDoS 带宽消耗攻击可以分为两个不同的层次:洪泛攻击或放大攻击。洪泛攻击的特点是利用僵尸程序发送大量流量至受损的受害者系统,目的在于堵塞其带宽。放大攻击也与之类似,通过恶意放大流量限制受害者系统的带宽;其特点是利用僵尸程序发送信息,但是信息却是发送至广播 IP 地址,导致系统子网被广播 IP 地址连接上之后再发送信息至受害系统。
User Datagram Protocol (UDP) floodsUDP是一种无连接协议,当数据包通过 UDP 发送时,所有的数据包在发送和接收时不需要进行握手验证。当大量 UDP 数据包发送给受害系统时,可能会导致带宽饱和从而使得合法服务无法请求访问受害系统。遭受 DDoS UDP 洪泛攻击时,UDP 数据包的目的端口可能是随机或指定的端口,受害系统将尝试处理接收到的数据包以确定本地运行的服务。如果没有应用程序在目标端口运行,受害系统将对源IP发出 ICMP 数据包,表明“目标端口不可达”。某些情况下,攻击者会伪造源IP地址以隐藏自己,这样从受害系统返回的数据包不会直接回到僵尸主机,而是被发送到被伪造地址的主机。有时 UDP 洪泛攻击也可能影响受害系统周围的网络连接,这可能导致受害系统附近的正常系统遇到问题。然而,这取决于网络体系结构和线速。ICMP floodsICMP floods是通过向未良好设置的路由器发送广播信息占用系统资源的做法。ping of death是产生超过IP协定能容忍的分组数,若系统没有检查机制,就会当机。TearDrop每个数据要传送前,该分组都会经过切割,每个小切割都会记录位移的信息,以便重组,但此攻击模式就是捏造位移信息,造成重组时发生问题,造成错误。 20世纪90年代中晚期的DoS活动差不多都是基于利用操作系统里的各种软件缺陷。这些缺陷大都属于会导致软件或硬件无法处理例外的程序设计失误。这类威胁可以称为是杀手包或剧毒包(Killer Packet)型威胁,它主要是利用协议本身或者其软件实现中的漏洞,通过一些非正常的(畸形的)数据包使得受害者系统在处理时出现异常,导致受害者系统崩溃。由于这类威胁主要是利用协议或软件漏洞来达到威胁效果的,因此,有的也称这类威胁为漏洞威胁,也有称之为协议威胁(Protocol Attack)的。此外,由于这类威胁对不法者的运算能力或带宽没有要求,一个通过Modem连接的低档的PC机就可以攻破一个具有高带宽的大型系统。因此,这类威胁也是一种非对称DoS威胁。
随着系统的更新,网络安全技术的进步,在可供利用的安防漏洞越来越少的情况下,现代DoS威胁技术采取一种更直接的战术——消耗战(能力消耗、带宽消耗),Flood型的威胁方式是这个战术的最好体现。
这类威胁可以称为风暴型(Storm Type)或洪泛型(Flood Type)威胁,不法者通过大量的无用数据包占用过多的资源以达到拒绝服务的目的。这种威胁有时也称为带宽威胁(BandwidthAttack),原因是其常常占用大量的带宽,即使有时威胁的最终目的是占用系统资源,但在客观上也会占用大量带宽。在这类威胁中,有害数据包可以是各种类型的,数据包中的数据也可以是多种多样的,这些数据包与正常服务的数据包是难以区分的。剧毒包威胁,利用协议实现的漏洞,全过程只需借助于一个或少量的异常数据包即可达到目的;洪泛威胁的效果完全依赖于数据包的数量,仅当大量的数据包传到目标系统(受害者)时才有效。 DRDoS不同于以往的拒绝服务方式,它对DDoS作了改进,它是通过对正常的服务器进行网络连接请求来达到破坏目的的。从TCP的三次握手中我们知道了任何合法的TCP连接请求都会得到返回数据包,而这种威胁方法就是将这个返回包直接返回到被害的主机上,这里涉及到数据包内的源口地址问题,就是利用数据包的口地址欺骗方法,欺骗被利用的网络服务器,让此服务器认为TCP请求连接都是被害主机上发送的,接着它就会发送“SYN+ACK”数据包给被害主机,恶意的数据包就从被利用的服务器“反射”到了被害主机上,形成洪水威胁。