一种工控OT网络多目标渗透测试方法及系统技术方案

技术编号:35191607 阅读:16 留言:0更新日期:2022-10-12 18:12
一种工控OT网络多目标渗透测试方法及系统,其包括收集被测网络信息,生成攻击图;从攻击图中抽象出马尔可夫模型并赋予状态转换奖励;采用强化学习算法与马尔可夫模型进行交互,获得最优攻击策略;调用渗透测试工具,对最优攻击策略进行验证,其解决了现有的渗透测试方法存在的测试目标单一和测试方法繁琐的技术问题,且本发明专利技术可以满足渗透测试工程师基于自身经验改动部分攻击步骤后重新给出指导,具有较大的灵活性,可广泛应用于大数据处理领域。域。域。

【技术实现步骤摘要】
一种工控OT网络多目标渗透测试方法及系统


[0001]本专利技术涉及大数据处理领域,尤其是涉及一种工控OT网络多目标渗透测试方法及系统。

技术介绍

[0002]工控OT(Operation Technology)网络用于管理工业基础设施,连接控制设备与被控制设备,如工业控制系统(ICS)和数据采集与监视控制系统(SCADA)等。传统的工业控制系统是独立的与互联网隔离的系统,近年来,随着工业控制系统的联网,工业控制系统封闭性和专有性被打破,众多攻击案例表明网络攻击穿越了IT网络向OT网络渗透。
[0003]渗透测试是一种典型分析技术,从攻击者的视角评估系统安全性,可以用于辅助漏洞修复、安全加固等,当前对网络的自动渗透测试通常输出一条最优攻击路径,用于辅助安全防护者优先修补最优路径上的漏洞,渗透测试需要大量的专业知识,传统的渗透测试需要由专家执行,渗透测试由于人力成本高昂,只能采取定期对系统进行测试评估,难以通过频繁测试实现对系统状态的掌握,当前业界投入大量资源研发自动渗透测试工具,用于辅助进行渗透测试,减少专家的工作量。
[0004]其中,基于强化学习进行自动渗透测试的方法由于具有在和环境交互过程中总结经验的特点,很适合渗透测试场景,得到了广泛使用。目前大部分采取IT网络渗透测试,部分应用采用强化学习和真实环境进行交互,但其训练过程中往往需要大量的尝试攻击模块,训练过程并没有比遍历式的执行效率高,一些现有技术使了MulVAL工具获得攻击图,然后在攻击图上提取部分节点作为马尔可夫模型,进行强化学习训练,该方法结合了攻击图推理引擎的优点,具有训练简单的特点,在获得的模型上训练避免了直接和环境交互产生大量无意义攻击流量,然而该类方法仅仅应用于简单的单目标场景,针对当前工控网络使用大量缺少认证和加密机制的工业控制协议,如Modbus、OPCDA等,在获取工业网络访问权限后可以对工业控制设备直接发送控制指令造成破坏,将穿越IT网络连接OT网络的目标定义为获取可以访问工控网络的主机的权限。这代表着在一次渗透测试中存在多个可能的最终目标,评估每一步攻击的优劣需要考虑多个目标的影响。
[0005]因此,现有方法定义了过多的与目标无关的正奖励,导致其最优路径中目标性不强,倾向于沿路径收集多个正奖励,广泛的攻击网络中的漏洞,这类方法最终输出一条最优攻击路径而不是攻击策略,缺乏对攻击过程中干扰的考虑,辅助专家进行渗透测试时,要求专家严格按照系统找到的最优路径执行,不能够适应专家基于个人经验和偏好做出的调整。

技术实现思路

[0006]本申请的目的在于提供一种工控OT网络多目标渗透测试方法及系统,旨在解决传统的渗透测试方法存在的测试目标单一和测试方法繁琐的技术问题。
[0007]本申请实施例的第一方面提供了一种工控OT网络多目标渗透测试方法,其包括:
[0008]收集被测网络信息,生成攻击图;
[0009]从所述攻击图中抽象出马尔可夫模型并赋予状态转换奖励;
[0010]采用强化学习算法与所述马尔可夫模型进行交互,获得最优攻击策略;
[0011]调用渗透测试工具,对所述最优攻击策略进行验证。
[0012]优选的,收集被测网络信息,具体通过以下方式实现:
[0013]对被测网络系统进行信息扫描;
[0014]工控网络渗透测试目标的设置;
[0015]收集并建立漏洞数据集进行数据存储。
[0016]优选的,生成攻击图,具体通过以下方式实现:
[0017]根据网络上各主机之间的连通性关系和漏洞前后条件关系推导出各个漏洞之间的关系,形成攻击图,利用收集到的主机配置信息,通过MulVAL工具获得攻击图。
[0018]优选的,从所述攻击图中抽象出马尔可夫模型并赋予状态转换奖励,具体通过以下方式实现:
[0019]将攻击图上的所有节点作为马尔可夫过程的状态,攻击图上的节点拥有不同的奖励,代表马尔可夫过程中,进入该状态会获得的奖励。
[0020]优选的,采用强化学习算法与所述马尔可夫模型进行交互,具体通过以下方式实现:
[0021]每一幕开始,选定任意初始状态s,由预测值网络计算出该s下所有动作对应的Q值,选择最大的Q值对应的动作a,施加到环境MDP模型中,在这里具体过程是查询马尔可夫模型图,如果状态之间有有向边连接,则成功返回下一状态s

