工业机器人网络渗透测试方法、装置及终端设备与流程
未命名
08-26
阅读:74
评论:0

1.本技术属于信息安全技术领域,尤其涉及一种工业机器人网络渗透测试方法、装置、终端设备及计算机可读存储介质。
背景技术:
2.近年来,数字经济快速发展,其中,作为硬科技代表的工业机器人将利用数字经济中的技术红利加速落地,快速引领技术进步、升级改造。然而随着工业机器人的推广使用和不断普及,对提高生产效率、增强生产安全、解放生产力等诸多方面带来巨大便利的同时,也带来了新的安全问题和巨大挑战,其中,尤其突出的是工业机器人的网络安全问题。
3.为了提高工业机器人的网络安全,现有方法中,通过捕获并解析网络通信数据,根据解析结果检测工业机器人网络是否被入侵,或者,给工业机器人提供安全的通信方法,但由于上述的这些方法均不能提供依据以提高工业机器人网络自身的通信攻击防御能力,因此,一旦工业机器人网络遭受攻击,就可能导致重要数据泄露,甚至导致生产线瘫痪等事件的发生。
技术实现要素:
4.本技术实施例提供了一种工业机器人网络渗透测试方法及装置,可以解决现有方法中,不能为工业机器人网络提供用于提高通信攻击防御能力的依据的问题。
5.第一方面,本技术实施例提供了一种工业机器人网络渗透测试方法,包括:
6.根据工业机器人网络的网络连接信息,确定攻击者可能选择攻击的所有网络路径,所述网络连接信息包括所述工业机器人网络的各个节点的连通关系和第一弱点信息,每个节点唯一与工业机器人的一个组件对应,所述第一弱点信息为已知的弱点所对应的信息;
7.针对任一所述网络路径,分析所述网络路径中每个攻击节点的弱点,得到第二弱点信息,根据所述第二弱点信息建立所述攻击节点的攻击原型,所述攻击节点为所述网络路径中被攻击的节点,所述第二弱点信息包括所述第一弱点信息;
8.根据各个所述攻击原型、所述工业机器人网络中各个节点的网络连接信息和所述各个节点的权限使用关系,构建攻击序列;
9.根据所述攻击序列确定从初始攻击节点到最终攻击节点的所有攻击路径,并根据所述攻击路径构建攻击图,所述初始攻击节点为攻击者在攻击行为发起时所控制的首个攻击节点,所述最终攻击节点为攻击者在发起攻击行为时能够攻击的各攻击路径的最远的攻击节点;
10.将所述攻击图与渗透测试涉及的测试数据融合,形成渗透测试图;
11.根据所述渗透测试图对所述工业机器人网络进行渗透测试;
12.根据渗透测试结果确定成功攻击路径,计算所述成功攻击路径对应的所有攻击序列的权值,根据所述所有攻击序列的权值分析所述成功攻击路径的危害性,所述成功攻击
路径为所述渗透测试中攻击者发起攻击并成功控制渗透测试目标节点的攻击路径,所述攻击序列的权值根据所述攻击序列的攻击成功概率确定,所述渗透测试目标节点为渗透测试预设的攻击节点。
13.第二方面,本技术实施例提供了一种工业机器人网络渗透测试装置,包括:
14.网络路径获取模块,用于根据工业机器人网络的网络连接信息,确定攻击者可能选择攻击的所有网络路径,所述网络连接信息包括所述工业机器人网络的各个节点的连通关系和第一弱点信息,每个节点唯一与工业机器人的一个组件对应,所述第一弱点信息为已知的弱点所对应的信息;
15.攻击原型构建模块,用于针对任一所述网络路径,分析所述网络路径中每个攻击节点的弱点,得到第二弱点信息,根据所述第二弱点信息建立所述攻击节点的攻击原型,所述攻击节点为所述网络路径中被攻击的节点,所述第二弱点信息包括所述第一弱点信息;
16.攻击序列构建模块,用于根据各个所述攻击原型、所述工业机器人网络中各个节点的网络连接信息和所述各个节点的权限使用关系,构建攻击序列;
17.攻击图构建模块,用于根据所述攻击序列确定从初始攻击节点到最终攻击节点的所有攻击路径,并根据所述攻击路径构建攻击图,所述初始攻击节点为攻击者在攻击行为发起时所控制的首个攻击节点,所述最终攻击节点为攻击者在发起攻击行为时能够攻击的各攻击路径的最远的攻击节点;
18.渗透测试图生成模块,用于融合所述攻击图与渗透测试涉及的测试数据形成渗透测试图;
19.渗透测试模块,用于根据所述渗透测试图对所述工业机器人网络进行渗透测试;
20.测试结果分析模块,用于根据渗透测试结果确定成功攻击路径,计算所述成功攻击路径对应的所有攻击序列的权值,根据所述所有攻击序列的权值分析所述成功攻击路径的危害性,所述成功攻击路径为所述渗透测试中攻击者发起攻击并成功控制渗透测试目标节点的攻击路径,所述攻击序列的权值根据所述攻击序列的攻击成功概率确定,所述渗透测试目标节点为渗透测试预设的攻击节点。
21.第三方面,本技术实施例提供了一种终端设备,包括:包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述第一方面中所述的工业机器人网络渗透测试的步骤。
22.第四方面,本技术实施例提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现上述第一方面中所述的工业机器人网络渗透测试的步骤。
23.第五方面,本技术实施例提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行上述第一方面中任一项所述的工业机器人网络渗透测试方法。
24.本技术实施例与现有技术相比存在的有益效果是:由于网络连接信息包括工业机器人网络的各个节点的网络连接信息,且每个节点唯一与工业机器人的一个组件对应,因此,通过工业机器人网络连接信息,可以确定工业机器人网络中攻击者可能选择攻击的所有网络路径。即,由于只确定可能攻击的所有网络路径,因此,使得后续只会根据该可能攻击的所有网络路径的各个节点的弱点构建攻击原型,从而减少了不必要的网络弱点分析和
攻击原型的构建。同时,由于各个节点的权限使用关系能够反映攻击是否能够到达对应的节点,因此,根据攻击原型、工业机器人网络的网络连接信息和权限使用关系能够提高构建的攻击序列的准确性,进而提高根据该攻击序列确定的从初始攻击节点到最终攻击节点的所有攻击路径的准确性,以及,提高根据所有攻击路径构建的攻击图的构建效率。此外,由于攻击序列的权值根据攻击序列的攻击成功概率确定,因此,在根据渗透测试图计算成功攻击路径的所有攻击序列的权值后,能够结合该权值分析出成功攻击路径的危害性,从而得到工业机器人网络中存在的可被攻击者成功攻击控制的网络路径及其危害性,进而为提高工业机器人网络的通信攻击防御能力提供依据。
附图说明
25.为了更清楚地说明本技术实施例中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍。
26.图1是本技术一实施例提供的一种工业机器人网络渗透测试方法的流程示意图;
27.图2是本技术实施例提供的一个网络路径图;
28.图3是本技术实施例提供的一个攻击路径的攻击序列图;
29.图4是本技术实施例提供的一种工业机器人网络渗透测试装置的结构示意图;
30.图5是本技术实施例提供的终端设备的结构示意图。
具体实施方式
31.以下描述中,为了说明而不是为了限定,提出了诸如特定系统结构、技术之类的具体细节,以便透彻理解本技术实施例。然而,本领域的技术人员应当清楚,在没有这些具体细节的其它实施例中也可以实现本技术。在其它情况中,省略对众所周知的系统、装置、电路以及方法的详细说明,以免不必要的细节妨碍本技术的描述。
32.应当理解,当在本技术说明书和所附权利要求书中使用时,术语“包括”指示所描述特征、整体、步骤、操作、元素和/或组件的存在,但并不排除一个或多个其它特征、整体、步骤、操作、元素、组件和/或其集合的存在或添加。
33.还应当理解,在本技术说明书和所附权利要求书中使用的术语“和/或”是指相关联列出的项中的一个或多个的任何组合以及所有可能组合,并且包括这些组合。
34.另外,在本技术说明书和所附权利要求书的描述中,术语“第一”、“第二”等仅用于区分描述,而不能理解为指示或暗示相对重要性。
35.在本技术说明书中描述的参考“一个实施例”或“一些实施例”等意味着在本技术的一个或多个实施例中包括结合该实施例描述的特定特征、结构或特点。由此,在本说明书中的不同之处出现的语句“在一个实施例中”、“在一些实施例中”、“在其他一些实施例中”、“在另外一些实施例中”等不是必然都参考相同的实施例,而是意味着“一个或多个但不是所有的实施例”,除非是以其他方式另外特别强调。
36.实施例一:
37.图1示出了本发明实施例提供的一种工业机器人网络渗透测试方法的流程示意图,详述如下:
38.步骤s11,根据工业机器人网络的网络连接信息,确定攻击者可能选择攻击的所有
网络路径,该网络连接信息为该工业机器人网络的各个节点的连通关系和第一弱点信息,每个节点唯一与工业机器人的一个组件对应,第一弱点信息为已知的弱点所对应的信息。
39.其中,工业机器人为面向工业领域的多关节机械手或多自由度的机器装置,在工业生产加工过程中通过自动控制来执行作业。
40.本技术实施例中,网络路径为由工业机器人网络的节点构成的可能被攻击者选择攻击的有序路径。如图2所示,从节点s0开始,节点s0、s1、s4、s8、s
11
满足指定条件,可构成一条网络路径,该网络路径的路径顺序为s0、s1、s4、s8、s
11
。
41.步骤s12,针对任一个该网络路径,分析该网络路径中每个攻击节点的弱点,根据该攻击节点的弱点建立该攻击节点的攻击原型,上述攻击节点为该网络路径中被攻击的节点。
42.上述攻击节点可以为上述网络路径中的任意一个节点,当网络路径中的一个节点被攻击,则该节点即为本技术实施例的攻击节点。
43.本实施例中,分析网络路径中每个攻击节点所存在的弱点,该弱点包括各个攻击节点发起攻击行为后相应攻击节点新增的弱点和攻击行为发起前各攻击节点已经存在的弱点,得到第二弱点信息。
44.本技术实施例中,由于根据实际中分析网络路径每个攻击节点所得的第二弱点信息建立相应攻击原型,因此,减少不必要的攻击原型的建立,加快了攻击图的构建速度。
45.步骤s13,根据各个该攻击原型、该工业机器人网络中各个节点的网络连接信息和该各个节点的权限使用关系,构建攻击序列。
46.上述各个节点的权限使用关系,是指各个节点对应的访问权限和操作权限。例如,假设工业机器人网络中的某一节点为父节点,该父节点还具有子节点,则该父节点拥有可以访问和操作其子节点的权限。
47.上述攻击序列描述了攻击者实施攻击的攻击过程中所经过的攻击节点、经过该攻击节点的顺序以及所利用的相应攻击节点的弱点。如图3所示,s0、s2、s6、s
10
为攻击节点,a1、a2、a3、a4、a5、a6为攻击节点发起攻击行为所利用的弱点,s0、a1、s2、a3、s6、a5、s
10
构成一个攻击序列,s0、a1、s2、a3、s6、a6、s
10
也构成一个攻击序列,因为各个攻击节点中攻击者利用的弱点可能不同,同一路径可能存在多个不同的攻击序列。
48.本技术实施例中,将攻击原型应用于工业机器人网络中,通过该工业机器人网络中各个节点的网络连接信息和该各个节点的权限使用关系,即攻击原型的转移条件,判断攻击原型的转移过程,也就是攻击者发起的攻击行为的转移过程,攻击原型的边和点的不断转移,将各个独立的攻击原型关联起来,构成了攻击者的攻击序列。
49.步骤s14,根据该攻击序列确定从初始攻击节点到最终攻击节点的所有攻击路径,并根据该攻击路径构建攻击图。
50.上述初始攻击节点为攻击者在攻击行为发起时所控制的首个攻击节点,最终攻击节点为攻击者在发起攻击行为时能够攻击的各攻击路径中最远的攻击节点。
51.上述攻击路径是指根据攻击序列确定的攻击者控制最终攻击节点前的攻击行为的转移过程,即,攻击者到达最终攻击节点所经过的攻击节点以及转移方向,该转移方向是指相邻两个攻击节点之间攻击行为转移的方向。如图3所示,s0为上述初始攻击节点,s
10
为上述最终攻击节点,根据各攻击序列确定攻击序列中的攻击节点,s0、s2、s6、s
10
构成一条攻
击路径,攻击行为从攻击节点s0向攻击节点s2转移。
52.步骤s15,将该攻击图与渗透测试涉及的测试数据融合,形成渗透测试图。
53.其中,渗透测试涉及的测试数据包括以下至少一种:测试项目、测试目标、测试限制条件、测试用例。
54.步骤s16,根据该渗透测试图对该工业机器人网络进行渗透测试。
55.步骤s17,根据渗透测试结果确定成功攻击路径,计算该成功攻击路径对应的所有攻击序列的权值,根据该所有攻击序列的权值分析该成功攻击路径的危害性。
56.其中,上述成功攻击路径为攻击者发起攻击并成功控制渗透测试目标节点的攻击路径。
57.其中,上述攻击序列的权值根据攻击序列的攻击成功概率确定,攻击序列的攻击成功概率由上述攻击序列中相邻节点之间对应的攻击行为决定。例如,当攻击行为不同时,其对应的攻击成功概率通常也不同。
58.其中,上述渗透测试目标节点为渗透测试预设的攻击节点。
59.本技术实施例中,根据成功攻击路径对应的攻击序列的每条边的权值和成功攻击对应的攻击序列的权值,分析该成功攻击路径的关键攻击节点和攻击行为所利用的关键弱点,结合权值分析该成功攻击路径对工业机器人网络的危害性。例如,成功攻击路径对应的攻击序列有多个攻击序列在相同的相邻两个攻击节点对应的边的权值均较大,则可以将该相邻两个攻击节点中攻击发起的节点作为关键攻击节点,攻击者在关键攻击节点的攻击成功概率较大,则可以将多个攻击序列利用的同一节点的同一弱点作为关键弱点,关键弱点被攻击者利用的概率较大。
60.本技术第一实施例中,由于网络连接信息包括工业机器人网络的各个节点的网络连接信息,且每个节点唯一与工业机器人的一个组件对应,因此,通过工业机器人网络连接信息,可以确定工业机器人网络中攻击者可能选择攻击的所有网络路径。即,由于只确定可能攻击的所有网络路径,因此,使得后续只会根据该可能攻击的所有网络路径的各个节点的弱点构建攻击原型,从而减少了不必要的网络弱点分析和攻击原型的构建。同时,由于各个节点的权限使用关系能够反映攻击是否能够到达对应的节点,因此,根据攻击原型、工业机器人网络的网络连接信息和权限使用关系能够提高构建的攻击序列的准确性,进而提高根据该攻击序列确定的从初始攻击节点到最终攻击节点的所有攻击路径的准确性,以及,提高根据该所有攻击路径构建的攻击图的构建效率。此外,由于攻击序列的权值根据攻击序列的攻击成功概率确定,因此,在根据渗透测试图计算成功攻击路径的所有攻击序列的权值后,能够结合该权值分析出成功攻击路径的危害性,从而得到工业机器人网络中存在的可被攻击者成功攻击控制的网络路径及其危害性,进而为提高工业机器人网络的通信攻击防御能力提供依据。
61.在一些实施例中,在步骤s11之前,还包括:
62.a1、获取该工业机器人网络的各个节点已知的弱点,根据各个节点已知的弱点确定第一弱点信息。
63.具体地,采用弱点扫描工具来获取工业机器人网络中各个节点存在的弱点。例如,可以采用nessus系统漏洞扫描与分析软件来对工业机器人网络节点进行扫描,分析该工业机器人网络节点存在的弱点,该弱点是工业机器人网络中各个节点在攻击者攻击行为发起
已经存在的弱点。
64.a2、根据该工业机器人网络中各个节点、该第一弱点信息、各个节点之间的连通关系确定该工业机器人网络中各个节点的网络连接信息。
65.具体地,该各个节点的网络连接信息包括:该工业机器人网络节点是否存在弱点、存在哪些弱点,以及与工业机器人网络节点连通的其他的工业机器人网络节点。
66.本技术实施例中,通过采用弱点扫描工具分析工业机器人网络中各个节点存在的弱点,获取详细的第一弱点信息,并通过结合工业机器人网络节点的连通关系得到各个节点的网络连接信息,以便后续可以方便地通过网络连接信息确定所有的网络路径和构建攻击图。
67.在一些实施例中,上述步骤s11包括:
68.b1、根据该工业机器人网络的网络连接信息,确定该工业机器人网络的迁移条件。
69.其中,工业机器人网络的迁移条件包括:
70.攻击者已控制的节点与目标攻击节点之间满足连通关系,上述目标攻击节点为与攻击者已控制的节点连接的节点;
71.目标攻击节点存在弱点;
72.攻击者在目标攻击节点上至少取得最低操作权限,并且在已控制节点上至少取得最低访问权限。
73.具体地,上述操作权限是指有没有做某种操作的权限,访问权限是指有没有对某些数据的查看或管理权限,最低权限指的是每个个体执行授权的任务时所需要的最受限的权限,即只拥有执行该指定的任务的权限。攻击者在目标攻击节点上至少取得进行攻击行为所需要的最低的操作权限,并在已控制节点上至少取得要发起攻击行为所需的最低的访问权限。
74.b2、将该初始攻击节点作为第一节点,判断该工业机器人网络中与该第一节点连接的节点是否符合预设的迁移条件,并将满足该迁移条件的节点作为第二节点。
75.b3、将该第二节点作为新的第一节点,并返回该判断该工业机器人网络中与该第一节点连接的节点是否符合预设的迁移条件,并将满足该迁移条件的节点作为第二节点的步骤,直到该工业机器人网络的节点均进行了该迁移条件的判断,得到该工业机器人网络中攻击者可能选择攻击的所有节点。
76.b4、根据该攻击者可能攻击的所有节点确定攻击者可能选择攻击的所有网络路径。
77.本技术实施例中,通过预设的工业机器人网络的迁移条件,从初始攻击节点开始判断与该初始攻击节点连接的满足迁移条件的节点,获取工业机器人网络中攻击者可能选择攻击的所有节点,从而根据攻击者可能攻击的所有节点确定攻击者可能选择攻击的所有网络路径,使后续只会根据该可能攻击的所有网络路径的各个节点的弱点构建攻击原型,减少了不必要的弱点分析和攻击原型的构建。
78.在一些实施例中,上述步骤b2在判断工业机器人网络中与第一节点连接的节点是否符合预设的迁移条件时,具体包括:
79.根据宽度优先搜索的原则对工业机器人网络中与第一节点连接的节点进行上述迁移条件的判断。例如,如图2所示,假设节点s0为第一节点,若节点s1、s2、s3满足迁移条件,
则s1、s2、s3为第二节点。之后,将节点s1、s2、s3作为新的第一节点,对与新的第一节点连接的节点s4、s5、s6、s7进行迁移条件的判断,直至该工业机器人网络中所有节点均进行了迁移条件的判断。
80.由于宽度优先搜索的原则根据宽度优先对工业机器人网络中的所有节点进行判断,因此,本技术实施例根据该原则对与第一节点连接的节点进行迁移条件的判断时,能够对与第一节点连通的所有节点进行迁移条件的判断,得到第二节点,从而能够减少对不满足迁移条件的节点的后续节点的判断,并且保证了得到的网络路径的完备性。
81.在一些实施例中,上述步骤s12在分析网络路径中每个攻击节点的弱点时,包括:
82.c1、确定各种类型的弱点所对应的攻击行为,得到目标攻击行为。
83.具体地,工业机器人的弱点类型有不安全通信、缺乏授权机制、采用弱加密、采用弱配置等,相应的攻击行为有漏洞利用、恶意软件安装、dos(denial of service,即拒绝服务)和ddos(distribution denial of service,即分布式拒绝服务攻击)、中间人攻击等攻击行为。例如,如果工业机器人不同组件间的通信信道是不安全的非加密信道,攻击者便可发起中间人攻击,注入恶意指令或软件更新,让工业机器人执行恶意代码。
84.c2、采用关联规则挖掘算法提取目标攻击行为的特征,根据提取的目标攻击行为的特征分析网络路径中每个攻击节点的弱点。
85.本技术实施例中,采用关联规则挖掘算法提取目标攻击行为的特征,提取到的特征更加准确,从而提高了分析得到的网络路径中每个攻击节点的弱点的准确性。
86.在一些实施例中,上述步骤c2在采用关联规则挖掘算法提取目标攻击行为的特征,根据提取的目标攻击行为的特征分析网络路径中每个攻击节点的弱点时,具体包括:
87.根据目标攻击行为的特征,分析目标攻击行为所利用的弱点、采用的攻击工具、攻击方法、弱点被成功利用的攻击成功概率和弱点被成功利用造成的损失值。在采用关联规则挖掘算法提取弱点的攻击行为特征时,提取到的特征中可能存在部分依赖于特征提取环境的特征量,这些特征量的准确性会随着入侵环境的变化而发生改变,影响弱点的准确性,因此在进行特征提取时考虑到依赖于提取环境的特征量,可将环境相关量引入特征提取算法中。
88.本技术实施例中,由于在采用关联规则挖掘算法提取目标攻击行为的特征时,将环境相关量引入了关联规则挖掘算法中,从而使特征提取环境发生改变时依赖于提取环境的特征量也不收环境改变的影响,使提取到的目标攻击行为的特征和后续的弱点分析的准确性更高。
89.在一些实施例中,上述步骤s14在根据攻击路径构建攻击图时,包括:
90.d1、获取该攻击路径中各个攻击节点的网络状态,该网络状态用于描述该各个攻击节点的第二弱点信息和该各个攻击节点的网络连接信息。
91.d2、根据该各个攻击节点的网络状态确定对应节点的属性信息。
92.其中,节点的属性信息包括与该节点连通的节点信息、该节点的第一弱点信息和第二弱点信息。
93.d3、获取该攻击路径中相邻两个攻击节点之间所对应的攻击行为的信息,确定对应节点的边,该攻击行为信息为该攻击路径中相邻两个攻击节点之间所对应的攻击行为所利用的弱点的第二弱点信息。
94.本技术实施例中,在根据所述攻击行为信息确定对应节点的边时,还确定该边的属性信息,该边的属性信息至少包括相应攻击行为所利用的弱点的名称、弱点被成功利用的攻击成功概率、弱点被成功利用造成的损失值。
95.d4、依据上述节点的属性信息和上述节点的边构建攻击图。
96.本技术实施例中,通过将各个攻击节点的网络状态信息和攻击行为信息作为攻击图中相应的点和边的属性信息,直观地展示了各个攻击节点的关系和属性,便于后续对成功攻击路径进行危害性分析。
97.在一些实施例中,上述步骤s15在将攻击图与渗透测试涉及的测试数据融合,形成渗透测试图时,包括:
98.将渗透测试目标节点与攻击图中各个节点进行对比,根据渗透测试目标节点结合攻击图生成渗透测试图。例如,根据渗透测试目标生成各攻击路径的最终攻击目标与渗透测试目标相应的节点的的渗透测试图,或者将渗透测试目标节点对应的节点在攻击图中。
99.本技术实施例中,通过根据渗透测试目标节点生成渗透测试图,针对性进行渗透测试,减小了渗透测试图的复杂度和减少进行渗透测试的时间,提高渗透测试效率。
100.在一些实施例中,上述步骤s17在计算该成功攻击路径对应的所有攻击序列的权值时,包括:
101.根据上述成功攻击路径对应的攻击序列中每条边对应的攻击行为信息和该成功攻击路径对应的攻击序列的总长度,计算该成功攻击路径的所有攻击序列的每条边的权值和该成功攻击路径对应的所有攻击序列的权值,该边为该攻击图中连接两个攻击节点的边,该攻击序列的总长度为该攻击序列从初始攻击节点到最终攻击节点的边的总数目。
102.在本实施例中,根据攻击序列中每条边对应的攻击行为信息和攻击序列的总长度计算成功攻击路径的所有攻击序列权值,将攻击序列中每条边对应的属性信息和攻击序列的总长度对该攻击序列的攻击成功概率的影响都计算进来,使权值更能代表该攻击序列的属性,提高了后续成功攻击路径危害性分析的准确性。
103.实施例二:
104.对应于上文实施例所述的一种工业机器人网络渗透测试方法,图4示出了本技术实施例提供的一种工业机器人网络渗透测试装置的结构框图,为了便于说明,仅示出了与本技术实施例相关的部分。
105.参照图4,该装置包括:网络路径获取模块41、攻击原型构建模块42、攻击序列构建模43、攻击图构建模块44、渗透测试图生成模块45、渗透测试模块46、测试结果分析模块47。其中,
106.网络路径获取模块41,用于根据工业机器人网络的网络连接信息,确定攻击者可能选择攻击的所有网络路径,该网络连接信息包括该工业机器人网络的各个节点的连通关系和第一弱点信息,每个节点唯一与工业机器人的一个组件对应,该第一弱点信息为已知的弱点所对应的信息。
107.攻击原型构建模块42,用于针对任一网络路径,分析该网络路径中每个攻击节点的弱点,得到第二弱点信息,根据该第二弱点信息建立该攻击节点的攻击原型,该攻击节点为该网络路径中被攻击的节点,该第二弱点信息包括第一弱点信息。
108.攻击序列构建模块43,用于根据各个攻击原型、该工业机器人网络中各个节点的
网络连接信息和各个节点的权限使用关系,构建攻击序列。
109.攻击图构建模块44,用于根据攻击序列确定从初始攻击节点到最终攻击节点的所有攻击路径,并根据该攻击路径构建攻击图,该初始攻击节点为攻击者在攻击行为发起时所控制的首个攻击节点,该最终攻击节点为攻击者在发起攻击行为时能够攻击的各攻击路径的最远的攻击节点。
110.渗透测试图生成模块45,用于融合攻击图与渗透测试涉及的测试数据形成渗透测试图。
111.渗透测试模块46,用于根据渗透测试图对该工业机器人网络进行渗透测试。
112.测试结果分析模块47,用于根据渗透测试结果确定成功攻击路径,计算成功攻击路径对应的所有攻击序列的权值,根据该所有攻击序列的权值分析该成功攻击路径的危害性,该成功攻击路径为渗透测试中攻击者发起攻击并成功控制渗透测试目标节点的攻击路径,该攻击序列的权值根据该攻击序列的攻击成功概率确定,该渗透测试目标节点为渗透测试预设的攻击节点。
113.本技术第二实施例中,由于网络连接信息包括工业机器人网络的各个节点网络连接信息,且每个节点唯一与工业机器人的一个组件对应,因此,通过工业机器人网络连接信息,可以确定工业机器人网络中攻击者可能选择攻击的所有网络路径。即,由于只确定可能攻击的所有网络路径,因此,使得后续只会根据该可能攻击的所有网络路径的各个节点的弱点构建攻击原型,从而减少了不必要的网络弱点分析和攻击原型的构建。同时,由于各个节点的权限使用关系能够反映攻击是否能够到达对应的节点,因此,根据攻击原型、工业机器人网络连接信息和权限使用关系构建攻击序列,确定从初始攻击节点到最终攻击节点的所有攻击路径,有效预测攻击者可能选择的攻击路径,根据所述所有攻击路径构建攻击图,提高了构建攻击序列的准确性,降低攻击图的复杂度,提高其构建效率。将攻击图与渗透测试的测试数据相融合形成渗透测试图进行渗透测试,根据渗透测试的结果确定成功攻击路径,并根据渗透测试图计算该成功攻击路径的所有攻击序列的权值,结合该权值分析该成功攻击路径危害性,得到实际工业机器人网络中存在的可被攻击者成功攻击控制的网络路径及其危害性,为提高工业机器人网络的通信攻击防御能力提供依据。
114.在一些实施例中,工业机器人网络渗透测试装置还包括:
115.弱点信息获取模块,用于获取该工业机器人网络的各个节点已知的弱点,根据各个节点已知的弱点确定第一弱点信息。
116.网络连接信息获取模块,用于根据该工业机器人网络中各个节点、该第一弱点信息、各个节点之间的连通关系确定该工业机器人网络中各个节点的网络连接信息。
117.在一些实施例中,上述网络路径获取模块41包括:
118.迁移条件获取单元,根据该工业机器人网络的网络连接信息,确定该工业机器人网络的迁移条件。
119.迁移条件判断单元,用于根据以初始攻击节点作为第一节点,判断该工业机器人网络中与该第一节点连接的节点是否符合预设的迁移条件,并将满足该迁移条件的节点作为第二节点,将该第二节点作为新的第一节点,并返回该判断该工业机器人网络中与该第一节点连接的节点是否符合预设的迁移条件,并将满足该迁移条件的节点作为第二节点的步骤,直到该工业机器人网络的节点均进行了该迁移条件的判断,得到该工业机器人网络
中攻击者可能选择攻击的所有节点。
120.网络路径获取单元,用于根据上述攻击者可能选择攻击的所有节点,确定攻击者可能选择攻击的所有网络路径。
121.在一些实施例中,迁移条件判断单元在判断所述工业机器人网络中与所述第一节点连接的节点是否符合预设的迁移条件时,具体用于:
122.根据宽度优先搜索的原则对所述工业机器人网络中与所述第一节点连接的节点进行所述迁移条件的判断。
123.在一些实施例中,上述攻击原型构建模块42在分析所述网络路径中每个攻击节点的弱点时,包括:
124.攻击行为获取单元,用于确定各种类型的弱点所对应的攻击行为,得到目标攻击行为。
125.弱点分析单元,用于根据关联规则挖掘算法提取目标攻击行为的特征,根据提取的目标攻击行为的特征分析网络路径中每个攻击节点的弱点。
126.在一些实施例中,上述攻击图构建模块44在根据所述攻击路径构建攻击图时,包括:
127.网络状态获取单元,用于获取攻击路径中各个攻击节点的网络状态,该网络状态用于描述该各个攻击节点的第二弱点信息和该各个攻击节点的网络连接信息。
128.节点属性获取单元,用于根据该各个攻击节点的网络状态确定对应节点的属性信息。
129.边属性获取单元,用于获取该攻击路径中相邻两个攻击节点之间所对应的攻击行为的信息,确定对应节点的边,该攻击行为信息为该攻击路径中相邻两个攻击节点之间所对应的攻击行为所利用的弱点的第二弱点信息。
130.攻击图构建单元,用于根据上述节点的属性信息和上述节点的边构建攻击图。
131.在一些实施例中,上述测试结果分析模块47在计算所述成功攻击路径对应的所有攻击序列的权值时,包括:
132.权值计算单元,用于根据上述成功攻击路径对应的攻击序列中每条边对应的攻击行为信息和该成功攻击路径对应的攻击序列的总长度,计算该成功攻击路径的所有攻击序列的每条边的权值和该成功攻击路径对应的所有攻击序列的权值,该边为该攻击图中连接两个攻击节点的边,该攻击序列的总长度为该攻击序列从初始攻击节点到最终攻击节点的边的总数目。
133.需要说明的是,上述装置/单元之间的信息交互、执行过程等内容,由于与本技术方法实施例基于同一构思,其具体功能及带来的技术效果,具体可参见方法实施例部分,此处不再赘述。
134.实施例三:
135.图5为本技术一实施例提供的终端设备的结构示意图。如图5所示,该实施例的终端设备5包括:至少一个处理器50(图5中仅示出一个处理器)、存储器51以及存储在所述存储器51中并可在所述至少一个处理器50上运行的计算机程序52,例如工业机器人网络渗透测试程序。所述处理器50执行所述计算机程序52时实现上述任意各个方法实施例中的步骤,例如图1所示的步骤s11至s17。或者,所述处理器50执行所述计算机程序52时实现上述
各装置实施例中各模块/单元的功能,如图4所示模块41至47的功能。
136.示例性的,所述计算机程序52可以被分割成一个或多个模块/单元,所述一个或者多个模块/单元被存储在所述存储器51中,并由所述处理器50执行,以完成本技术。所述一个或多个模块/单元可以是能够完成特定功能的一系列计算机程序指令段,该指令段用于描述所述计算机程序52在所述终端设备5中的执行过程。例如,所述计算机程序52可以被分割成网络路径获取模块、攻击原型构建模块、攻击序列构建模块、攻击图构建模块、渗透测试图生成模块、渗透测试模块、测试结果分析模块,各模块之间具体功能如下:
137.攻击原型构建模块,用于针对任一网络路径,分析该网络路径中每个攻击节点的弱点,得到第二弱点信息,根据该第二弱点信息建立该攻击节点的攻击原型,该攻击节点为该网络路径中被攻击的节点,该第二弱点信息包括第一弱点信息。
138.攻击序列构建模块,用于根据各个攻击原型、该工业机器人网络中各个节点的网络连接信息和各个节点的权限使用关系,构建攻击序列。
139.攻击图构建模块,用于根据攻击序列确定从初始攻击节点到最终攻击节点的所有攻击路径,并根据该攻击路径构建攻击图,该初始攻击节点为攻击者在攻击行为发起时所控制的首个攻击节点,该最终攻击节点为攻击者在发起攻击行为时能够攻击的各攻击路径的最远的攻击节点。
140.渗透测试图生成模块,用于融合攻击图与渗透测试涉及的测试数据形成渗透测试图。
141.渗透测试模块,用于根据渗透测试图对该工业机器人网络进行渗透测试。
142.测试结果分析模块,用于根据渗透测试结果确定成功攻击路径,计算成功攻击路径对应的所有攻击序列的权值,根据该所有攻击序列的权值分析该成功攻击路径的危害性,该成功攻击路径为渗透测试中攻击者发起攻击并成功控制渗透测试目标节点的攻击路径,该攻击序列的权值根据该攻击序列的攻击成功概率确定,该渗透测试目标节点为渗透测试预设的攻击节点。
143.所述终端设备5可以是桌上型计算机、笔记本、掌上电脑及云端服务器等计算设备。该终端设备可包括,但不仅限于,处理器50、存储器51。本领域技术人员可以理解,图5仅仅是终端设备5的举例,并不构成对终端设备5的限定,可以包括比图示更多或更少的部件,或者组合某些部件,或者不同的部件,例如还可以包括输入输出设备、网络接入设备等。
144.所称处理器50可以是中央处理单元(central processing unit,cpu),该处理器50还可以是其他通用处理器、数字信号处理器(digital signal processor,dsp)、专用集成电路(application specific integrated circuit,asic)、现场可编程门阵列(field-programmable gate array,fpga)或者其他可编程逻辑器件、分立门或者晶体管逻辑器件、分立硬件组件等。通用处理器可以是微处理器或者该处理器也可以是任何常规的处理器等。
145.所述存储器51在一些实施例中可以是所述终端设备5的内部存储单元,例如终端设备5的硬盘或内存。所述存储器51在另一些实施例中也可以是所述终端设备5的外部存储设备,例如所述终端设备5上配备的插接式硬盘,智能存储卡(smart media card,smc),安全数字(secure digital,sd)卡,闪存卡(flash card)等。进一步地,所述存储器51还可以既包括所述终端设备5的内部存储单元也包括外部存储设备。所述存储器51用于存储操作
系统、应用程序、引导装载程序(bootloader)、数据以及其他程序等,例如所述计算机程序的程序代码等。所述存储器51还可以用于暂时地存储已经输出或者将要输出的数据。
146.所属领域的技术人员可以清楚地了解到,为了描述的方便和简洁,仅以上述各功能单元、模块的划分进行举例说明,实际应用中,可以根据需要而将上述功能分配由不同的功能单元、模块完成,即将所述装置的内部结构划分成不同的功能单元或模块,以完成以上描述的全部或者部分功能。实施例中的各功能单元、模块可以集成在一个处理单元中,也可以是各个单元单独物理存在,也可以两个或两个以上单元集成在一个单元中,上述集成的单元既可以采用硬件的形式实现,也可以采用软件功能单元的形式实现。另外,各功能单元、模块的具体名称也只是为了便于相互区分,并不用于限制本技术的保护范围。上述系统中单元、模块的具体工作过程,可以参考前述方法实施例中的对应过程,在此不再赘述。
147.本技术实施例还提供了一种网络设备,该网络设备包括:至少一个处理器、存储器以及存储在所述存储器中并可在所述至少一个处理器上运行的计算机程序,所述处理器执行所述计算机程序时实现上述任意各个方法实施例中的步骤。
148.本技术实施例还提供了一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,所述计算机程序被处理器执行时实现可实现上述各个方法实施例中的步骤。
149.本技术实施例还提供了一种计算机程序产品,当计算机程序产品在终端设备上运行时,使得终端设备执行时实现可实现上述各个方法实施例中的步骤。
150.在上述实施例中,对各个实施例的描述都各有侧重,某个实施例中没有详述或记载的部分,可以参见其它实施例的相关描述。
151.以上所述实施例仅用以说明本技术的技术方案,而非对其限制;尽管参照前述实施例对本技术进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本技术各实施例技术方案的精神和范围,均应包含在本技术的保护范围之内。
技术特征:
1.一种工业机器人网络渗透测试方法,其特征在于,包括:根据工业机器人网络的网络连接信息,确定攻击者可能选择攻击的所有网络路径,所述网络连接信息包括所述工业机器人网络的各个节点的连通关系和第一弱点信息,每个节点唯一与工业机器人的一个组件对应,所述第一弱点信息为已知的弱点所对应的信息;针对任一所述网络路径,分析所述网络路径中每个攻击节点的弱点,得到第二弱点信息,根据所述第二弱点信息建立所述攻击节点的攻击原型,所述攻击节点为所述网络路径中被攻击的节点,所述第二弱点信息包括所述第一弱点信息;根据各个所述攻击原型、所述工业机器人网络中各个节点的网络连接信息和所述各个节点的权限使用关系,构建攻击序列;根据所述攻击序列确定从初始攻击节点到最终攻击节点的所有攻击路径,并根据所述攻击路径构建攻击图,所述初始攻击节点为攻击者在攻击行为发起时所控制的首个攻击节点,所述最终攻击节点为攻击者在发起攻击行为时能够攻击的各攻击路径的最远的攻击节点;将所述攻击图与渗透测试涉及的测试数据融合,形成渗透测试图;根据所述渗透测试图对所述工业机器人网络进行渗透测试;根据渗透测试结果确定成功攻击路径,计算所述成功攻击路径对应的所有攻击序列的权值,根据所述所有攻击序列的权值分析所述成功攻击路径的危害性,所述成功攻击路径为所述渗透测试中攻击者发起攻击并成功控制渗透测试目标节点的攻击路径,所述攻击序列的权值根据所述攻击序列的攻击成功概率确定,所述渗透测试目标节点为渗透测试预设的攻击节点。2.如权利要求1所述的工业机器人网络渗透测试方法,其特征在于,在所述根据工业机器人网络的网络连接信息,确定攻击者可能选择攻击的所有网络路径之前,还包括:获取所述工业机器人网络的各个节点已知的弱点,根据所述各个节点已知的弱点确定所述第一弱点信息;根据所述工业机器人网络中各个节点、所述第一弱点信息、各个节点之间的连通关系确定所述工业机器人网络中各个节点的网络连接信息。3.如权利要求1所述的工业机器人网络渗透测试方法,其特征在于,所述根据工业机器人网络的网络连接信息,确定攻击者可能选择攻击的所有网络路径,包括:根据所述工业机器人网络的网络连接信息,确定所述工业机器人网络的迁移条件;将所述初始攻击节点作为第一节点,判断所述工业机器人网络中与所述第一节点连接的节点是否符合预设的迁移条件,并将满足所述迁移条件的节点作为第二节点;将所述第二节点作为新的第一节点,并返回所述判断所述工业机器人网络中与所述第一节点连接的节点是否符合预设的迁移条件,并将满足所述迁移条件的节点作为第二节点的步骤,直到所述工业机器人网络的节点均进行了所述迁移条件的判断,得到所述工业机器人网络中攻击者可能选择攻击的所有节点;根据所述攻击者可能攻击的所有节点确定攻击者可能选择攻击的所有网络路径。4.如权利要求3所述的工业机器人网络渗透测试方法,其特征在于,所述判断所述工业机器人网络中与所述第一节点连接的节点是否符合预设的迁移条件,包括:根据宽度优先搜索的原则对所述工业机器人网络中与所述第一节点连接的节点进行
所述迁移条件的判断。5.如权利要求1所述的工业机器人网络渗透测试方法,其特征在于,所述分析所述网络路径中每个攻击节点的弱点,包括:确定各种类型的弱点所对应的攻击行为,得到目标攻击行为;采用关联规则挖掘算法提取所述目标攻击行为的特征,根据提取的目标攻击行为的特征分析所述网络路径中每个攻击节点当前存在的弱点,所述网络路径中各个攻击节点当前存在的弱点包括所述目标攻击行为发起后各个攻击节点新增的弱点和目标攻击行为发起前相应的各个攻击节点的弱点。6.如权利要求1所述的工业机器人网络渗透测试方法,其特征在于,所述根据所述攻击路径构建攻击图,包括:获取所述攻击路径中各个攻击节点的网络状态,所述网络状态用于描述所述各个攻击节点的第二弱点信息和所述各个攻击节点的网络连接信息;根据所述各个攻击节点的网络状态确定对应节点的属性信息;获取所述攻击路径中相邻两个攻击节点之间所对应的攻击行为的信息,确定对应节点的边,所述攻击行为信息为所述攻击路径中相邻两个攻击节点之间所对应的攻击行为所利用的弱点的第二弱点信息;依据所述节点的属性信息和所述节点的边构建攻击图。7.如权利要求1至6任一项所述的工业机器人网络渗透测试方法,其特征在于,所述计算所述成功攻击路径对应的所有攻击序列的权值,包括:根据所述成功攻击路径对应的攻击序列中每条边对应的攻击行为信息和所述攻击序列的总长度,计算所述成功攻击路径的所有攻击序列的权值,所述攻击序列的边为所述攻击图中连接两个攻击节点的边,所述攻击序列的总长度为所述攻击序列从初始攻击节点到最终攻击节点的边的总数目。8.一种工业机器人网络渗透测试装置,其特征在于,包括:网络路径获取模块,用于根据工业机器人网络的网络连接信息,确定攻击者可能选择攻击的所有网络路径,所述网络连接信息包括所述工业机器人网络的各个节点的连通关系和第一弱点信息,每个节点唯一与工业机器人的一个组件对应,所述第一弱点信息为已知的弱点所对应的信息;攻击原型构建模块,用于针对任一所述网络路径,分析所述网络路径中每个攻击节点的弱点,得到第二弱点信息,根据所述第二弱点信息建立所述攻击节点的攻击原型,所述攻击节点为所述网络路径中被攻击的节点,所述第二弱点信息包括所述第一弱点信息;攻击序列构建模块,用于根据各个所述攻击原型、所述工业机器人网络中各个节点的网络连接信息和所述各个节点的权限使用关系,构建攻击序列;攻击图构建模块,用于根据所述攻击序列确定从初始攻击节点到最终攻击节点的所有攻击路径,并根据所述攻击路径构建攻击图,所述初始攻击节点为攻击者在攻击行为发起时所控制的首个攻击节点,所述最终攻击节点为攻击者在发起攻击行为时能够攻击的各攻击路径的最远的攻击节点;渗透测试图生成模块,用于融合所述攻击图与渗透测试涉及的测试数据形成渗透测试图;
渗透测试模块,用于根据所述渗透测试图对所述工业机器人网络进行渗透测试;测试结果分析模块,用于根据渗透测试结果确定成功攻击路径,计算所述成功攻击路径对应的所有攻击序列的权值,根据所述所有攻击序列的权值分析所述成功攻击路径的危害性,所述成功攻击路径为所述渗透测试中攻击者发起攻击并成功控制渗透测试目标节点的攻击路径,所述攻击序列的权值根据所述攻击序列的攻击成功概率确定,所述渗透测试目标节点为渗透测试预设的攻击节点。9.一种终端设备,包括存储器、处理器以及存储在所述存储器中并可在所述处理器上运行的计算机程序,其特征在于,所述处理器执行所述计算机程序时实现如权利要求1至7任一项所述的方法。10.一种计算机可读存储介质,所述计算机可读存储介质存储有计算机程序,其特征在于,所述计算机程序被处理器执行时实现如权利要求1至7任一项所述的方法。
技术总结
本申请适用于信息安全技术领域,提供了一种工业机器人网络渗透测试方法、装置、终端设备及计算机可读存储介质,包括:根据工业机器人网络的网络连接信息,确定攻击者可能攻击的所有网络路径,分析网络路径中每个攻击节点的弱点得到第二弱点信息,根据所述第二弱点建立攻击原型,根据攻击原型、各个节点的网络连接信息和权限使用关系,构建攻击序列,根据所述攻击序列确定从初始攻击节点到最终攻击节点的所有攻击路径,根据攻击路径构建攻击图,将攻击图与渗透测试数据融合,形成渗透测试图并进行渗透测试,根据渗透测试结果确定成功攻击路径,分析所述成功攻击路径的危害性。本申请可以为提高现有工业机器人网络的通信攻击防御能力提供有效依据。御能力提供有效依据。御能力提供有效依据。
技术研发人员:巩潇 李梦玮 崔登祺 赵郑斌 万彬彬
受保护的技术使用者:中国软件评测中心(工业和信息化部软件与集成电路促进中心)
技术研发日:2022.02.14
技术公布日:2023/8/23
版权声明
本文仅代表作者观点,不代表航家之家立场。
本文系作者授权航家号发表,未经原创作者书面授权,任何单位或个人不得引用、复制、转载、摘编、链接或以其他任何方式复制发表。任何单位或个人在获得书面授权使用航空之家内容时,须注明作者及来源 “航空之家”。如非法使用航空之家的部分或全部内容的,航空之家将依法追究其法律责任。(航空之家官方QQ:2926969996)
航空之家 https://www.aerohome.com.cn/
飞机超市 https://mall.aerohome.com.cn/
航空资讯 https://news.aerohome.com.cn/
上一篇:一种磁悬浮行驶设备的制作方法 下一篇:一种高效率的磁悬浮雾化器的制作方法