BGP协议实现DDoS防御的新思路

2020-01-06 10:21马新康
网络安全技术与应用 2020年1期
关键词:状态机脆弱性网关

◆马新康

BGP协议实现DDoS防御的新思路

◆马新康

(杭州极致互联网络科技有限公司 浙江 310000)

近年来,互联网技术的迅速发展带动了边界网关协议(BGP协议)的发展与应用,但是,在其使用过程中,网络攻击问题频发,其中以分布式拒绝服务攻击(DDoS)较为常见,严重影响了BGP协议的稳定性及安全性使用,对此,就需要采取科学策略防范DDoS攻击。本文先简要介绍BGP协议,对其脆弱性进行分析,并指出当前针对BGP协议路由器的DDoS攻击手段,深入探讨了DDoS防御新思路,提出可以通过拓展型访问列表、连接模式匹配和默认路由方式来控制TCP连接方向,分别适用于不同的场景,这对提高BGP协议运行安全性具有重要意义。

边界网关协议;脆弱性;分布式拒绝服务攻击;防御方法;TCP连接方向

BGP协议是Internet中应用最广泛的自制系统间路由协议,是通过面向连接的TCP协议保障路由信息的可靠转发。BGP这一网关协议可以使数据在多条线路上传播,当遇到障碍时,可以通过自动切换寻找到最优路径,从而实现数据的快速传播。而且通过使用BGP协议,可以将IDC网络与其他运营商互联,既保证了数据的传输的互通性,又可以实现单IP多线路,保证了不同互联运营商的用户访问,这些都是单独的双IP双线无法比拟的。虽然BGP协议有着多方面的技术优势,但是实际使用过程中仍面临着DDoS攻击问题,导致其安全性大打折扣[1]。因此,如何防御DDoS攻击,确保BGP路由协议的安全使用,已经成为了当下网络领域的研究热点。

1 BGP协议简述

BGP属于外部或域间路由协议,是唯一一个用来处理像因特网大小的网络协议,也是唯一能够妥善处理好不相关路由域间的多路连接的协议。边界网关协议(BGP协议)是以传输控制协议为基础的一种外部网关路由协议,可支持不同自治系统之间路由信息的交换,在不相关路由域间的多路连接处理方面有着良好的应用效果。BGP的本质为路径向量协议,兼具链路状态算法和距离向量两者的部分特点,在使用过程中,对于自治域的运行协议并未做出严格限制,其底层网络拓扑较为灵活,可借助UPDATE消息交换的信息来建立自治域连接图[2],并以传输控制协议(TCP)为基础,完成传输机制的构建,实现信息在BGP邻居间的交换。邻居关系的建立,是信息交换的前提,完成邻居管理的构建后,还需利用周期的存活检测机制信息判断BGP邻居是否能够正常访问。最后进行BGP路由表的交换,如果路由发生变化,则会更新路由表原有数据[3]。

2 BGP协议的脆弱性分析

BGP协议优势明显,但是其本身也存在一定的脆弱性,具体包括有限状态机脆弱性、配置协议脆弱性和TCP脆弱性等几方面。

2.1 有限状态机脆弱性

一方面,当网络遭到恶意攻击时,BGP协议报文则可能被篡改,包括OPEN报文、UPDATE报文等,无法保证其准确性和有效性[4]。当BGP报文出错后,有限状态机也会发生出错事件,已建立的连接关系将会被中断,此时有限状态机处于IDLE状态。另一方面,通过删除、伪造等方法,会使BGP原始报文发生变化,改变其到达对等体的时间点,也会导致有限状态机出错,无法维持原有的连接关系。

2.2 配置协议脆弱性

管理员在对BGP进行控制时,配置协议起到了关键作用,而配置协议自身的脆弱性,会对BGP路由协议造成较大威胁[5]。当BGP发言者建立连接关系后,如果出现自动停止事件,则正常连接将会被中断,相关路由也会删除,通过该方式对网络进行恶意攻击,会导致BGP连接的中断。同时,在BGP路由协议中,用到了2个可选计时器及5个计时器,如果出现配置错误现象,则整个BGP协议的正常使用都会受到较大影响。

2.3 TCP脆弱性

BGP协议的运行,是以TCP作为基础的,所以TCP的脆弱性也是导致BGP脆弱性的主要原因之一。TCP脆弱性具体体现在以下几方面:第一,对FIN消息、RST消息进行伪造,使TCP的正常连接出现中断,则BGP将无法建立连接关系。第二,对ACK信息、SYN信息进行伪造,与原始数据信息出现冲突,则连接关系可能会被中断,影响BGP协议运行的安全性[6]。第三,以179作为接收端口,通过大量数据包进行DoS攻击,过多的数据包将会影响路由器处理效率,使其处于负荷运行状态,进而导致BGP无法正常运行。

3 现有针对BGP协议路由器的DDoS攻击手段

图1 DDoS攻击模式

图1为DDoS的攻击模式示意图,而在BGP路由协议中,常见的DDoS攻击手段主要有以下几种:第一,使当前对等对话发生中断,与其相关的路由将会被删除,进而完成对路由器的攻击。该攻击方式与有限状态机脆弱性所产生的影响大致相同,不仅原有的正常连接发生中断,而且路由被错误删除后,也会因为继续传递而对其他网络路由造成影响,引发路由中断问题。第二,在建立连接后,使BGP报文保持正常,对UPDAPE报文进行修改,这样在安装路由时将会出现错误现象,以此来实现对BGP协议路由器的攻击[7]。例如,攻击者通过对待撤销路由域进行修改,将其中的可用路由删除掉,或者通过withdrawn报文的重放,影响路由的第二次建立。并且,withdrawn虚假信息经发送后,部分合法路由将会被撤销,BGP协议路由器受到DDoS攻击。

