UDP Flood攻击
d1ng / 2021-10-26 / web安全 / 阅读量 3717

UDP特点

  • 是一种无连接和无会话的网络协议
  • 传输数据丢失后不需要检查

正是由于UDP的这些特点,导致黑客能借用UDP进行攻击

UDP洪水攻击

攻击危害

UDP Flood attack是一种DoS攻击(Denial-of-Service attack,拒绝服务攻击)

​ 它指将大量UDP数据包发送到目标服务器,且速率非常快,通常会造成服务器资源耗尽,无法响应正常的请求,严重时会导致链路拥塞。保护目标服务器的防火墙也可能因 UDP 泛滥而耗尽,从而导致对合法流量的拒绝服务

攻击原理

服务器在特定端口接收到 UDP 数据包时,它会通过两个步骤进行响应:

  1. 服务器首先检查是否有程序在侦听该端口的请求
  2. 如果没有程序在该端口侦听,则服务器以ICMP (ping) 数据包的格式回复给发送者

因此,对于大量的UDP数据包,服务器将被迫发送多个ICMP数据包,资源很快被耗尽,最终导致其他客户端无法访问它。同时,攻击者还可以欺骗UDP数据包的IP地址,确保过多的ICMP数据包不会返回给他们

image-20211026004636299

判断

UDP洪水攻击有一些特征,可以根据以下特征来判断是否为UDP洪水攻击

  • 源IP或源端口变化频繁

image-20211026124303097

  • 大量针对一个端口

image-20211026124339310

  • 报文负载一般保持不变或具有规律的变化

image-20211026015734142
image-20211026015757537

图中报文的负载全部相同

如何防御

  • 载荷检查

    1. 基于目的IP地址、目的安全区域或会话进行UDP流量统计
    2. 当UDP流量超过阈值时,会触发载荷检查,将超过部分丢弃
  • 指纹学习

    1. 指纹由Anti-DDoS设备动态学习生成
    2. 当UDP流量超过阈值时,会将攻击报文的一段显著特征学习为指纹
    3. 丢弃后续能够与指纹匹配的报文

image-20211026012425701

  • 关联TCP类服务防范

原理:

  1. UDP是无连接的协议,无法通过源认证的方法防御UDP洪水攻击
  2. 关联TCP业务,UDP业务流量需要通过TCP业务流量认证或控制

步骤

  1. 当UDP业务受到攻击时,对关联的TCP业务强制启动防御
  2. 通过关联防御产生TCP白名单,以确定同一源的UDP流量的走向
  3. 命中白名单的源的UDP流量允许通过,否则就被丢弃

image-20211026012510633

1 + 2 =
1 评论
    蛙蛙QQ Browser 6Android
    2021年10月26日 回复

    丁丁好棒