DDOS攻击是目前最强大、最难防御的网络攻击之一,主要通过大量合法的请求占用大量网络资源,从而使正常的用户无法访问。二十年来,DDoS一直是网络犯罪分子进行攻击的一个重要的工具,现在发展得也越来越强大,感染蔓延的越来越广泛。在DDOS不断“进化”的同时,我们的DDOS防御方式也在不断的发展和演变。今天就来分享一下这二十多年来DDOS防御的发展和演变。
1. 内核优化时代
在早期时代,没有专业的防护清洗设备来进行DDoS防御,当时互联网的带宽也比较小,很多人都是在用56K的modem拨号上网,攻击者可以利用的带宽也相对比较小,对于防御者来说,一般通过内核参数优化、iptables就能基本解决攻击,有内核开发能力的人还可以通过写内核防护模块来提升防护能力。
在这个时期,利用Linux本身提供的功能就可以基本防御DDoS攻击。比如针对SYN FLOOD攻击,调整net.ipv4.tcp_max_syn_backlog参数控制半连接队列上限,避免连接被打满,调整net.ipv4.tcp_tw_recycle,net.ipv4.tcp_fin_timeout来控制tcp状态保持在TIME-WAIT,FIN-WAIT-2的连接个数;针对ICMP FLOOD攻击,控制IPTABLES来关闭和限制ping报文的速率,也可以过滤掉不符合RFC协议规范的畸形报文。但是这种方式只是在优化单台服务器,随着攻击资源和力度的逐渐增强,这种防护方式就显得力不从心了。
2. 专业anti-DDoS硬件防火墙
专业anti-DDoS硬件防火墙对功耗、转发芯片、操作系统等各个部分都进行了优化,用来满足DDoS流量清洗的诉求。 一般IDC服务提供商会购买anti-DDoS硬件防火墙,部署在机房入口处为整个机房提供清洗服务,这些清洗盒子的性能从单台百兆的性能,逐步发展到1Gbps、10Gbps、20Gbps、100Gbps或者更高,所提供的清洗功能也基本涵盖了3-7层的各种攻击(SYN-FLOOD、UDP-FLOOD、ICMP-FLOOD、ACK-FLOOD、TCP连接型FLOOD、CC攻击、DNS-FLOOD、反射攻击等)。
这种方式对IDC服务商来讲有相当高的成本,每个机房入口都需要有清洗设备覆盖,要有专业的运维人员来维护,而且并不是每个IDC机房都可以有同等的清洗防护能力,有的小机房上联可能只有20G带宽,且不具备复用这些清洗设备的能力。
3. 云时代的DDoS高防IP防护方案
在云时代,服务部署在各种云上,或者传统的IDC机房里面,他们提供的DDoS基础清洗服务基本上都很小,在遭受到超大流量DDoS攻击情况下,托管所在的机房并不能提供对应的防护能力,为了保护他们的服务不受影响,就会有直接“黑洞”。黑洞是指服务器受攻击流量超过IDC机房黑洞阈值时,IDC机房会屏蔽服务器的外网访问,避免攻击持续,影响整体机房的稳定性。
在这种情况下,像墨者安全的DDoS高防IP是通过建立各种大带宽的机房,提供整套的DDoS解决方案,将流量转到DDoS高防IP上进行防护,然后再把清洗后的干净流量转发回用户真正的源站。这种方式会复用机房资源,专业机房做专业的事情。简化DDoS防护的复杂度,以SaaS化的方式提供DDoS清洗服务,保障企业服务器的正常运行
慢请求攻击和防御方式
慢请求攻击是这几年新兴的攻击方式,通过大量的肉鸡发起大量的请求,每个肉鸡每秒只请求1次,大量肉鸡会导致服务器遭受大量的攻击请求,但每个源IP看着却没有异常行为。慢请求攻击示意图:
如何防御慢请求攻击?
方案1:主要是扩展后端业务服务器规模来死扛这种攻击,成本极高,但是能解决。
方案2:寻找专业的云安全服务提供商,解决这种攻击。
脉冲型攻击和防御方式
脉冲型的攻击可以在短时间内发起多次DDoS攻击,并且快速停止,快速打击,这对于很多云安全防御服务商来说就是噩梦。脉冲波型DDoS相对难以防御,因为其攻击方式避开了触发自动化的防御机制。在“脉冲波”持续过程中,被攻击者的网络陷入了瘫痪,而当网络恢复时,又发起新一波脉冲攻击,甚至能发起更多同步攻击,让被攻击者防不胜防。
如何防御脉冲型DDoS攻击?
脉冲型DDoS攻击防御难度极高,只需要100G-200G的攻击流量即可瘫痪T级别的防御,对于DDoS清洗设备的压力和可靠性要求巨大。没办法自己解决,只能依靠专业的云安全服务商解决,并且是有足够强大的研发能力和技术支撑能力的。