全文原创,严禁转载
说明书节选
申请号或专利号: 202010657851.9
发明内容
本发明目的在于针对上述已有技术中存在的不足,提出一种基于动态反馈的网络攻击路径分析方法,用于解决攻击路径生成过程中对节点间紧密程度的依赖,以及在处理多脆弱性节点时的局限性,解决未考虑由同一类别下的不同设备间的差异导致攻击效果不同的缺点,解决未对攻击路径的生成规模加以约束导致时空消耗过大的缺点,以及解决未对攻击路径进行深入分析导致的无法对网络的安全性进行有效分析的缺点。
实现本发明目的的具体思路是,将待分析的局域网中攻击者使用的主机视为攻击节点,被攻击的每台主机视为一个目标节点,结合目标节点信息和漏洞信息生成初始网络状态图,建立攻击路径集合,并根据攻击路径中的信息实施攻击,计算攻击节点的开销和目标节点的动态反馈,进行攻击路径的分析,其分析结果既可指导防御方采取针对性修复和防御措施,也可为攻击者制定攻击计划提供依据。
为实现上述目的,本发明的具体步骤如下:
(1)建立网络初始状态图:
(1a)将待分析的局域网中被攻击的每台主机视为一个目标节点,借助探测工具获取每个目标节点的地址信息、系统信息;
(1b)借助搜索引擎获取与每个目标节点的系统信息相关的所有漏洞的攻击实施方法,将每个目标节点的地址信息和每个匹配的攻击实施方法一一组合,得到网络初始状态图的节点集;
(1c)在任意两个所含目标节点地址信息不同的节点间建立有向连接,得到表示对两个目标节点实施攻击顺序的网络初始状态图的有向边集;
(2)建立攻击路径集合:
从攻击节点出发,通过对网络初始状态图中的有向边集进行深度优先遍历,得到攻击路径集合;
(3)从攻击路径集合中任意选取一条未选过的攻击路径;
(4)判断所选攻击路径中是否存在一条代价为无穷大的边,若是,从攻击路径集合中删去该攻击路径后执行步骤(3),否则,执行步骤(5);
(5)从所选攻击路径中任意选取一条未选过的、且所选边的代价不为空的边;
(6)对目标节点实施攻击:
按所选边中的攻击实施方法对目标节点实施攻击,并记录攻击实施过程中攻击节点的开销和受到攻击后目标节点的动态反馈;
(7)更新所选边的代价:
(7a) 判断受到攻击后目标节点的动态反馈是否满足攻击成功条件,若是,则执行步骤(7b),否则,执行步骤(7c);
(7b)将所选边的代价更新为攻击节点的时间消耗,若其他攻击路径中也包含该边,则同步更新边的代价;
(7c)将所选边的代价更新为无穷大;
(8)判断是否选完所选路径中的所有边,若是,则执行步骤(9),否则,执行步骤(5);
(9)更新所选攻击路径的总代价:
(9a)判断所选攻击路径中所有代价之和是否为无穷大,若是,则执行步骤(9b),否则,执行步骤(9c);
(9b)从攻击路径集合中删去所选攻击路径;
(9c)用所选攻击路径中所有代价之和更新所选攻击路径的总代价;
(10)判断是否选完从攻击路径集合中的所有攻击路径,若是,则执行步骤(11),否则,执行步骤(3);
(11)确定局域网中所有目标节点的最优攻击顺序:
(11a)若攻击路径集合为空,则表明所分析的局域网是安全的,无可行的攻击路径;
(11b)若攻击路径集合不为空,表明所分析的局域网是不安全的,针对局域网中的目标节点有可行的攻击路径;对攻击路径集合中的攻击路径按总代价进行排序,将总代价最小的攻击路径作为最优攻击顺序;针对总代价最小的攻击路径中每个目标节点存在的脆弱性,用户应当优先采取相应的防护措施来对每个目标节点进行防护。
本发明与现有的技术相比具有以下优点:
第一,由于本发明在生成攻击路径集合时,只需要根据目标节点的地址信息和漏洞信息,就可以得到所有可能的攻击路径,克服了现有技术对节点间紧密程度的依赖,以及处理具有多脆弱性的节点时存在的局限性的问题,使得本发明可以适应网络攻防态势的快速变化,易于向已有的攻击规划中添加新的攻击方法和对象。
第二,由于本发明利用攻击实施过程中受到攻击后目标节点的动态反馈,对攻击结果进行了判定,可以区分出不同设备对同一攻击在攻击效果上的不同,克服了现有技术未考虑威胁在同一类别下的不同设备间的差异性的缺点,使得本发明可以真实地反映攻击对设备造成的影响,更适用于实际的攻击场景,提高了攻击路径分析的准确性。
第三,由于本发明利用攻击实施过程中攻击节点的开销,对攻击路径集合进行了适当的删减,减少了攻击路径集合中待分析的攻击路径数量,克服了现有技术未对攻击路径的生成规模加以约束导致时空消耗过大的缺点,使得本发明可以有效缩小攻击路径的分析规模,提高分析速度。
第四,由于本发明利用攻击路径的分析,确定了局域网中所有目标节点的最优攻击顺序,从而可以对网络进行安全评估,克服了现有技术未对攻击路径进行深入分析从而无法提供有效的防御措施的缺点,使得本发明有助于用户根据目标节点的脆弱性采取相应的防护措施。
附图说明