有效
一种判断网络资产互访安全性的增量分析方法、系统及存储介质
王治华、陈宏福、费思源、高峰、金明辉、胡友琳、苏凡、韩政
国网上海市电力公司
摘要
本发明公开了一种判断网络资产互访安全性的增量分析方法、系统及存储介质,其根据预变更的配置信息构建预变更网络转发图模型和反向的预变更网络转发图模型;根据预变更网络转发图模型和基础网络转发图模型寻找转发行为发生变化的接口,并构建资产接口对互访关系可能发生变化的变更集合;然后对变更集合中的每个源资产接口采用深度优先搜索算法,得到新的可达关系与报文空间,最后基于新的可达关系与报文空间检查网络资产新互访关系的安全性。本发明显著降低了动态网络场景下的验证时延与计算资源消耗,实现了验证效率与网络变更频率的同步适配。
1.一种判断网络资产互访安全性的增量分析方法,其特征在于,所述方法包括以下步骤:S1、判断是否为首次执行:根据基础网络配置和网络拓扑,查找是否存在对应的基础网络转发图模型与可达映射表,如果存在则跳到S4,否则执行S2;S2、建立基础网络转发图模型:获取基础网络配置和网络拓扑,计算网络转发表,并建立基础网络转发图模型;S3:建立可达映射表:针对基础网络转发图模型,选取每一个资产接口作为起始节点遍历,将初始报文空间设置为全空间,在转发图上采用深度优先搜索算法遍历所有接口,计算各起始节点的可达资产接口集合,并依据可达路径更新可达映射表,形成接口与可达资产接口对之间的对应关系;S4、建立预变更网络转发图模型并寻找转发行为发生变化的接口;根据预变更的配置信息,生成新的网络配置、网络拓扑,根据新的网络配置和网络拓扑,重新执行S2,生成预变更网络转发图模型以及反向的预变更网络转发图模型;然后根据预变更网络转发图模型和基础网络转发图模型确定转发行为发生变化的接口;S5、构建资产接口对互访关系可能发生变化的变更集合;对于变更接口与删除接口,在可达映射表中搜索当前接口对应的可达资产接口对,添加到变更集合中;针对新增接口,则基于反向的预变更网络转发图模型,对每一个转发行为发生变化的接口,执行以下操作:从该新增接口出发,在反向预变更转发图上进行深度优先搜索算法,计算出所有可达的源资产接口集合,并将该源资产接口集合添加到变更集合中;S6、重新计算变更集合中对应的网络资产互访关系并生成新的可达关系与报文空间;针对S5中确定的变更集合中的每个源资产接口,采用深度优先搜索算法,得到新的可达资产接口对和路径信息,将其与原可达资产接口对和路径信息叠加,得到新的可达关系与报文空间;S7、检查网络资产新互访关系的安全性;针对新的可达关系与报文空间中的资产接口连通性信息,与用户安全配置策略进行对比,确认资产接口之间连通性符合安全需求;如果满足安全性要求,则下发预变更配置,更新预变更网络转发图模型为最新的基础网络转发图模型,并根据新的可达关系与报文空间更新可达映射表;如果不满足,则发出警报。
2.根据权利要求1所述的一种判断网络资产互访安全性的增量分析方法,其特征在于,所述S2中,根据网络设备的网络转发表,基于最长前缀匹配原则,计算出每个出接口可能转发的报文空间,并且将出接口相同的报文空间进行合并,代表该出接口能转发的全部报文空间,最后根据计算出的报文空间,建立基础网络转发图模型;所述基础网络转发图模型以有向图为基础、接口为点、边表示接口之间的拓扑连接与转发关系,且边上带有报文空间约束。
3.根据权利要求1所述的一种判断网络资产互访安全性的增量分析方法,其特征在于,所述S2具体如下:S2.1、生成网络转发表;调用网络仿真器,将基础网络配置和网络拓扑作为输入,生成网络中所有设备在各个虚拟路由环境下的网络转发表;S2.2、在基础网络转发图模型的构建过程中,对网络中的路由器、交换机设备内部的建模操作如下:S2.2.1、分析每个VRF的网络转发表,基于最长前缀匹配原则,计算每个可能出接口能转发的报文空间;S2.2.2、以该VRF对应的所有接口作为入接口,将该VRF的网络转发表中使用到的每个接口作为出接口,将任意一个入接口连接到这个出接口,且这条边上的报文空间约束为网络转发表中计算出来该出接口的报文空间;如果这个出接口已经计算过,就将新计算出来的报文空间与之前计算出来的报文空间取并集;S2.2.3、如果存在一个出接口为另一个VRF,重新执行S2.1.1;否则执行2.3;S2.3、在基础转发图模型的构建过程中,对网络中的防火墙设备内部的建模操作如下:S2.3.1、分析每个vsys的网络转发表,基于最长前缀匹配原则,计算每个可能出接口能转发的报文空间;S2.3.2、以该vsys对应的所有接口作为入接口,针对该vsys的网络转发表中使用到的每个接口作为出接口,将任意一个入接口连接到这个出接口,且这条边上的报文空间约束为网络转发表中计算出来该出接口的报文空间;如果这个出接口已经计算过,就将新计算出来的报文空间与之前计算出来的报文空间取并集;S2.3.3、如果存在一个出接口为另一个vsys,重新执行S2.3.1;否则执行S2.4;S2.4、在基础网络转发图模型的构建过程中,对跨设备边的建模操作如下:对于属于不同设备的接口(intf1, intf2),边上的报文空间为intf1出方向的ACL允许报文空间与intf2入方向ACL允许报文空间的交集;S2.5、在基础网络转发图的构建过程中,创建每条边的同时,为每条边创建反向的、有相同报文空间的边,构造反向基础转发图。
4.根据权利要求1所述的一种判断网络资产互访安全性的增量分析方法,其特征在于,所述S3具体如下:S3.1、深度优先搜索过程的具体操作为:以任一资产接口作为起始节点,建立路径栈,用于记录当前遍历路径上的接口及其报文空间信息,将起始节点及其初始报文空间入栈,设置当前节点为起始节点;S3.1.1、首先获取当前节点在转发图中的所有出边信息,根据每条出边对应的报文空间确定当前节点的下一跳节点集合;对于每个下一跳节点,执行以下操作:获取当前节点的报文空间以及指向当前节点出边的报文空间,计算两者的交集,作为该下一跳的传播报文空间;若交集为空,则跳过该节点的处理;若交集非空,则继续执行S3.1.2;S3.1.2、判断该下一跳节点是否为资产接口:若是资产接口且与起始节点不同,则表明从起始节点可达该资产接口;此时在可达映射表中新增或更新对应条目,将路径栈中所有接口与起止资产接口对进行关联;若该节点不是资产接口,则继续执行S3.2的递归搜索过程;S3.2、将当前报文空间更新为已有报文空间与出边报文空间的交集,并以该下一跳节点为新的当前节点,递归执行深度优先搜索过程;S3.3、当当前节点的所有下一跳节点均遍历完成后,从路径栈中移除该节点,实现深度优先搜索的回溯,继续处理上一级节点的其他未访问分支;S3.4、在完成所有资产接口的深度优先遍历后,形成初始可达映射表;若多个可达资产接口对具有相同的源资产接口,将这些目标资产接口合并为一个目标资产集合。
5.根据权利要求1所述的一种判断网络资产互访安全性的增量分析方法,其特征在于,所述寻找转发行为发生变化的接口具体如下:针对预变更网络转发图模型上的每个接口,与基础网络转发图模型上相应的接口进行对比:如果接口只在预变更网络转发图模型上存在,则标记该接口为新增接口;如果接口只在基础网络转发图模型上存在,则标记该接口为删除接口;如果接口在预变更网络转发图模型和基础网络转发图模型上都存在,则对比该接口作为起始点的所有边,对比相应边在预变更网络转发图模型和基础网络转发图模型上的报文空间,如果存在不同,则标记该接口为变更接口。
6.一种判断网络资产互访安全性的增量分析系统,其特征在于,包括判断模块、转发图构建模块、可达性分析与映射模块、增量变更分析模块、影响评估与策略验证模块;所述判断模块用于判断是否为首次执行:根据基础网络配置和网络拓扑,查找是否存在对应的基础网络转发图模型与可达映射表;所述转发图构建模块连接判断模块,在判断模块判断出此次为首次执行时,转发图构建模块根据基础网络配置和网络拓扑,计算网络转发表,并建立基础网络转发图模型;在判断模块判断出此次为非首次执行时,转发图构建模块根据预变更的配置信息生成新的网络配置和网络拓扑,计算新的网络转发表,并建立预变更网络转发图模型和反向的预变更网络转发图模型;所述可达性分析与映射模块连接转发图构建模块,可达性分析与映射模块针对基础网络转发图模型,选取每一个资产接口作为起始节点遍历,将初始报文空间设置为全空间,在基础网络转发图模型采用深度优先搜索算法遍历所有接口,计算各起始节点的可达资产接口集合,并依据可达路径更新可达映射表,形成接口与可达资产接口对之间的对应关系;所述增量变更分析模块连接转发图构建模块;所述增量变更分析模块根据预变更网络转发图模型和基础网络转发图模型确定转发行为发生变化的接口,并构建资产接口对互访关系可能发生变化的变更集合;然后对变更集合中的每个源资产接口采用深度优先搜索算法,得到新的可达资产接口对和路径信息;将新的可达资产接口对和路径信息与原可达资产接口对和路径信息叠加,得到新的可达关系与报文空间;所述影响评估与策略验证模块连接增量分析模块,影响评估与策略验证模块针对新的可达关系与报文空间中的资产接口连通性信息,与用户安全配置策略进行对比,确认资产接口之间连通性符合安全需求;如果满足安全性要求,则下发预变更配置,更新预变更网络转发图模型为最新的基础网络转发图模型,并根据新的可达关系与报文空间更新可达映射表,如果不满足,则发出警报。
7.根据权利要求6所述的一种判断网络资产互访安全性的增量分析系统,其特征在于,所述增量变更分析模块确定转发行为发生变化的接口具体为:针对预变更网络转发图模型上的每个接口,与基础网络转发图模型上相应的接口进行对比:如果接口只在预变更网络转发图模型上存在,则标记该接口为新增接口;如果接口只在基础网络转发图模型上存在,则标记该接口为删除接口;如果接口在预变更网络转发图模型和基础网络转发图模型上都存在,则对比该接口作为起始点的所有边,对比相应边在预变更网络转发图模型和基础网络转发图模型上的报文空间,如果存在不同,则标记该接口为变更接口。
8.根据权利要求6所述的一种判断网络资产互访安全性的增量分析系统,其特征在于,所述增量变更分析模块构建资产接口对互访关系可能发生变化的变更集合具体为:对于变更接口与删除接口,在可达映射表中搜索当前接口对应的可达资产接口对,添加到变更集合中;针对新增接口,则基于反向的预变更网络转发图模型,对每一个转发行为发生变化的接口,执行以下操作:从该新增接口出发,在反向预变更转发图模型上进行深度优先搜索算法,计算出所有可达的源资产接口集合,并将该源资产接口集合添加到变更集合中。
9.一种计算机可读存储介质,其上存储有计算机程序/指令,其特征在于,所述计算机程序/指令被处理器执行时实现如权利要求1-5任一项所述的一种判断网络资产互访安全性的增量分析方法的步骤。



