基于udp的放大攻击

如题所述

第1个回答  2022-06-08
一、系统的影响

某些依赖于用户数据报协议(User Datagram Protocol, UDP)的应用层协议已被识别为潜在的攻击载体。这些包括:

域名系统,

网络时间协议(NTP)

无连接轻量级目录访问协议(CLDAP),

字符生成协议(CharGEN)

简单服务发现协议,

BitTorrent,

简单网络管理协议版本2 (SNMPv2)

Kad,

端口映射/远程过程调用(RPC),

Quote of the Day(QOTD)

多播域名系统(mDNS),

网络基本输入输出系统(NetBIOS)

Quake 网络协议,

流协议,

路由信息协议版本1 (RIPv1)

轻量级目录访问协议(LDAP),

简单文件传输协议(TFTP)和

Memcached,

以及Web服务动态发现(WS-Discovery)。

二、概述

分布式反射拒绝服务(DRDoS)是分布式拒绝服务(DDoS)攻击的一种形式,它依赖于可公开访问的UDP服务器和带宽放大因子(BAFs),以UDP流量淹没受害者的系统。

三、描述

根据设计,UDP是一个不验证源互联网协议(IP)地址的无连接协议。除非应用层协议使用对策,如在互联网语音协议中会话发起,否则攻击者可以很容易地伪造IP包数据报(与包交换网络相关联的基本传输单元)以包括任意源IP地址。当许多UDP数据包的源IP地址被伪造成受害者IP地址时,目标服务器(或放大器)会响应受害者(而不是攻击者),从而产生反射拒绝服务(DoS)攻击。

UDP协议的某些命令会引发比初始请求大得多的响应。以前,攻击者受到直接发送到目标的数据包的线性数量的限制而进行DoS攻击;现在一个包可以产生10到100倍的原始带宽。这被称为放大攻击,当与大规模的反射式DoS攻击结合使用多个放大器并针对单一受害者时,DDoS攻击就可以相对容易地进行。

放大攻击的潜在效果可以通过BAF来衡量,BAF可以计算为放大器为响应请求而发送的UDP有效载荷字节数与请求的UDP有效载荷字节数的比较。

下面是已知协议及其相关的BAFs的列表。CISA感谢Christian Rossow提供了这些信息。更多关于BAFs的信息,请看Christian的博客以及相关的研究成果。

2015年3月,软件工程学会CERT协调中心发布了漏洞说明VU#550620,描述了mDNS在DRDoS攻击中的使用。攻击者可以通过发送比设备能处理的更多的信息来利用mDNS,从而导致DoS状态。

2015年7月,Akamai技术公司的Prolexic安全工程和研究团队(PLXsert)发布了一份威胁报告,称使用RIPv1的DRDoS攻击激增。恶意参与者通过特别设计的请求查询利用RIPv1的行为进行DDoS反射。

2015年8月,3级威胁研究实验室报告了一种使用portmap的新型DRDoS攻击。攻击者利用portmap服务的行为,通过欺骗请求向受害者的网络发送UDP流量。

2016年10月,Corero Network Security报告了一场新的DDoS扩增攻击,利用LDAP目录服务服务器攻击其客户。

2017年11月,Netlab 360报告称,CLDAP目前是第三大最常见的DRDoS攻击,仅次于DNS和NTP攻击。

2018年2月,SENKI报告了基于memcached的反射DDoS攻击(通过UDP/TCP端口11211)的增加,并达到了前所未有的放大系数。

在2019年9月,Akamai报告了利用WS-Discovery协议(通过TCP/UDP端口3702)的DDoS攻击。

四、影响

攻击者可以利用此警报中提供UDP协议的大型服务器的带宽和相对信任,向受害者提供不需要的流量并创建DDoS攻击。

五、解决方案

检测

检测DRDoS攻击并不容易,因为它们使用了提供UDP服务的大型可信服务器。这些可利用服务的网络运营商可以应用传统的DoS缓解技术。要检测DRDoS攻击,请注意对特定IP地址的非正常大响应,这可能表明攻击者正在使用该服务。

DRDoS攻击的受害者可以做一些事情来检测这种活动并作出反应:

1、检测和警报大UDP数据包到更高的命令端口。

2、检测和警告任何非状态UDP数据包。(下面是一个简单的Snort示例。这种方法需要针对每个带有白名单和已知服务的环境进行定制。

3、上游供应商应更新与下游客户的联系方式和方法,通过网络发送警报。

一般而言,互联网服务供应商(ISPs)的网络和服务器管理员应采用以下最佳做法,以避免成为放大器节点:

1、使用网络流检测欺骗包。(请参阅下面的缓解部分,了解在阻止欺骗流量之前验证该流量的信息。)

2、使用网络流或其他总结的网络数据来监视对有风险的UDP服务的异常数量的请求。

3、使用网络流量检测服务异常(例如,每包字节数和每秒数据包异常)。

缓解

以下步骤可以帮助减轻DRDoS攻击:

1、使用有状态UDP检查(如反射访问控制列表)来减少对边界防火墙或边界路由器上的关键服务的影响。[13]

2、使用边界网关协议(BGP)来创建一个远程触发的黑洞,最好与上游提供商或isp合作。[14]

3、维护主要上游供应商紧急联系人列表,以协调对攻击的响应。上游供应商应与下游客户协调开展缓解措施。

一般来说,ISP网络和服务器管理员应该使用以下最佳实践来避免成为放大器节点:

1、定期更新软件和配置以拒绝或限制滥用(例如,DNS响应率限制)。[15] [16] [17]

2、禁用和移除不需要的服务,或拒绝通过internet访问本地服务。

3、使用udp的协议,如:流量和路由设备上的服务质量(QoS)——以支持基于网络的速率——限制在互联网上提供的合法服务。

4、与客户供应商和制造商合作,确保安全配置和软件。

作为互联网服务供应商,为避免滥用互联网资源:

1、使用ingress过滤来阻止欺骗包(请参阅欺骗器项目[19]和IETF BCP 38和BCP 84指南)。

2、对UDP服务请求使用流量调整,以确保对internet资源的重复访问不会被滥用。