计算机网络-DDoS攻击

什么是DDoS

DDoS 就是分布式拒绝服务攻击,这种网络攻击形式尝试用恶意流量淹没网站或网络资源,从而导致网站或网络资源无法正常运行。

工作原理

DDoS 攻击利用接入互联网上的设备构成的彼此连接的网络,切断用户与服务器或网络资源(比如用户经常访问的网站或者应用程序)的联系。

攻击类型

容积攻击

容积型 DDoS 攻击的目的是用海量流量充塞网络,耗尽预期受害方资源的带宽。

容积攻击使用的攻击途径是由一种恶意软件感染的众多系统和设备组成的僵尸网络。在攻击者的控制下,爬虫程序发出恶意流量,耗尽所有可用带宽,造成攻击目标与互联网之间的连接拥塞。

UDP 泛洪攻击

UDP 泛洪攻击经常被选择用于带宽较大的 DDoS 攻击。

攻击者会试图用包含无状态 UDP 协议的 IP 数据包充塞目标主机上的端口。

随后,受害主机寻找与 UDP 数据包相关的应用程序,如果没有找到,就向发送者回发一条“目标不可达”消息。

攻击者经常通过冒用 IP 地址来隐藏自己的身份,一旦目标主机被攻击流量淹没,系统就会失去响应,造成合法用户无法正常使用。

DNS 反射/放大

DNS 反射攻击是一种常见的攻击媒介,网络犯罪分子通过伪装其目标的 IP 地址,向开放的 DNS 服务器发送大量请求。

作为回应,这些 DNS 服务器通过伪造的 IP 地址响应恶意请求,大量的 DNS 答复形成洪流,从而构成预定目标的攻击。

很快,通过 DNS 答复产生的大量流量就会造成受害企业的服务不堪重负、无法使用,并造成合法流量无法到达其预定目的地。

ICMP 泛洪攻击

互联网控制消息协议 (ICMP) 主要用于错误信息传递,通常不会在系统之间交换数据。

ICMP 数据包可能与传输控制协议 TCP 数据包一同传输,让应用程序和计算设备在连接到服务器时可以通过网络交换信息。

ICMP 泛洪攻击是一种第 3 层基础架构 DDoS 攻击方法,它使用 ICMP 消息来造成目标网络带宽超载。

协议攻击

协议攻击通过尝试利用协议通信的恶意连接请求来消耗并耗尽各种网络基础架构资源(如服务器或防火墙)的计算容量。

SYN 泛洪攻击

在 SYN 泛洪攻击中,恶意客户端发送大量 SYN 数据包(通常在握手的第一部分),但永远不会发送确认以完成握手。这使得服务器一直等待对于这些半开放的 TCP 连接的响应,而这些连接最终会耗尽容量,造成服务器无法接受跟踪连接状态的新连接。

Smurf DDoS 攻击

众多规模较小的攻击者可以凭借纯粹的数量优势来压倒更大规模的对手。

在 Smurf 分布式拒绝服务攻击中,攻击者使用某个 IP 广播地址,向计算机网络广播大量带有目标仿冒源 IP 的互联网控制消息协议 (ICMP) 数据包。

默认情况下,网络上的大多数设备将通过向该源 IP 地址发送回复的方式来做出响应。根据网络上机器数量的不同,受害计算机的速度可能会因为流量泛洪而被严重拖慢。

应用层攻击

HTTP 泛洪攻击

应用层攻击是通过向应用程序发送大量恶意请求实现的,以每秒请求数 (RPS) 来衡量。

这类攻击也称为第 7 层 DDoS 攻击,针对并破坏特定的网络应用程序,而不是整个网络。虽然这类 DDoS 攻击难以预防和抵御,但发动起来却相对比较容易。

打个比方来说,惊吓一群马并让它们到处乱跑容易,但要再次将它们控制起来几乎很难实现。应用层攻击就是这样:容易实施,但难以减缓或阻止,而且特定于某个目标。

防御手段

高防服务器

高防服务器主要是指能独立硬防御 50Gbps 以上的服务器,能够帮助网站拒绝服务攻击,定期扫描网络主节点等。

黑名单

DDoS 清洗

DDoS 清洗会对用户请求数据进行实时监控,及时发现DOS攻击等异常流量,在不影响正常业务开展的情况下清洗掉这些异常流量。

CDN 加速

CDN 服务将网站访问流量分配到了各个节点中,这样一方面隐藏网站的真实 IP,另一方面即使遭遇 DDoS 攻击,也可以将流量分散到各个节点中,防止源站崩溃。