一种基于深度Q网络的全自动高级逃逸技术测试方法技术

技术编号:22060403 阅读:33 留言:0更新日期:2019-09-07 17:54
一种基于深度Q网络的全自动高级逃逸测试方法,包括如下步骤:S100:定义一个智能体作为学习者;S200:定义学习者的动作;S300:定义学习者的状态;S400:定义学习者的回报;S500:通过不断的学习训练,选择出一种最优的高级逃逸技术的组合,对基于所述高级逃逸技术的组合的网络入侵行为进行测试。该方法提高了逃逸技术组合的效率和攻击的成功概率。

A Test Method of Fully Automatic Advanced Escape Technology Based on Deep Q Network

【技术实现步骤摘要】
一种基于深度Q网络的全自动高级逃逸技术测试方法
本公开属于网络安全
,具体涉及一种基于深度Q网络的全自动高级逃逸技术测试方法。
技术介绍
伴随着网络的不断发展和智能手机的广泛应用,网络安全问题变得越来越突出,如何保证网络系统的安全变得越来越重要也越来越棘手。由于大部分网络都是高度互联的,因此都易受到网络攻击的威胁。基于网络的入侵检测系统NIDS(NetworkIntrusionDerectionSystems),将入侵警告和安全响应进行了很好的结合,虽然在传统安全领域此方法已经很成熟,但是随着技术的不断发展,攻击变得越来越普遍并且难以测试,其中逃逸技术可以称之为这类技术的一个代表,它可以通过伪装修改网络数据流以此来逃避入侵检测系统的测试。现有的逃逸技术从实现原理上可以分为原子逃逸技术和高级逃逸技术(多种逃逸技术的组合)。其中,原子逃逸技术又可以分为四种:(1)IP分片和TCP分段的碎片化;(2)协议级误读解析;(3)负载变换;(4)应用层逃逸。另一种高级逃逸技术则是将已知的原子逃逸技术进行组合。此外还有针对NIDS/IPS的拒绝服务攻击,这种攻击能够暂时使其瘫痪,让发起的攻击可以逃逸NIDS的测试,也属于一种逃逸技术。随着逃逸技术的不断更新升级,对逃避技术的测试变得越来越困难,为了提高网络入侵检测系统测试的成功率,研究一种高效的全自动高级逃逸技术测试方法变得越来越重要。由于OSI将互联网络体系结构划分为七层,主要为:物理层、数据链路层、网络层、传输层、会话层、表示层、应用层。由于逃逸技术主要作用于应用层到网络层,因此需要将逃逸技术先进行分类然后在进行随机的组合,由于不是直接将逃逸技术随机的进行组合,这样做有利于提高执行效率。高级逃逸技术根据逃逸技术面对测试点来划分,可分为:网络逃避和主机逃避,具体参见图1。在服务器内,取得了最高控制权,就可以关闭或伪造很多假象,骗过日常的安全监控与日志审计。将逃逸技术进行分类后,就可以进行逃避技术的组合了,例如可以应用以下方式进行组合,(1)当分片与重叠一起使用时,会让IPS/WAF的还原方式变得很复杂,若是多层协议同时分片,如TCP+RPC,再加上重叠时前向与后向问题,想测试出来将变得很难。(2)填充+分片+乱序一起使用。(3)字符集与填充一起使用。也可以通过不同协议的组合来逃逸入侵测试:(1)HTTP、TCP、IP三层参数组合(2)IP、TCP、NetBios、SMB、MSRPC参数进行组合。深度Q网络DQN采用神经网络作为函数近似的模型,通过强化学习反复调整神经网络的参数,最终实现神经网络对Q表的建模。深度强化学习通过将强化学习的决策能力和深度学习的感知能力结合起来,利用深度学习将大规模原始输入数据进行简单但是非线性的变换,转换为更高层次的抽象表达,从而发现数据内在的规律,然后通过强化学习,反复更新神经网络,使得神经网络能够较好的实现对Q表的拟合,智能体通过神经网络能够获得一个较为理想的策略。为了提高测试的成功率,就需要选择尽可能多的高级逃逸技术的组合进行测试,由于高级逃逸技术的组合的形式多种多样,单纯的通过建表格进行分类统计已无法实现,如何提高组合的效率和测试的成功概率是一个亟待解决的问题。
技术实现思路
鉴于此,本公开提供了一种基于深度Q网络的全自动高级逃逸技术测试方法,包括如下步骤:S100:定义一个智能体作为学习者;S200:定义学习者的动作;S300:定义学习者的状态;S400:定义学习者的回报;S500:通过不断的学习训练,选择出一种最优的高级逃逸技术的组合,对基于所述高级逃逸技术的组合的网络入侵行为进行测试;所述S100步骤进一步包括:所述学习者将动作作用于网络入侵检测系统NIDS,通过执行某一动作将产生新的状态且在一定条件下产生回报;所述S500步骤中进一步包括:将通过训练获取的数据按照<s,a,r,s′>组合的形式存储在回放存储器中,使用来自回放存储器中的随机选择的一小部分数据进行经验回放;其中s是当前的状态,a是当前状态下所采取的动作,r是智能体在状态s下采取动作a所获得的回报,s′是智能体在状态s下采取动作a所到达的下一步状态。通过上述技术方案,本方法最终训练出一种最优的模型用于高效的测试基于高级逃逸技术的网络入侵行为,提高了逃逸技术组合的效率和攻击的成功概率。附图说明图1是本公开的高级逃逸技术的分类示意图;图2是本公开的深度Q网络运行的流程示意图;图3是本公开一个实施例中所提供的一种基于深度Q网络的全自动高级逃逸测试方法的流程示意图。具体实施方式下面结合附图1至附图3对本专利技术进行进一步的详细说明。在一个实施例中,参见图3,其公开了一种基于深度Q网络的全自动高级逃逸技术测试方法,包括如下步骤:S100:定义一个智能体作为学习者;S200:定义学习者的动作;S300:定义学习者的状态;S400:定义学习者的回报;S500:通过不断的学习训练,选择出一种最优的高级逃逸技术的组合,对基于所述高级逃逸技术的组合的网络入侵行为进行测试;所述S100步骤进一步包括:所述学习者将动作作用于网络入侵检测系统NIDS,通过执行某一动作将产生新的状态且在一定条件下产生回报;所述S500步骤中进一步包括:将通过训练获取的数据按照<s,a,r,s′>组合的形式存储在回放存储器中,使用来自回放存储器中的随机选择的一小部分数据进行经验回放;其中s是当前的状态,a是当前状态下所采取的动作,r是智能体在状态s下采取动作a所获得的回报,s′是智能体在状态s下采取动作a所到达的下一步状态。就该实施例而言,使用来自回放存储器中的随机最小批处理minibatches而不使用最近的<s,a,r,s′>组,打破了后续训练样本的相似性,否则可能会使网络达到局部最小值。经验回放使训练任务更像通常的监督学习,简化了算法的调试和测试。经验四元组的每个步骤都潜在的用于许多权重更新,从而提高数据效率。随机化样本打破了这些相关性,从而降低了更新的方差。通过使用经验重放,行为分布在其之前的许多状态上平均,平滑了学习,避免了参数的震荡和发散。本方法仅将最后N个经验四元组存储在回放存储器中,执行更新时从D中均匀随机采样。因为回放存储器的容量是有限的,采用循环存放的方法,处理完这N个然后再放入N个,因为最后N个是相对较新的经验四元组。经验回放是深度Q网络DQN的关键点,主要用于克服经验数据的相关性(correlateddata)和非平稳分布(non-stationarydistribution)问题。它的做法是从以往的状态转移(经验)中随机采样进行训练。优点:1.数据利用率高,因为一个样本被多次使用。2.连续样本的相关性会使参数更新的方差(variance)比较大,该机制可减少这种相关性。本方法通过DQN不断的对高级逃逸技术组合进行训练,将会得到一个最优的高级逃逸技术的组合,利用所述最优的高级逃逸技术的组合对NIDS进行入侵将变得更加容易。在另一个实施例中,所述S200步骤进一步包括:学习者随机选取高级逃逸技术的组合,每种高级逃逸技术的组合定义为学习者的动作。就该实施例而言,训练期间的动作主要为多种高级逃逸技术的组合,通过将组合的高级逃逸技术作用于网络入本文档来自技高网
...

