全球DDoS网络攻击次数不断增长,反射攻击次数也是逐年上升,笔者在之前撰写的文章《史上最大DDoS攻击"之争"》中提到的几次”最大”攻击,都是以CLDAP为主的反射攻击。除了CLDAP反射攻击外,SSDP、NTP等反射攻击也是历年来最为流行的攻击类型,最近几年不断有新的攻击类型被发现,行业内监测到的反射类型有50多种,其中智云盾团队针对其中12种做了首次技术分析和攻击预警。DDoS攻击峰值和攻击频率不断增高,反射攻击的占比从2017年的21%,增长到2021年接近50%,下图展示了DDoS攻击次数与反射攻击增长的趋势。其中CLDAP是近年来较火的攻击类型,业内披露的多次T级以上的超大攻击,都有CLDAP攻击的参与,CLDAP协议广泛应用于Windows服务器的活动目录服务(AD),反射放大倍数超过70倍。图中攻击者Attacker伪造了请求包Pva发送到反射服务器Amplifiers(简称A),但Pva的源IP是受害者Victim(简称V),所以A响应的时候发送Pav给到V,Pav往往是Pva的好几倍,甚至是成千上万倍。反射攻击一方面隐藏了黑客IP,同时还有一个重要特征是放大攻击流量。黑客实施攻击时,不是直接攻击受害者IP,而是伪造受害者IP的大量请求发给相应的开放服务,相应服务将大量的恶意流量发送给受害者,这样就产生的隐藏了发送者真实身份的效果。有一种情况是国内三大运营商的边缘网络或路由器会检查源IP,对不是同一网络的IP出向包进行丢弃。针对这种情况,黑客会在使用相应手段储备攻击资源,下图展示了BillGates木马收集的过程。上图中序号19、20两个包中红色打码的是BillGates木马用真实IP收发心跳包,序号21和22是木马伪造不同的IP段发包,payload中记录了真实IP。木马收到请求包后根据payload是否包含真实IP来确定哪些IP段可以用于伪造。BiillGates木马通过收发心跳包来确定哪些IP段是可以将伪造的请求顺利通过边缘网络或路由器发到主控端。反射攻击流行的另一个重要原因是反射服务带有放大效果,这些服务使用的协议通常不对来源请求进行安全性校验,直接响应数倍乃至数万倍于请求的数据包,例如我们熟知的Memcache反射攻击,最大的放大倍数可达十几万倍。很多知名的服务都可以用作反射攻击,如:NTP、SNMP,行业内监测到的50多种攻击类型中就有21种利用了物联网协议,7种游戏协议,16种网络服务以及6种私有协议,这些反射攻击的放大倍数少则几倍,多则高达十几万倍,这些反射攻击的放大倍数少则几倍,多则高达十几万倍,甚至payload为空的的情况下,也能响应超量数据包。我们在长期与DDoS黑客”打交道”中,提炼出一套高效准确的研究识别方法,该方法包括两个方面:智云盾在全球部署了大量节点,包含一些蜜罐节点,可以有机会观测到反射攻击的全过程。当黑客伪造的反射请求对监控系统进行攻击时,监测节点实时上报攻击事件到威胁中心,向全网节点下发采集被攻击IP地址的指令,深度包分析程序根据IP对应关系提取黑客使用新型反射攻击的请求指令。使用这种方法,我们识别了多个新型反射攻击类型,如CoAP、PMDP等反射攻击,但是由于资源有限,仍然有许多新型类型难以识别。于是我们提出了基于协议模板fuzz的反射源攻击手法自动化探测方法。2)基于协议模板fuzz的反射源攻击手法自动化探测方法使用RFC协议库,构建协议模板库,通过fuzz算法生成大量的反射请求数据包。对于捕获到大量响应包的反射攻击,通过协议模板库,fuzz识别协议类型,精准生成协议类型。- 如果协议载荷为文本——可打印的ASCII字符,选择简单协议分类的模版库进行比对,采用文本相似性算法
- 如果协议载荷为复杂协议——二进制数据和偶尔包含的人可读的ASCII字符串,选择复杂协议的模版库进行比对,采用二进制结构相似性算法。
使用基于生成generation-based的fuzz技术,对生成的协议进行文本建模,基于模型生成请求数据包。这样能够高效的获取新型反射攻击的请求指令。
自2018年首次发现IPMI反射攻击以来,我们累计挖掘出12种新型反射放大攻击,同时也对业内流行的TCP反射攻击进行过深入研究,下表展示了我们近年来在反射攻击领域的研究成果。黑客在寻找新的攻击方式上不再拘泥于传统公共服务,而是对暴露在公网,并且具备一定规模的UDP服务都尝试利用作为反射源。我们结合了自己的研究成果以及查阅多方资料,对反射攻击类型进行了总结,结果如下表:注:表格科学倍数数据为安全专家计算得出,部分数据结合业内披露的信息,未查询到相关信息的部分留白反射攻击都是互联网上开放服务参与的,作为这些开放服务的运营者应遵循以下防御措施避免成为DDoS反射攻击的帮凶。- 使用UDP服务无法启用授权认证时,应确保响应与请求的倍数不要大于1
|