4 DDoS防御的新思路

对于DDoS攻击,当前较为常见的防御方法包括识别源地址、增设前端防火墙、隐藏互联地址等,但是这些方法存在运营成本高、扩展性差等缺点,对此,就需要探索新的思路,有效防范和抵御DDoS攻击。例如在建立BGP邻居时,通过对TCP建立方向进行有效控制,可减少有效链接请求次数,进而避免DDoS占用过多系统资源,对BGP协议起到保护效果,所以,对于通过控制TCP连接方向加以控制可以有效预防DDoS攻击。

图2 拓扑结构

4.1 通过拓展型访问列表控制TCP连接方向

对于TCP协议来讲,端口号数据包的过滤,可借助拓展型访问列表实现。在图2所示的拓扑结构中,所有向A端互联网接口端发起的TCP连接将会被直接拒绝,而B端接口输出的一侧可随意建立TCP连接,不受拓展型访问列表的影响。根据拓扑结构A端中的消除故障信息可知,如果TCP连接请求是从A端发出的,则会被拒绝,无法建立连接关系,如果TCP连接请求从B端发出,则会建立连接关系,然后对A端口进行访问。拓展型访问列表灵活性较强,配置较为规范,维护难度较小,可根据BGP协议实际应用情况部署,但是拓展型访问列表对数据包有着较高要求,需要通过拆包操作检查所有数据包,会占据CPU资源,而CPU资源占用情况与EACL所包含的过滤条目有着直接关系,如果过滤条目较多,则会对路由器的转发性能造成影响,不利于BGP协议的实现。所以,通过拓展型访问列表控制TCP连接方向的方法,在中低端设备上并不适用。

4.2 通过连接模式匹配控制TCP连接方向

连接模式是从BGP邻居的建立角度来讲的,属于一种内置安全方法,包括主动和被动两种情况。从B端分析,当采用主动模式时,TCP连接请求从A端发出后,是无法与B端建立连接关系的,将会被拒绝,与B端179端口关闭后的效果是相同的,其作用等同于拓展型访问列表控制TCP连接方向。而对于两个BGP邻居来讲,要想顺利建立连接关系,则应分别采用被动连接模式和主动连接模式,确保两者之间能够相互匹配。通过连接模式匹配对TCP连接方向进行控制,与拓展型访问列表检查数据包存在显著不同,该方法可以对BGP邻居做出针对性限制,不会占用过多CPU资源。但是连接模式匹配控制TCP连接方向的灵活性较差,如果主机的网络接口较多、链路方式为广播式时,则所有BGP邻居都需进行连接模式的匹配,因此,该防御方式仅适用于企业内网及企业网互联中。

4.3 通过默认路由方式控制TCP连接方向

使用默认路由对TCP连接方向进行控制时,将图1中的企业网作为末端网络,其仅有的出口网关为A,从A端指向B端,是经过默认路由实现的,反之,从B端指向A端,则需要借助静态路由完成。BGP邻居关系的建立时,在最开始环节,TCP连接失败的告警信息会传递至A端,而TCP的连接关系则是在B端建立的。由此可知,通过默认路由也能够实现对TCP连接方向的控制,进而达到防御DDoS攻击的效果。应注意的一点是:在网络拓扑结构中,端口A和端口B之间虽然存在默认路由,但是因其自身所具有的防环机制,是无法通过主动模式建立TCP连接关系的,也无法收到路由告警信息。当存在TCP连接请求时,在被动模式下,默认路由可对其做出相应回应,建立TCP连接关系。对此,在使用BGP路由协议时,如果网络拓扑结构中的一端配置有默认路由,则TCP连接的建立,必然是从另一端开始的,这种方式也可以控制TCP连接方向。但在具体应用过程中,端口中是否配置有默认路由,ISP是很难做出准确判断的,所以,使用该方法防御DDoS攻击并非是完全可靠的,存在一定的风险性,建议将其应用于实验网络或者教学网络中。

5 总结

通过控制TCP连接方向对DDoS攻击进行防御,不仅有着较强的灵活性特点,而且整体运行成本较低,不会造成故障点的增多,相较于识别源地址、增设前端防火墙、隐藏互联地址等传统防御方法,有着多方面优势。在实际应用时,可从拓展型访问列表、连接模式匹配、默认路由方式三方面考虑,对TCP连接方向进行控制,以此来提高BGP协议的安全性。

[1]蒋磊.BGP路由协议的基本原理分析[J].江苏科技信息,2018(31):40-42.

[2]林思敏.边界路由器BGP协议的脆弱性分析[J].无线互联科技,2016(15):10-11.

[3]王娜,杜学绘,王文娟,等.边界网关协议安全研究综述[J].计算机学报,2017(7):1626-1648.

[4]王琴.一种基于SDN架构的海量DDOS攻击解决方案研究[J].现代信息科技,2017(5):89-91.

[5]游建平.边界网关协议分布式设计与实现[J].保密科学技术,2016(4):38-41.

[6]陈石,刘金生.BGP协议防御DDoS攻击的方法浅析[J].微型机与应用,2016(24):5-7.

[7]杭长山.云环境下分布式拒绝服务攻击的特点及防御技术研究[J].电脑知识与技术,2017(6X):29-30.

猜你喜欢
状态机脆弱性网关
工控系统脆弱性分析研究
基于FPGA的工业TSN融合网关设计
一种主从冗余网关的故障模式分析与处理
FPGA状态机综合可靠性探究 ①
基于有限状态机的交会对接飞行任务规划方法
基于PSR模型的上海地区河网脆弱性探讨
基于Spring StateMachine的有限状态机应用研究
天地一体化网络地面软网关技术及其应用
基于DWT域的脆弱性音频水印算法研究
车联网网关架构的设计