,其编号与a相同,查询奖励矩阵获得奖励r;如果没有有向边相连,则返回下一状态s

,其编号与s相同,查询奖励矩阵获得奖励r,并将该经验(s,a,r,s

)放入回放换缓冲区中;
[0022]每一次和环境进行交互将经验放入回放缓冲区后,神经网络都会进行多次训练,回放缓冲区是一个固定大小的存放经验的存储区,在训练神经网络时,随机的从回放缓冲区中获取经验,将其中(s,a)传递给预测值网络,预测值网络由其当前的网络参数w,输出Q(s,a,w),回放缓冲区将s

传递给目标值网络,目标值网络输入最大的Q值maxQ(s

,a

,w

),回放缓冲区再将r直接传递给损失值函数,maxQ(s

,a

,w

)+r

Q(s,a,w)是预测值网络训练需要的误差函数,其梯度可以指导预测值网络修改参数,多次交互后,复制预测值网络的参数到目标值网络,每一幕的交互直到进入马尔可夫模型目标节点或者超过最大步数终止,训练结束时得到神经网络参数。
[0023]优选的,获得最优攻击策略,具体通过以下方式实现:
[0024]向强化学习训练后获得的神经网络输入状态,输出的是这个状态下各个动作的价值,即Q值,智能体查找最大的Q值对应的动作,可以获得当前状态下最优的下一步动作;从起始状态出发,若一直按照最优策略进行,即可得到最优路径;若偏离了最优路径,攻击策略提供下一步攻击的指导。
[0025]优选的,调用渗透测试工具,对所述最优攻击策略进行验证,具体通过以下方式实现:
[0026]根据智能体获得的最佳路径,借由攻击图提供的信息,指导调用渗透测试工具进行实际渗透测试。
[0027]优选的,渗透测试工具采用Metasploit、burpsuit或W3af。
[0028]本申请的第二方面提供了一种工控OT网络多目标渗透测试系统,包括:
[0029]攻击图生成模块:用于收集被测网络信息,生成攻击图;
[0030]攻击图转换模块:用于从所述攻击图中抽象出马尔可夫模型并赋予状态转换奖励;
[0031]交互模块:用于采用强化学习算法与所述马尔可夫模型进行交互,获得最优攻击策略;
[0032]验证模块:用于调用渗透测试工具,对所述最优攻击策略进行验证。
[0033]本专利技术通过收集信息,获取攻击图,从攻击图抽象出马尔可夫模型,然后使用强化学习方法获得马尔可夫模本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种工控OT网络多目标渗透测试方法,其特征在于,包括以下步骤:收集被测网络信息,生成攻击图;从所述攻击图中抽象出马尔可夫模型并赋予状态转换奖励;采用强化学习算法与所述马尔可夫模型进行交互,获得最优攻击策略;调用渗透测试工具,对所述最优攻击策略进行验证。2.根据权利要求1所述的一种工控OT网络多目标渗透测试方法,其特征在于,收集被测网络信息,具体通过以下方式实现:对被测网络系统进行信息扫描;工控网络渗透测试目标的设置;收集并建立漏洞数据集进行数据存储。3.根据权利要求1所述的一种工控OT网络多目标渗透测试方法,其特征在于,生成攻击图,具体通过以下方式实现:根据网络上各主机之间的连通性关系和漏洞前后条件关系推导出各个漏洞之间的关系,形成攻击图,利用收集到的主机配置信息,通过MulVAL工具获得攻击图。4.根据权利要求1所述的一种工控OT网络多目标渗透测试方法,其特征在于,从所述攻击图中抽象出马尔可夫模型并赋予状态转换奖励,具体通过以下方式实现:将攻击图上的所有节点作为马尔可夫过程的状态,攻击图上的节点拥有不同的奖励,代表马尔可夫过程中,进入该状态会获得的奖励。5.根据权利要求1所述的一种工控OT网络多目标渗透测试方法,其特征在于,采用强化学习算法与所述马尔可夫模型进行交互,具体通过以下方式实现:每一幕开始,选定任意初始状态s,由预测值网络计算出该s下所有动作对应的Q值,选择最大的Q值对应的动作a,施加到环境MDP模型中,在这里具体过程是查询马尔可夫模型图,如果状态之间有有向边连接,则成功返回下一状态s

,其编号与a相同,查询奖励矩阵获得奖励r;如果没有有向边相连,则返回下一状态s

,其编号与s相同,查询奖励矩阵获得奖励r,并将该经验(s,a,r,s

)放入回放换缓冲区中;每一次和环境进行交互将经验放入回放缓冲区后,神经网络都会进行多次训练,回放缓冲区是一个固定大小的存放经验的存储区,在训练神经网络时,随机的从回放缓冲区中获取经验,将其中(s,...

【专利技术属性】
技术研发人员:王凯吴贤生王子博张耀方王佰玲
申请(专利权)人:威海天之卫网络空间安全科技有限公司
类型:发明
国别省市:

网友询问留言 已有0条评论
  • 还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。

1