CN107948137A - 一种基于改进的q学习的最佳攻击路径规划方法 - Google Patents

一种基于改进的q学习的最佳攻击路径规划方法 Download PDF

Info

Publication number
CN107948137A
CN107948137A CN201711057910.3A CN201711057910A CN107948137A CN 107948137 A CN107948137 A CN 107948137A CN 201711057910 A CN201711057910 A CN 201711057910A CN 107948137 A CN107948137 A CN 107948137A
Authority
CN
China
Prior art keywords
host
mrow
msub
optimal attack
attack path
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Pending
Application number
CN201711057910.3A
Other languages
English (en)
Inventor
胡昌振
吕坤
陈韵
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Beijing Institute of Technology BIT
Original Assignee
Beijing Institute of Technology BIT
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Beijing Institute of Technology BIT filed Critical Beijing Institute of Technology BIT
Priority to CN201711057910.3A priority Critical patent/CN107948137A/zh
Publication of CN107948137A publication Critical patent/CN107948137A/zh
Pending legal-status Critical Current

Links

Classifications

    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1433Vulnerability analysis
    • HELECTRICITY
    • H04ELECTRIC COMMUNICATION TECHNIQUE
    • H04LTRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
    • H04L63/00Network architectures or network communication protocols for network security
    • H04L63/14Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
    • H04L63/1441Countermeasures against malicious traffic