【技术保护点】
1.一种基于深度Q网络的全自动高级逃逸技术测试方法,包括如下步骤:S100:定义一个智能体作为学习者;S200:定义学习者的动作;S300:定义学习者的状态;S400:定义学习者的回报;S500:通过不断的学习训练,选择出一种最优的高级逃逸技术的组合,对基于所述高级逃逸技术的组合的网络入侵行为进行测试;所述S100步骤进一步包括:所述学习者将动作作用于网络入侵测试系统NIDS,通过执行某一动作将产生新的状态且在一定条件下产生回报;所述S500步骤中进一步包括:将通过训练获取的数据按照<s,a,r,s′>组合的形式存储在回放存储器中,使用来自回放存储器中的随机选择的一小部分数据进行经验回放;其中s是当前的状态,a是当前状态下所采取的动作,r是智能体在状态s下采取动作a所获得的回报,s′是智能体在状态s下采取动作a所到达的下一步状态。

【技术特征摘要】
1.一种基于深度Q网络的全自动高级逃逸技术测试方法,包括如下步骤:S100:定义一个智能体作为学习者;S200:定义学习者的动作;S300:定义学习者的状态;S400:定义学习者的回报;S500:通过不断的学习训练,选择出一种最优的高级逃逸技术的组合,对基于所述高级逃逸技术的组合的网络入侵行为进行测试;所述S100步骤进一步包括:所述学习者将动作作用于网络入侵测试系统NIDS,通过执行某一动作将产生新的状态且在一定条件下产生回报;所述S500步骤中进一步包括:将通过训练获取的数据按照<s,a,r,s′>组合的形式存储在回放存储器中,使用来自回放存储器中的随机选择的一小部分数据进行经验回放;其中s是当前的状态,a是当前状态下所采取的动作,r是智能体在状态s下采取动作a所获得的回报,s′是智能体在状态s下采取动作a所到达的下一步状态。2.根据权利要求1所述的方法,优选的,所述S200步骤进一步包括:学习者随机选取高级逃逸技术的组合,每...

【专利技术属性】
技术研发人员:王竹晓张彭彭唐志国李为关志涛张莹贾静平
申请(专利权)人:华北电力大学
类型:发明
国别省市:北京,11

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

1