剖析DDOS攻击的原理 提供解决方法(9)
3.7 UDP DNS Query Flood攻击
3.7.1 原理
UDP DNS Query Flood攻击实质上是UDP Flood的一种,但是由于DNS服务器的不可替代的关键作用,一旦服务器瘫痪,影响一般都很大。
UDP DNS Query Flood攻击采用的方法是向被攻击的服务器发送大量的域名解析请求,通常请求解析的域名是随机生成或者是网络世界上根本不存在的域名,被攻击的DNS 服务器在接收到域名解析请求的时候首先会在服务器上查找是否有对应的缓存,如果查找不到并且该域名无法直接由服务器解析的时候,DNS 服务器会向其上层DNS服务器递归查询域名信息。域名解析的过程给服务器带来了很大的负载,每秒钟域名解析请求超过一定的数量就会造成DNS服务器解析域名超时。
根据微软的统计数据,一台DNS服务器所能承受的动态域名查询的上限是每秒钟9000个请求。而我们知道,在一台P3的PC机上可以轻易地构造出每秒钟几万个域名解析请求,足以使一台硬件配置极高的DNS服务器瘫痪,由此可见DNS 服务器的脆弱性。同时需要注意的是,蠕虫扩散也会带来大量的域名解析请求。
3.7.2 UDP DNS Query Flood防护
在UDP Flood的基础上对 UDP DNS Query Flood 攻击进行防护
根据域名 IP 自学习结果主动回应,减轻服务器负载(使用 DNS Cache)
对突然发起大量频度较低的域名解析请求的源 IP 地址进行带宽限制 在攻击发生时降低很少发起域名解析请求的源 IP 地址的优先级
限制每个源 IP 地址每秒的域名解析请求次数
四. 总结
看完这篇文章,您已经了解了7种主流的DDOS攻击方式,并且也了解了相应的解决方法。虽然道高一尺,魔高一丈,新的攻击方法也在源源不断出现。但是,只要您掌握了相应的原理,破解DDOS攻击并非难事,不过其前提是您在掌握原理的基础上,还需要有相应的软件、硬件来对抗。本文的最后,给出几个小题目,帮您回忆一下前面所说的内容。
1. 对上述方法的总结。
2. 如果您的主要业务是UDP音频应用,为了维护利益,尽可能降低攻击对其业务的影响,您平时应该如何关注?
3. 僵尸网络是个无坚不摧的矛吗?如何缓解来自僵尸网络的攻击带来的影响?如果一次ACK-Flood的攻击流量是通过僵尸网络发出来的,那么它通常会带有什么特征。