TCP交互过程中包含SYN、SYN-ACK、ACK、FIN和RST报文,这几类报文也可能会被攻击者利用,海量的攻击报文会导致被攻击目标系统资源耗尽、网络拥塞,无法正常提供服务。接下来我们介绍几种常见的Flood攻击的原理和防御方式。
SYN Flood攻击与防御
SYN Flood 指的是攻击者利用工具或者操作僵尸主机,向目标服务器发起大量的TCP SYN报文,当服务器回应SYN-ACK报文时,攻击者不再继续回应ACK报文。这时服务器上存在大量的TCP半连接,服务器的资源会被这些半连接耗尽,无法响应正常的请求。
华为Anti-DDoS解决方案防御SYN Flood攻击的常用方式是源认证,从SYN报文建立连接的“行为”入手,判断是否为真实源发出的请求。源认证方法包括基本源认证和高级源认证两种认证方式。
基本源认证
SYN Flood基本源认证过程如下图所示:
-
当连续一段时间内去往目标服务器的SYN报文超过告警阈值后,Anti-DDoS系统启动源认证机制。源认证机制启动后,Anti-DDoS系统将会代替Web服务器向客户端响应带有错误确认序号的SYN-ACK报文。
-
Anti-DDoS 设备通过校验接收到的对探测报文的响应报文的真实性来确认源 IP 地址的真实性,以防止虚假源攻击。
-
如果没有响应报文,则表示之前的 SYN 报文为攻击, Anti-DDoS 设备不会将该 SYN 报文发给被防护服务器,有效终止了攻击。未匹配白名单的