可编程网关抵御报文攻击的方法及装置、电子设备、芯片、存储介质与流程
本技术涉及网络安全,尤其涉及一种可编程网关抵御报文攻击的方法及装置、电子设备、芯片、存储介质。
背景技术:
1、随着云计算、大数据和互联网技术的快速发展,网络设备的规模和复杂性不断增加。可编程网关作为网络流量的重要接入设备,承担着协议报文处理和转发的关键职能。在网络运行过程中,恶意攻击者常利用协议特性或协议漏洞,通过发送大量恶意协议报文对网络设备发起洪水攻击(flooding attack)。当网络设备接收到海量协议报文时,系统内核中处理相关报文的协议队列极易被占满,导致cpu资源耗尽,进而使设备相关的协议处理功能瘫痪、服务中断。协议报文是指网络设备之间用于交换控制信息和路由信息的报文,包括但不限于arp报文、igmp报文、bgp报文和ospf报文等。这些协议报文需要上送至操作系统(cpu)进行处理。若大量恶意协议报文涌入,cpu需耗费大量资源处理这些报文,导致正常协议报文无法得到及时处理,最终造成网络功能异常。
2、现有技术中,针对协议报文攻击的防护方案主要围绕网络攻击防护与系统资源优化展开,采用硬件、内核、软件三级或其中一、二级协同的分层防御架构,通过基于阈值的动态流量管理机制实现对特定协议攻击的针对性处理。但其防护范围或能力有限,要么仅针对特定攻击类型,要么缺乏主动拦截机制,难以应对复合攻击或实时威胁;另一方面,在资源管理与系统协同上存在短板,或因流量统计维度单一导致误判,或因配置复杂引发资源冲突、处理延迟,且普遍缺乏与下游模块的联动机制,易造成防护不彻底或影响正常业务响应效率。尤其对于接入设备,现有防护方案多只考虑整机防护,当某个用户遭受攻击产生大量恶意流量时,对整机报文进行限速,大量报文会被丢弃,非攻击报文也会被大量丢弃,严重影响其他用户的正常数据流,难以满足日益复杂的网络安全需求。
技术实现思路
1、本技术实施例提供一种可编程网关抵御报文攻击的方法及装置、电子设备、芯片、存储介质及程序产品,以解决现有技术中整机限速导致所有用户流量被大量丢弃、无法实现用户级流量隔离防护的技术问题,提高网络设备抵御协议报文攻击的能力和网络服务的稳定性。
2、本技术实施例的技术方案是这样实现的:
3、本技术实施例提供一种可编程网关抵御报文攻击的方法,包括:
4、响应于业务订购,以业务为单位划分虚拟局域网vlan子接口,为不同业务分配独立的vlan子接口,使不同业务的流量在链路层相互隔离;
5、根据所述vlan子接口的vlan信息生成对应的虚拟路由转发vrf实例,每个所述vrf实例具有独立的路由表、转发表和安全策略,并形成彼此隔离的虚拟网络空间;其中,一个vlan子接口对应生成一个vrf实例,或者多个具有相同安全需求和业务特性的vlan子接口映射至同一个vrf实例;
6、为每个所述vrf实例分别设置独立的协议报文流量控制策略,所述协议报文流量控制策略包含根据业务需求、网络带宽分配以及风险承受能力而配置的协议报文流量阈值;
7、对各所述vrf实例内具有设定字段特征的协议报文的上报速率进行统计,并进行速率计算,实时监测各所述vrf实例内的协议报文流量;
8、响应于所述vrf实例的协议报文流量超过所述协议报文流量阈值,对相应的vrf实例内超额的协议报文执行流量控制,将该vrf实例内的恶意流量限制在该vrf实例内部,阻断攻击流量向其他vrf实例扩散。
9、作为一种实现方式,所述方法还包括:
10、采集各接口和/或各vrf实例内协议报文上报至操作系统的速率数据,所述速率数据包括:单位时间内上报至操作系统的协议报文数量、数据量大小以及报文类型;
11、将采集到的所述速率数据实时上报至控制台,并输出协议报文上报速率的变化趋势;
12、响应于确定协议报文上报速率出现异常波动,判定存在攻击风险,并通知运维系统。
13、作为一种实现方式,所述方法还包括:
14、实时统计每个vrf实例内协议报文上报至操作系统的数量及大小,以及被丢弃报文的数量、大小和丢弃原因;
15、其中,对于因流量超出协议报文流量阈值而被丢弃的报文,统计其所属协议类型、源ip地址和目的ip地址;对于已上报至操作系统的报文,记录其处理时间和处理结果;
16、以图表和/或数据报表形式展示各vrf实例报文上送和丢弃的情况。
17、作为一种实现方式,所述方法还包括:
18、查找各vrf实例的协议报文流量处理状态,根据所述报文处理统计上报的统计数据,定位存在异常流量处理情况的vrf实例;
19、根据定位结果,利用可编程流水线,动态调整对应vrf实例的协议报文流量控制策略,所述调整包括:降低或提高所述协议报文流量阈值、增加或减少设定协议报文的过滤规则。
20、作为一种实现方式,所述方法还包括:
21、以管道形式处理报文的解析及转发;在管道的入口和出口分别设置不同的报文处理流程,以对报文统计规则进行调整,对告警阈值进行动态配置,以及对限速策略进行实时更新。
22、作为一种实现方式,所述协议报文包括地址解析协议arp报文、互联网组管理协议igmp报文、边界网关协议bgp报文和开放式最短路径优先ospf报文中的一种或多种;所述协议报文攻击包括洪水攻击。
23、作为一种实现方式,所述根据所述vlan子接口的vlan信息生成对应的虚拟路由转发vrf实例之后,所述方法还包括:
24、通过各vrf实例独立的转发表实现不同业务流量的转发路径分离,以对业务流量的转发面进行隔离;
25、通过各vrf实例独立的路由表和安全策略实现控制信令的相互隔离,以对业务流量的控制面进行隔离。
26、本技术实施例提供的可编程网关抵御报文攻击的装置,包括:
27、查找单元,用于响应于接收到客户端发送的原始报文,根据所述原始报文的五元组信息查找本地会话表项;
28、创建单元,用于响应于未匹配到包含五元组信息的会话,根据所述原始报文匹配的网络应用类型,创建会话并分配会话标识,对所述原始报文执行全网络地址转换fullnat,将源ip和源端口转换为所述网元的出接口ip和随机端口,将目的ip转换为后端服务节点的目标ip,目的端口保持不变;
29、构建单元,用于利用设定的集群会话协议csp封装转换后的报文,构建csp头部,将转换后的报文的传输层头部及数据作为csp数据部分,而生成csp报文;所述csp头部至少包含源端口字段、目的端口字段、协议号字段、标志字段、类型字段、动作字段、网元id字段和长度字段;在所述csp头部之前添加ip头部,并将所述ip头部的协议号字段设置为所述csp协议的协议号;将所述csp头部中的源端口和目的端口分别设置为转换后报文的源端口和目的端口,协议号字段设置为所述原始报文的传输层协议号;所述csp数据部分携带所述原始报文的原始会话信息以及探测ip列表,所述探测ip列表包含一个或多个后端服务节点的ip地址;
30、发送单元,用于将所述csp报文发送至所述探测ip列表中的目标后端服务节点,使所述目标后端服务节点根据所述csp头部和所述csp数据创建或更新本地会话信息,并返回csp应答报文;
31、处理单元,用于响应于接收到所述csp应答报文,所述网元解析所述csp应答报文中的csp头部和csp数据,提取会话信息并创建本地会话表项,卸载所述csp应答报文中的csp头部,将解封装后的原始应答报文转发至所述客户端。
32、作为一种实现方式,所述csp头部还包括保留字段、探索总数pnum字段和探索索引indx字段,所述pnum字段用于表示所述探测ip列表的总个数,所述indx字段用于表示当前探测的索引位置;所述目标后端服务节点在根据所述csp报文创建会话时,若在本地未匹配到会话,则根据所述pnum和indx字段依次向所述探测ip列表中的其他节点发送会话探索请求,直至命中已有会话或完成全部探测。
33、作为一种实现方式,所述类型字段与所述协议号字段共同决定所述csp数据部分的内容类型;所述类型字段包括以下一种或多种:
34、第一类型值,表示所述csp数据部分包含由源ip、目的ip、源端口和目的端口组成的四元组信息;
35、第二类型值,表示所述csp数据部分包含由ip和端口组成的二元组信息;
36、第三类型值,表示所述csp数据部分为空,用于会话查询。
37、作为一种实现方式,所述动作字段用于指示所述网元或后端服务节点对会话信息的替换方式;
38、所述动作字段包括:
39、第一动作值,表示将当前会话的四元组整体替换为所述csp数据中携带的四元组;
40、第二动作值,表示仅将当前会话的源ip和源端口替换为所述csp数据中携带的源ip和源端口;
41、第三动作值,表示仅将当前会话的目的ip和目的端口替换为所述csp数据中携带的目的ip和目的端口。
42、作为一种实现方式,所述标志字段包括第一标志位,所述第一标志位用于指示接收到csp报文的网元在处理后需要发送会话更新消息;在确定携带所述第一标志位的csp报文且在所述网元本地未匹配到会话时,根据所述csp头部中的网元id字段获取原始会话所在网元的标识,向对应网元发送包含当前会话信息的会话更新消息,以同步会话状态。
43、作为一种实现方式,所述构建单元,还用于:将所述转换后的报文的传输层头部及数据作为csp数据部分时,若封装后的总长度超过路径最大传输单元mtu,则将所述csp头部和所述csp数据部分与原始报文分开发送,分别独立路由至同一目标后端服务节点,使所述目标后端服务节点根据所述csp头部中的会话标识关联分开发送的原始报文。
44、作为一种实现方式,处理单元,还用于:
45、响应于网元接收到因集群扩缩容或其他网元故障被分发的报文,接收后续报文并查找本地会话表项;若未匹配到会话,构造csp查询报文,将所述csp查询报文的类型字段设置为第三类型值,且不携带csp数据部分,将所述csp查询报文发送至目标后端服务节点,以查询所述后续报文对应的会话信息;
46、接收所述目标后端服务节点返回的携带完整会话信息的csp应答报文;
47、根据所述csp应答报文创建本地会话,并将所述后续报文解封装后转发至对应的后端服务节点或客户端;
48、其中,若所述后续报文为入方向报文,则在创建会话后直接转发;若所述后续报文为出方向报文,则在创建会话后将应答报文转发至客户端。
49、本技术实施例提供的可编程网关抵御报文攻击的装置,包括:
50、业务隔离单元,用于响应于业务订购,以业务为单位划分虚拟局域网vlan子接口,为不同业务分配独立的vlan子接口,使不同业务的流量在链路层相互隔离。
51、vrf生成单元,用于根据所述vlan子接口的vlan信息生成对应的虚拟路由转发vrf实例,每个所述vrf实例具有独立的路由表、转发表和安全策略,并形成彼此隔离的虚拟网络空间;其中,一个vlan子接口对应生成一个vrf实例,或者多个具有相同安全需求和业务特性的vlan子接口映射至同一个vrf实例。
52、策略配置单元,用于利用可编程芯片的可编程流水线,为每个所述vrf实例分别设置独立的协议报文流量控制策略,所述协议报文流量控制策略包含根据业务需求、网络带宽分配以及风险承受能力而配置的协议报文流量阈值。
53、流量监测单元,用于利用所述可编程芯片的计数器模块,对各所述vrf实例内具有设定字段特征的协议报文的上报速率进行统计,并进行速率计算,实时监测各所述vrf实例内的协议报文流量。
54、流量控制单元,用于响应于所述vrf实例的协议报文流量超过所述协议报文流量阈值,对相应的vrf实例内超额的协议报文执行流量控制,将该vrf实例内的恶意流量限制在该vrf实例内部,阻断攻击流量向其他vrf实例扩散。
55、作为一种实现方式,所述装置还包括:
56、风险判断单元,用于采集各接口和/或各vrf实例内协议报文上报至操作系统的速率数据,所述速率数据包括:单位时间内上报至操作系统的协议报文数量、数据量大小以及报文类型;
57、将采集到的所述速率数据实时上报至控制台,并输出协议报文上报速率的变化趋势;
58、响应于确定协议报文上报速率出现异常波动,判定存在攻击风险,并通知运维系统。
59、作为一种实现方式,所述装置还包括:
60、数据统计单元,用于实时统计每个vrf实例内协议报文上报至操作系统的数量及大小,以及被丢弃报文的数量、大小和丢弃原因;
61、其中,对于因流量超出协议报文流量阈值而被丢弃的报文,统计其所属协议类型、源ip地址和目的ip地址;对于已上报至操作系统的报文,记录其处理时间和处理结果;
62、以图表和/或数据报表形式展示各vrf实例报文上送和丢弃的情况。
63、作为一种实现方式,所述装置还包括:
64、调整单元,用于查找各vrf实例的协议报文流量处理状态,根据所述报文处理统计上报的统计数据,定位存在异常流量处理情况的vrf实例;
65、根据定位结果,利用可编程流水线,动态调整对应vrf实例的协议报文流量控制策略,所述调整包括:降低或提高所述协议报文流量阈值、增加或减少设定协议报文的过滤规则。
66、作为一种实现方式,所述装置还包括:
67、解析单元,用于以管道形式处理报文的解析及转发;在管道的入口和出口分别设置不同的报文处理流程,以对报文统计规则进行调整,对告警阈值进行动态配置,以及对限速策略进行实时更新。
68、作为一种实现方式,所述协议报文包括地址解析协议arp报文、互联网组管理协议igmp报文、边界网关协议bgp报文和开放式最短路径优先ospf报文中的一种或多种;所述协议报文攻击包括洪水攻击。
69、作为一种实现方式,所述流量控制单元,还用于:通过各vrf实例独立的转发表实现不同业务流量的转发路径分离,以对业务流量的转发面进行隔离;通过各vrf实例独立的路由表和安全策略实现控制信令的相互隔离,以对业务流量的控制面进行隔离。
70、本技术实施例提供的电子设备,包括:处理器和存储器,该存储器用于存储计算机程序,所述处理器用于调用并运行所述存储器中存储的计算机程序,执行上述的可编程网关抵御报文攻击的方法。
71、本技术实施例提供的芯片,包括:处理器,用于从存储器中调用并运行计算机程序,使得安装有所述芯片的设备执行上述的可编程网关抵御报文攻击的方法。
72、本技术实施例提供的计算机可读存储介质,用于存储计算机程序,所述计算机程序使得计算机执行上述的可编程网关抵御报文攻击的方法。
73、本技术实施例提供的计算机程序产品,包括计算机程序指令,该计算机程序指令使得计算机执行上述的可编程网关抵御报文攻击的方法。
74、本技术实施例具有以下有益效果:通过vlan子接口划分实现业务流量的链路层隔离,再通过vlan到vrf的映射实现从链路层隔离到网络层隔离的升级,形成了从二层到三层的完整虚拟网络空间隔离;通过为每个vrf实例独立设置协议报文流量阈值和独立的限速策略,实现了vrf级别的协议报文流量控制,当某一vrf实例遭受协议报文洪水攻击时,只有该vrf实例内的协议报文会被限速或丢弃,其他vrf实例的协议报文流量不受任何影响,将恶意流量牢牢限制在该vrf实例内部,阻断攻击流量向其他vrf实例乃至整机扩散的路径;利用可编程芯片的可编程流水线和计数器模块,实现了协议报文流量的实时监控和动态策略调整,能够灵活适应不断变化的网络环境和攻击手段。相较于现有技术中整机统一限速导致所有用户流量被大量丢弃的方案,本技术实施例能够有效保障未受攻击用户的正常业务运行,显著提升了网络设备的稳定性和安全性。
版权声明:本站专利文献数据主要来源于国家知识产权局等公开渠道,由 技术新讯 进行整理汇编。页面设计及数据汇编的著作权归本站所有。全部内容仅供个人学习、科研评估与技术交流参考,严禁用于任何商业用途(包括但不限于直接生产制造、技术转让、倒卖数据等)。
免责条款:专利技术具有时效性,本站不对资料的绝对准确性、完整性和可实施性提供任何明示或暗示的担保。因参考本站内容造成的直接或间接损失,本站不承担相关法律责任。若您认为本站内容有侵权问题,请及时提供权属证明与我们联系,本站将在核实后依法处理。反馈意见:yyfuon@163.com