分布式拒绝服务攻击(简称DDoS)是一种协同攻击,旨在使受害者的资源无法使用。它可以由一个黑客组织协同行动,也可以借助连接到互联网的多个受破坏设备来执行。这些在攻击者控制下的设备通常称为僵尸网络。
有多种执行DDoS攻击的工具:例如Trinoo,Stacheldraht,Shaft,Knight,Mstream等。这些工具的可用性是DDoS攻击如此广泛和流行的原因之一。
DDoS攻击可能持续几分钟、几小时、甚至是几天。卡巴斯基实验室的一份报告显示,近年来时间最长的DDoS攻击之一发生在2018年1月,它持续了将近300个小时。
发起DDoS攻击有两种常见方法:
利用软件漏洞
黑客可以针对已知和未知软件漏洞,并发送格式错误的数据包,以试图破坏受害者的系统。
消耗计算或通信资源
黑客可以发送大量合法的数据包,从而消耗受害者的网络带宽、CPU或内存,直到目标系统无法再处理来自合法用户的任何请求。
虽然没有标准的DDoS攻击分类,但我们可以将其分为四大类:
0 day漏洞DDoS攻击
除了众所周知的攻击之外,还存在0 day漏洞DDoS攻击。他们利用尚未修补的未知软件漏洞或使用不常见的攻击媒介,因此更加难以检测和防御。例如,早在2016年,攻击者利用轻型目录访问协议(LDAP)发起了放大系数高达55的攻击。
容量耗尽攻击
通常借助僵尸网络和放大技术,通过向终端资源注入大量流量来阻止对终端资源的访问。最常见的容量耗尽攻击类型有:
UDP洪水攻击
黑客发送用户数据报协议(UDP)包伪造受害者的源地址到随机端口。主机生成大量的回复流量并将其发送回受害者。
ICMP洪水攻击
黑客使用大量的互联网控制消息协议(ICMP)请求或ping命令,试图耗尽受害者的服务器带宽。
协议攻击
根据Verisign 2018年第1季度DDoS趋势报告,协议攻击针对的是协议工作方式的漏洞,这是第二大最常见的攻击媒介。最常见的协议攻击类型有:
SYN洪水攻击
黑客利用了三向握手TCP机制的漏洞。客户端将SYN数据包发送到服务器,接收SYN-ACK数据包,并且永远不会将ACK数据包发送回主机。因此,受害者的服务器留下了许多未完成的SYN-ACK请求,并最终导致崩溃。
死亡之Ping
攻击–黑客使用简单的Ping命令发送超大数据包,从而导致受害者的系统冻结或崩溃。
SYN洪水攻击是2014年用来摧毁在线赌博网站的五种攻击媒介之一。
应用程序攻击
应用程序攻击利用协议栈(六),协议栈(七)中的漏洞,针对特定的应用程序而不是整个服务器。它们通常针对公共端口和服务,如DNS或HTTP。最常见的应用程序攻击有:
HTTP洪水攻击
攻击者用大量的标准GET和POST请求淹没应用程序或web服务器。由于这些请求通常显示为合法流量,因此检测HTTP洪水攻击是一个相当大的挑战。
Slowloris
Slowloris缓慢地使受害者的服务器崩溃。攻击者按时间间隔和一小部分向受害者的服务器发送HTTP请求。服务器一直在等待这些请求完成,但永远不会发生。最终,这些未完成的请求耗尽了受害者的带宽,使合法用户无法访问服务器。