Landscapes

  • Engineering & Computer Science (AREA)
  • Computer Security & Cryptography (AREA)
  • Computer Hardware Design (AREA)
  • Computing Systems (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Networks & Wireless Communication (AREA)
  • Signal Processing (AREA)
  • Data Exchanges In Wide-Area Networks (AREA)

Abstract

本发明涉及一种基于改进的Q学习的最佳攻击路径规划方法,属于信息安全技术领域。具体操作步骤为:步骤一、获取网络结构。步骤二、获取网络系统中各主机中存在的漏洞,建立主机漏洞状态表。步骤三、建立改进的Q学习模型。步骤四、通过改进的Q学习算法,获取最佳攻击路径路径。本发明提出的基于改进Q学习的最佳攻击路径规划方法与已有技术相比较,具有以下优点:①取消了动作集合并将所有动作与状态融合,使得算法的空间复杂度下降;②最优攻击路径生成速度快;③生成的最优攻击路径更简洁有效。

Description

一种基于改进的Q学习的最佳攻击路径规划方法
技术领域
本发明涉及一种基于改进的Q学习的最佳攻击路径规划方法,属于信息安全技术领域。
背景技术
在对信息系统网络进行渗透时,攻击者都希望选择代价小而回报大的攻击路径,其中,攻击回报与攻击代价只比最大的攻击路径为最佳攻击路径,目前的获取最佳攻击路径的方法主要是基于攻击图来获取所有的源节点与目标节点间的攻击路径后,再选取这些路径中的一条作为最佳攻击路径。
目前,比较常用的网络攻击图有:基于脆弱性的网络攻击图以及基于网络状态的攻击图。基于上述两种攻击图的攻击路径或保护路径的生成方法存在的问题是:①生成速度慢;②为了解决状态爆炸的问题,采用限定攻击路径的方式,导致攻击路径包含不全等问题。
为了解决上述问题对产生最佳攻击路径的影响,中国和日本科学家提出了基于隐马尔科夫模型的攻击图生成算法,并使用蚁群算法来对攻击路径进行优化以选取最佳攻击路径的方法。但是此方法由于算法开销太大,当面对大规模计算机机群时,即时使用最小攻击图,也无法快速拟合出最佳攻击路径。
国家发明专利(专利申请号:201710556319.6)中提出的基于Q学习的最佳攻击路径规划方法主要解决了以下问题:①提出的网络模型不需要进行训练,因此不需要收集训练数据;②可在线学习,实时确定不同时刻不同网络状态对应的最佳攻击路径;③学习率使用了退火模型,所以收敛的更加精确;④由于不需要生成攻击图,所以可以适用于大规模计算机集群。但其缺点是:①算法空间复杂度较高,因此占用内存空间较多。②生成的最佳攻击路径必须通过人工剪枝,否则存在冗余。
发明内容
本发明的目的是在基于Q学习的最佳攻击路径规划方法的基础上,提出一种基于改进的Q学习的最佳攻击路径规划方法,解决已有方法存在的算法空间复杂度高,占用内存空间较多,并且生成的最佳攻击路径存在冗余的问题。
本发明的目的是通过以下技术方案实现的。
本发明的一种基于改进的Q学习的最佳攻击路径规划方法,具体操作步骤为:
步骤一、获取网络结构。
步骤1.1:获取网络系统中各主机的软件应用,建立软件应用与主机对应表。
所述软件应用与主机对应表包含:软件应用名称和主机名称。
步骤1.2:获取网络系统中各主机之间的会话链接,建立主机间会话链接表。所述主机间会话链接表包括:源主机名和目标主机名。
步骤二、获取网络系统中各主机中存在的漏洞,建立主机漏洞状态表。所述主机漏洞状态表包括:主机名称、漏洞ID和攻击成功率。
步骤三、建立改进的Q学习模型,如公式(1)所示。
Qn+1(s)=(1-δn(s))Qn(s)+δn(s)[R(s,s')+γJn(s')]) (1)
其中,s表示当前状态,s'表示当前状态s的后继状态;n为迭代步数,n≥0;Qn+1(s)是第(n+1)步迭代时对当前状态s下得到的总体回报的一个估计值;Qn(s)是第n步迭代时对当前状态s下得到的总体回报的一个估计值;δn(s)为第n步的学习率,通过公式(2)得到;R(s,s')为立即回报函数,通过公式(3)得到;γ为贴现因子,为人为预先设定值,γ∈[0,1);Jn(s')为延时回报函数,通过公式(4)得到。
其中,α、β为人为设定值,并且
其中,R(s,s')表示在当前状态s下,到达后继状态s'的立即回报估计值;Pr为原子攻击成功率;i为主机的顺序编码;Wi为主机i的权重;∑jWj为整个网络系统中所有主机的权重和;m为主机i的第m种权限,m为正整数;Ti m表示利用当前状态s漏洞获取主机i的第m种权限对应的评分值;∑mTi m是对所有Ti m求和。
Jn(s')=maxQn(s') (4)
其中,Jn(s')为在后继状态s'下,Qn(s')的最大值;Qn(s')表示第n步中,在后继状态s'下得到的总体回报的估计值。
步骤四、通过改进的Q学习算法,获取最佳攻击路径路径。具体为:
步骤4.1:建立最佳攻击路径序列,用符号L表示,其初始值为空。
步骤4.2:设置改进的Q学习模型的初始值,此时迭代步数n=0。具体为:设置攻击路径的源主机以及目标主机;到主机漏洞状态表检索源主机对应的状态,将其作为当前状态s;设置Qn(s)=0,即Q0(s)=0。
步骤4.3:通过公式(1)计算第(n+1)步迭代时,对当前状态s下得到的总体回报的一个估计值Qn+1(s)。
步骤4.4:如果Qn+1(s)=Qn(s),则将当前状态s以及得到的后继状态s′的集合,放入最佳攻击路径序列L中,从而得到最佳攻击路径序列L,结束操作。否则使迭代步数n自增1,重复步骤4.3至步骤4.4的操作。
所述最佳攻击路径序列L中最后一个漏洞位于步骤4.2中所述目标主机中。
经过上述步骤的操作,得到从源主机到目标主机的最佳攻击路径序列L。
本发明提出的基于改进Q学习的最佳攻击路径规划方法与已有技术相比较,具有以下优点:
①取消了动作集合并将所有动作与状态融合,使得算法的空间复杂度下降。
②最优攻击路径生成速度快。
③生成的最优攻击路径更简洁有效。
附图说明
图1为本发明具体实施方式中基于改进的Q学习的最佳攻击路径规划方法的操作流程图;
图2为本发明具体实施方式中网络拓扑图。
具体实施方式
根据上述技术方案,下面结合附图和实施实例对本发明进行详细说明。
使用本发明提出的基于改进的Q学习的最佳攻击路径规划方法寻找网络系统中的最佳攻击路径,其操作流程如图1所示,具体操作步骤如下:
步骤一、获取网络结构。
如图2所示,网络系统中设置了初始的防御策略:外网人员可以访问DMZ区中主机H2,H3和H4的浏览器和DNS域名。主机H2和H3可以访问H4中的mail服务以及H5和H6上的SQL服务。主机H7为FTP服务器,除主机H8外,其它的主机只能读取和下载公开文件,不能修改文件。主机H2,H3和H4都禁止访问管理服务器H8。H8可以访问其它主机上的各种服务。
步骤1.1:获取网络系统中各主机的软件应用,建立软件应用与主机对应表,如表1所示。
所述软件应用与主机对应表包含:软件应用名称和主机名称。
表1软件应用与主机对应表
软件名称 主机名称
IIS7.0 H2,H3
BIND 9 H4
Sendmail 8.13 H4
MySQL 5.7 H5,H6
Serv-U 10.5 H7
IE6.0 H8
步骤1.2:根据步骤1.1中的防御策略获取网络系统中各主机之间的会话链接,建立主机间会话链接表,如表2所示。所述主机间会话链接表包括:源主机名和目标主机名。
表2主机间会话链接表
其中,1表示两个主机间可以连通,0表示两个主机间不可连通。
步骤二、获取网络系统中各主机中存在的漏洞,建立主机漏洞状态表,如表3所示。所述主机漏洞状态表包括:主机名称、漏洞ID(CVE ID)和攻击成功率。
表3主机漏洞状态表
步骤三、建立Q学习模型,如公式(1)所示。
Qn+1(s)=(1-δn(s))Qn(s)+δn(s)[R(s,s')+γJn(s')]) (1)
其中,s表示当前状态,s'表示当前状态s的后继状态;n为迭代步数,n≥0;Qn+1(s)是第(n+1)步迭代中对当前状态s下得到的总体回报的一个估计值;Qn(s)是第n步迭代中对当前状态s下得到的总体回报的一个估计值;δn(s)为第n步的学习率,通过公式(2)得到;R(s,s')为立即回报函数,通过公式(3)得到;γ为贴现因子,为人为预先设定值,γ∈[0,1);Jn(s')为延时回报函数,通过公式(4)得到。
其中,
其中,R(s,s')表示当前状态s到达后继状态s'的立即回报估计值;Pr为原子攻击成功率,具体赋值如表4所示;i为主机的顺序编码;Wi为主机i的权重,主机权重由主机所在网络的位置以及主机所提供的服务来决定。本实施例中,初始时,各主机主机位置及服务赋值,如表5所示,主机在网络的位置有Internet(因特网)、DMZ(非军事区网络)和Intranet(内网)三种。主机服务有以下7种:Web、DNS、MAIL、DHCP、SQL、FTP、Manager。然后将这十个属性作为输入向量输入到T-S模糊神经网络中,当主机有此服务,处于此位置时,属性值为表中对应,没有时为0。神经网络的输出依据主机对网络系统的机密性,可靠性和完整性影响分为危险、高、中、低、非常低这五种模糊输出。由于输出也是模糊的,因此,神经网络的训练只需保证网络输出与期望输出有相同的趋势既可。网络对每个输入属性的平均权值即为对应属性的权值。最终的主机位置及服务权重如表6所示,表6的第一行为各个属性的权重的系数,第二行为真实权重值,即用权重系数乘以对应的初始权重。
Jn(s')=maxQn(s') (4)
其中,Jn(s')为在后继状态s'下,Qn(s')的最大值;Qn(s')表示第n步中,在后继状态s'下得到的总体回报的估计值。
表4攻击成功率赋值标准
等级 Pr 描述
1 0.9 不需要攻击工具,有详细的攻击方法
2 0.7 有可用的攻击工具和详细的攻击方法
3 0.5 无攻击工具但有详细的攻击方法
4 0.3 弱点信息发布,粗略说明攻击方法
5 0.1 弱点信息发布,未给出攻击方法
表5初始主机位置及服务权重
Internet DMZ Intranet Web DNS MAIL DHCP SQL FTP Manager
Score 1 2 3 1 2 3 4 5 6 7
表6主机位置及服务权重
jWj为整个网络系统中所有主机的权重和;m为主机i的第m种权限,m为正整数;Ti m表示利用当前状态s中的漏洞获取主机i的第m种权限对应的评分值,∑mTi m是对所有Ti m求和。所述主机i的权限类别包括:断开(Broken)、连接(Connection)、用户权限(User)、管理员权限(Root)、拒绝服务攻击(DoS)和摧毁(Crash),权限评分如表7所示。
表7主机权限评分表
权限类型 评分
Broken 0
Connection 1
User 2
Root 3
DoS 4
Crash 5
步骤四、通过改进的Q学习算法,获取最佳攻击路径路径。具体为:
步骤4.1:建立最佳攻击路径序列,用符号L表示,其初始值为空。
步骤4.2:设置改进的Q学习模型的初始值,此时迭代步数n=0。具体为:设置攻击路径的源主机以及目标主机;将源主机其作为当前状态s;设置Qn(s)=0,即Q0(s)=0。
步骤4.3:通过公式(1)计算第(n+1)步,对当前状态s下得到的总体回报的一个估计值Qn+1(s)。
步骤4.4:如果Qn+1(s)=Qn(s),则将当前状态s以及步骤2.4得到的后继状态s’的集合,放入最佳攻击路径序列L中,从而得到最佳攻击路径序列L,结束操作。否则使迭代步数n自增1,重复步骤4.3至步骤4.4的操作。最后得到的最佳攻击路径为:H1,Root→CVE-2015-1635→H3,Root→CVE-2011-4800→H7,Root
为了说明本发明方法的有效性,在相同的网络环境下,使用国家发明专利(专利申请号:201710556319.6)提出的基于Q学习的最佳攻击路径规划方法在人工剪枝前获得的最佳攻击路径为H1,Root→CVE-2015-1635→H3,Root→CVE-2015-1635→H3,user→CVE-2011-4800→H7,Root
通过对比可以看到,使用本发明提出的方法,得到的攻击路径得到了剪枝,并且被剪掉的节点为冗余节点。此外,由于没有了动作集合,本发明方法的算法空间复杂度为O(N2),专利201710556319.6的算法的空间复杂度为O(N3)。因此得出结论:本发明方法降低了算法空间复杂度的同时,去除了冗余节点。

Claims (1)

1.一种基于改进的Q学习的最佳攻击路径规划方法,其特征在于:具体操作步骤为:
步骤一、获取网络结构;
步骤1.1:获取网络系统中各主机的软件应用,建立软件应用与主机对应表;
所述软件应用与主机对应表包含:软件应用名称和主机名称;
步骤1.2:获取网络系统中各主机之间的会话链接,建立主机间会话链接表;所述主机间会话链接表包括:源主机名和目标主机名;
步骤二、获取网络系统中各主机中存在的漏洞,建立主机漏洞状态表;所述主机漏洞状态表包括:主机名称、漏洞ID和攻击成功率;
步骤三、建立改进的Q学习模型,如公式(1)所示;
Qn+1(s)=(1-δn(s))Qn(s)+δn(s)[R(s,s')+γJn(s')]) (1)
其中,s表示当前状态,s'表示当前状态s的后继状态;n为迭代步数,n≥0;Qn+1(s)是第(n+1)步迭代时对当前状态s下得到的总体回报的一个估计值;Qn(s)是第n步迭代时对当前状态s下得到的总体回报的一个估计值;δn(s)为第n步的学习率,通过公式(2)得到;R(s,s')为立即回报函数,通过公式(3)得到;γ为贴现因子,为人为预先设定值,γ∈[0,1);Jn(s')为延时回报函数,通过公式(4)得到;
<mrow> <msub> <mi>&amp;delta;</mi> <mi>n</mi> </msub> <mrow> <mo>(</mo> <mi>s</mi> <mo>)</mo> </mrow> <mo>=</mo> <mfrac> <mi>&amp;alpha;</mi> <mrow> <mi>&amp;beta;</mi> <mo>+</mo> <mi>n</mi> </mrow> </mfrac> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>2</mn> <mo>)</mo> </mrow> </mrow>
其中,α、β为人为设定值,并且
<mrow> <mi>R</mi> <mrow> <mo>(</mo> <mi>s</mi> <mo>,</mo> <msup> <mi>s</mi> <mo>&amp;prime;</mo> </msup> <mo>)</mo> </mrow> <mo>=</mo> <msqrt> <msub> <mi>P</mi> <mi>r</mi> </msub> </msqrt> <mo>&amp;times;</mo> <mfrac> <msub> <mi>W</mi> <mi>i</mi> </msub> <mrow> <msub> <mi>&amp;Sigma;</mi> <mi>j</mi> </msub> <msub> <mi>W</mi> <mi>j</mi> </msub> </mrow> </mfrac> <mo>&amp;times;</mo> <msub> <mi>&amp;Sigma;</mi> <mi>m</mi> </msub> <msubsup> <mi>T</mi> <mi>i</mi> <mi>m</mi> </msubsup> <mo>-</mo> <mo>-</mo> <mo>-</mo> <mrow> <mo>(</mo> <mn>3</mn> <mo>)</mo> </mrow> </mrow>
其中,R(s,s')表示在当前状态s下,到达后继状态s'的立即回报估计值;Pr为原子攻击成功率;i为主机的顺序编码;Wi为主机i的权重;∑jWj为整个网络系统中所有主机的权重和;m为主机i的第m种权限,m为正整数;Ti m表示利用当前状态s漏洞获取主机i的第m种权限对应的评分值;∑mTi m是对所有Ti m求和;
Jn(s')=maxQn(s') (4)
其中,Jn(s')为在后继状态s'下,Qn(s')的最大值;Qn(s')表示第n步中,在后继状态s'下得到的总体回报的估计值;
步骤四、通过改进的Q学习算法,获取最佳攻击路径路径;具体为:
步骤4.1:建立最佳攻击路径序列,用符号L表示,其初始值为空;
步骤4.2:设置改进的Q学习模型的初始值,此时迭代步数n=0;具体为:设置攻击路径的源主机以及目标主机;到主机漏洞状态表检索源主机对应的状态,将其作为当前状态s;设置Qn(s)=0,即Q0(s)=0;
步骤4.3:通过公式(1)计算第(n+1)步迭代时,对当前状态s下得到的总体回报的一个估计值Qn+1(s);
步骤4.4:如果Qn+1(s)=Qn(s),则将当前状态s以及得到的后继状态s′的集合,放入最佳攻击路径序列L中,从而得到最佳攻击路径序列L,结束操作;否则使迭代步数n自增1,重复步骤4.3至步骤4.4的操作;
所述最佳攻击路径序列L中最后一个漏洞位于步骤4.2中所述目标主机中;
经过上述步骤的操作,得到从源主机到目标主机的最佳攻击路径序列L。
CN201711057910.3A 2017-11-01 2017-11-01 一种基于改进的q学习的最佳攻击路径规划方法 Pending CN107948137A (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201711057910.3A CN107948137A (zh) 2017-11-01 2017-11-01 一种基于改进的q学习的最佳攻击路径规划方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201711057910.3A CN107948137A (zh) 2017-11-01 2017-11-01 一种基于改进的q学习的最佳攻击路径规划方法

Publications (1)

Publication Number Publication Date
CN107948137A true CN107948137A (zh) 2018-04-20

Family

ID=61933143

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201711057910.3A Pending CN107948137A (zh) 2017-11-01 2017-11-01 一种基于改进的q学习的最佳攻击路径规划方法

Country Status (1)

Country Link
CN (1) CN107948137A (zh)

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109120646A (zh) * 2018-07-18 2019-01-01 北京理工大学 基于蒙特卡洛图搜索算法的网络最佳防御体系构建方法
CN112039864A (zh) * 2020-08-25 2020-12-04 华北电力大学 一种电力cps跨层安全风险分析的方法
CN112187710A (zh) * 2020-08-17 2021-01-05 杭州安恒信息技术股份有限公司 威胁情报数据的感知方法、装置、电子装置和存储介质
CN113810406A (zh) * 2021-09-15 2021-12-17 浙江工业大学 一种基于动态防御图与强化学习的网络空间安全防御方法

Cited By (4)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN109120646A (zh) * 2018-07-18 2019-01-01 北京理工大学 基于蒙特卡洛图搜索算法的网络最佳防御体系构建方法
CN112187710A (zh) * 2020-08-17 2021-01-05 杭州安恒信息技术股份有限公司 威胁情报数据的感知方法、装置、电子装置和存储介质
CN112039864A (zh) * 2020-08-25 2020-12-04 华北电力大学 一种电力cps跨层安全风险分析的方法
CN113810406A (zh) * 2021-09-15 2021-12-17 浙江工业大学 一种基于动态防御图与强化学习的网络空间安全防御方法

Similar Documents

Publication Publication Date Title
CN107317756A (zh) 一种基于q学习的最佳攻击路径规划方法
CN107948137A (zh) 一种基于改进的q学习的最佳攻击路径规划方法
Abraham et al. Cyber security analytics: a stochastic model for security quantification using absorbing markov chains
Zhou et al. NIG-AP: A new method for automated penetration testing
CN104796416A (zh) 一种僵尸网络的模拟方法及系统
Coull et al. Taming the devil: Techniques for evaluating anonymized network data
CN108040062B (zh) 一种基于证据推理规则的网络安全态势评估方法
CN106657144B (zh) 一种基于增强学习的动态保护路径规划方法
US20090326899A1 (en) System and method for simulating network attacks
Savenko et al. Botnet detection technique for corporate area network
CN107347069A (zh) 一种基于Kohonen神经网络的最佳攻击路径规划方法
Gharehchopogh et al. Evaluation of fuzzy k-means and k-means clustering algorithms in intrusion detection systems
CN107846418A (zh) 防火墙主动防护系统及防护方法
Xiao et al. Network security situation prediction method based on MEA-BP
CN116248311A (zh) 基于深度强化学习的网络节点安全措施缓解部署优化方法及系统
Abraham Estimating mean time to compromise using non-homogenous continuous-time Markov models
Alanazi et al. Intrusion detection system: overview
Guan et al. A realistic model extraction attack against graph neural networks
Swapna et al. Performance evaluation of fuzzy integrated firewall model for hybrid cloud based on packet utilization
Haque et al. Improving bulk power system resilience by ranking critical nodes in the vulnerability graph
Tajeddine et al. PATROL-F–a comprehensive reputation-based trust model with fuzzy subsystems
CN103795591B (zh) 一种僵尸群落分析方法及装置
Aljammal et al. Performance Evaluation of Machine Learning Approaches in Detecting IoT-Botnet Attacks.
CN108111535A (zh) 一种基于改进的蒙特卡洛算法的最优攻击路径规划方法
Moskal et al. Simulating attack behaviors in enterprise networks

Legal Events

Date Code Title Description
PB01 Publication
PB01 Publication
SE01 Entry into force of request for substantive examination
SE01 Entry into force of request for substantive examination
WD01 Invention patent application deemed withdrawn after publication

Application publication date: 20180420

WD01 Invention patent application deemed withdrawn after publication