随着互联网行业的迅猛发展,越来越多的业务都从线下走到了线上。互联网给大家生活带来便利的同时也面临着防护自身安全的各种挑战。DDoS是网络中最常见的攻击之一,它通过阻塞出口带宽、消耗服务器性能等方式瘫痪目标网络,造成业务中断,并带来直接经济损失。绿盟科技抗DDoS解决方案在运营商、金融、互联网以及中小企业中的广泛应用使其深入了解客户需求,充分把握业务场景,不断发展创新,并于2017年8月推出了抗DDoS与BGP FlowSpec融合的创新解决思路,为DDoS攻击防护的现在和将来注入新的动力。
BGP Flow Spec背景介绍
最新的路由器除了具备流量转发的功能外,还可以通过BGP Flow Spec对流量进行分类、限速、过滤和重定向等操作,这对防御DDOS攻击非常重要。RFC 5575中定义了解码Flow Specification(简称Flow Spec)的标准程序,使BGP路由具备更为丰富的属性并可执行限速、过滤和重定向等行为。
通过利用Flow Spec,路由转发表可以实现类似ACL和防火墙的功能,对DDoS攻击进行快速过滤。与单一的路由相比,Flow Spec对路由条目进行了更加详细的定义,并基于已有的数据信息进行有效延伸。
Flow Spec定义了BGP路由中的五元组(源目IP、源目端口和协议)等12个属性,使其可以满足多种场景下对流的控制和处理,为使用者提供了一种灵活高效的防DDoS攻击方法。
Flow Spec可以根据如下条件定义一个流:
Destination prefix 数据包目的地址/前缀
Destination-port number TCP/UDP的目的端口号
desp number 可以匹配数据包的QOS类型
fragment type 分片标志位
icmp-code number ICMP代码类型
icmp-type number ICMP类型
Packet-length number IP数据包的总长度
port number TCP/UDP的端口号。包括了源和目的端口号
protocol number 协议号
source prefix 数据包源地址/前缀
Source-port number TCP/UDP的源端口号
tcp-flag type TCP标志位
传统抗DDoS解决方案的缺陷
传统的抗DDoS解决方案主要分为两种,一是部署专业的抗DDoS产品对攻击流量进行过滤和清洗,另一种是通过防火墙或路由设备等对大流量进行压制。下面我们将分别介绍这两种方案的原理和优劣势。
方案 |
防护原理 |
优势 |
劣势 |
专业抗DDOS设备 |
防护设备部署在网络边界;流量经过业务带宽牵引到防护设备上,经过清洗后再回注到链路中。 |
专业性强,灵活应对各种DDoS攻击类型,清洗攻击的同时保证正常业务的连续性 |
大流量节点部署时,设备扩容成本高。 |
路由压制 |
通过空路由、ACL等方式对攻击流量进行丢弃或限速。 |
节省防护设备采购成本。 |
目的IP空路由严重影响正常业务; ACL难以维护; |
从上面的对比可以看出,两种方案都有各自的弊端,所以我们的目标是将方案中的劣势及影响降到最低。首先,防护设备的清洗能力是有限的,所以使产品性能利用最大化、减少扩容成本是我们的目标。其次,通过目的IP空路由进行流量压制是弃车保帅的做法,对业务的影响显而易见。我们希望通过拆分流量,区别攻击与业务,对攻击流量进行压制的同时保障业务流量的通行。
BGP Flow Spec抗D的现在
从绿盟科技近两年发布的DDoS攻击态势报告来看,DDoS攻击的频率和流量峰值都在快速增长。要想保障业务的安全性,侥幸心理绝对要不得。建设抗DDoS防护系统不可能一蹴而就,绿盟科技在致力于产品功能优化、算法创新的同时也在不断完善防护方案,提出更多的防护思路和建议。
对于DDoS的防护,无论是使用哪一种创新的方案和技术,本地防护设备都是不能免的。为什么呢?因为1)小流量攻击频发,本地防护更符合长远利益;2)云端防护策略可控性较弱,缺乏定制化防护策略,安全体验不足;3)肉鸡攻击需要灵活调整策略,本地响应更快捷。基于此,绿盟抗拒绝服务攻击解决方案在防护设备和路由设备的基础上引入了BGP Flow Spec的技术,在不增加额外硬件成本和服务采购的基础上,结合检测设备的分析数据制定BGP Flow Spec策略,使防护设备的资源利用了最大化,缓解防护扩容的巨额投入。
从流量压制来看,BGP Flow Spec中支持五元组等12种属性,策略更精细,避免了空路由策略造成的大范围误伤。例如,将到达目的IP 10.10.10.1,源端口为5534的TCP流量进行丢弃,其他流量正常转发。通过这种方法最大限度保障了清洗过程对正常流量的影响,确保业务的延续性。从引流防护来看,原有的牵引技术只能基于目的IP进行引流,把所有到达目的IP的流量都牵引到防护设备上进行过滤,然后回注到网络中。使用BGP Flow Spec以后,可以只牵引到达某目的IP流量中的指定协议的流量,如只牵引到达目的IP 192.168.12.1的TCP流量,则达到目的IP 192.168.12.1的UDP流量仍然按照原有路径进行转发。一定程度上缓解了防护设备的性能压力,使防护设备能够最大限速的清洗更多的目标业务。
此外,使用BGP Flow Spec对路由及流量的控制与ACL项目控制更为灵活,策略维护成为低,提高了运维效率。
BGP Flow Spec抗D的将来
前面我们提到,当DDoS攻击超过出口带宽时会造成防护失效。这种场景下需要企业、IDC等节点与更高级别的运营商进行联动,实现远端大流量压制以后再对攻击流量进行清洗。目前运营商提供的压制方案主要是根据自身经验的基本判断对攻击流量进行过滤,无法满足客户定制化的策略配置和维护管理。在未来,当运营商能够提供向企业和IDC提供策略调整服务,允许子节点用户通过BGP Flow Spec更新其目的IP范围内的路由策略,就可以有效解决出口带宽堵塞的问题。一方面使DDoS攻击得到快速的响应和防护,另一方面自主定义的路由策略更贴合业务要求,使防护更加合理。
小结
将BGP Flow Spec与抗DDoS的设备结合是一种全新的尝试,国内和国外的运营商也都在积极探索。其丰富的属性和安全特性给运营商、IDC以及企业用户都带来了极大的好处,建设投入成本低,但是对网络和安全带来的提升却是巨大的。不过,目前只有Juniper和Cisco等部分路由器支持BGP Flow Spec功能,因此使用前提受到了一定限制。