CN116743468A - 基于强化学习的动态攻击路径生成方法 - Google Patents
基于强化学习的动态攻击路径生成方法 Download PDFInfo
- Publication number
- CN116743468A CN116743468A CN202310757725.4A CN202310757725A CN116743468A CN 116743468 A CN116743468 A CN 116743468A CN 202310757725 A CN202310757725 A CN 202310757725A CN 116743468 A CN116743468 A CN 116743468A
- Authority
- CN
- China
- Prior art keywords
- node
- vulnerability
- network
- attack path
- nodes
- 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
Links
- 238000000034 method Methods 0.000 title claims abstract description 35
- 230000002787 reinforcement Effects 0.000 title claims abstract description 34
- 239000011159 matrix material Substances 0.000 claims abstract description 28
- 238000012549 training Methods 0.000 claims abstract description 27
- 238000004364 calculation method Methods 0.000 claims abstract description 9
- 238000010586 diagram Methods 0.000 claims abstract description 7
- 238000004891 communication Methods 0.000 claims abstract description 4
- 230000009471 action Effects 0.000 claims description 31
- 230000008901 benefit Effects 0.000 claims description 4
- 230000005540 biological transmission Effects 0.000 claims description 3
- 230000004083 survival effect Effects 0.000 claims description 3
- 238000013507 mapping Methods 0.000 claims description 2
- 230000007547 defect Effects 0.000 description 2
- 238000012986 modification Methods 0.000 description 2
- 230000004048 modification Effects 0.000 description 2
- 238000006243 chemical reaction Methods 0.000 description 1
- 238000010276 construction Methods 0.000 description 1
- 238000001514 detection method Methods 0.000 description 1
- 238000005516 engineering process Methods 0.000 description 1
- 230000006870 function Effects 0.000 description 1
- 230000009545 invasion Effects 0.000 description 1
- 238000003012 network analysis Methods 0.000 description 1
- 238000005457 optimization Methods 0.000 description 1
- 230000008520 organization Effects 0.000 description 1
- 238000011002 quantification Methods 0.000 description 1
- 238000011160 research Methods 0.000 description 1
- 230000000007 visual effect Effects 0.000 description 1
- 238000012038 vulnerability analysis Methods 0.000 description 1
- 239000002699 waste material Substances 0.000 description 1
Classifications
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1433—Vulnerability analysis
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/14—Network analysis or design
- H04L41/145—Network analysis or design involving simulating, designing, planning or modelling of a network
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L41/00—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks
- H04L41/16—Arrangements for maintenance, administration or management of data switching networks, e.g. of packet switching networks using machine learning or artificial intelligence
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/02—Topology update or discovery
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L45/00—Routing or path finding of packets in data switching networks
- H04L45/12—Shortest path evaluation
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L63/00—Network architectures or network communication protocols for network security
- H04L63/14—Network architectures or network communication protocols for network security for detecting or protecting against malicious traffic
- H04L63/1441—Countermeasures against malicious traffic
-
- H—ELECTRICITY
- H04—ELECTRIC COMMUNICATION TECHNIQUE
- H04L—TRANSMISSION OF DIGITAL INFORMATION, e.g. TELEGRAPHIC COMMUNICATION
- H04L9/00—Cryptographic mechanisms or cryptographic arrangements for secret or secure communications; Network security protocols
- H04L9/40—Network security protocols
Landscapes
- Engineering & Computer Science (AREA)
- Computer Networks & Wireless Communication (AREA)
- Computer Security & Cryptography (AREA)
- Signal Processing (AREA)
- Computing Systems (AREA)
- General Engineering & Computer Science (AREA)
- Computer Hardware Design (AREA)
- Artificial Intelligence (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Databases & Information Systems (AREA)
- Evolutionary Computation (AREA)
- Medical Informatics (AREA)
- Software Systems (AREA)
- Management, Administration, Business Operations System, And Electronic Commerce (AREA)
Abstract
本发明提出了一种基于强化学习的动态攻击路径生成方法,主要解决现有技术在内部网络环境下获取最优攻击路径效率低且结果不全面的问题。包括:1)构建用于模拟真实内部网络情况的网络拓扑结构;2)生成网络拓扑结构图,获取网络拓扑信息以及各主机漏洞信息;3)对主机漏洞信息进行权值计算,得到表示各节点间连通边的权值矩阵;4)利用前述步骤得到的信息构建基于强化学习的动态攻击路径生成模型;5)采用改进强化学习Q‑learning算法对模型进行迭代训练;6)根据训练后的攻击路径生成模型获取最优攻击路径结果。本发明能够应对复杂网络环境,高效输出符合真实网络环境特征的全部最优攻击路径结果。
Description
技术领域
本发明属于计算机网络技术领域,进一步涉及攻击路径生成方法,具体为一种基于强化学习的动态攻击路径生成方法,可用于企业、机构等内部网络获取最优攻击路径。
背景技术
攻击路径指的是黑客或攻击者在攻击目标系统时,所采用的一系列步骤或方法。攻击者通过探测目标系统的漏洞或弱点,制定攻击路径并进行攻击,最终实现对目标系统的入侵。随着网络系统日益复杂化,通过最优路径攻击的方式发动网络攻击已成为影响各企业、机构内部网络安全的重要因素。现阶段内部网络中探寻最优攻击路径主要有基于攻击图和基于强化学习的方法,其中,采用基于攻击图的实现方法是目前的主流方案,该方式是一种基于模型的网络脆弱性分析技术,利用攻击图可以发现潜在的攻击路径,但目前利用攻击图去分析网络环境安全性的方法大多适用于小型内部网络分析,且每一次只能得出一条攻击实例。强化学习是一种无模型、在线学习的算法,采用基于强化学习的方法可以通过训练快速寻找到最优路径,同时可以适应未知环境,因此十分适合做最优路径规划工作。其中典型的方法是基于Q-learning的攻击路径生成方法,用于解决离散动作空间的问题。它通过不断地试错和学习来寻找最优策略,通过训练可以在较短的时间内找到最优策略。然而,目前的方法没有利用内部网络信息去优化最优攻击路径生成,效率不高且不具备针对性。同时由于Q-learning算法的时间复杂度较高以及强化学习初期训练速度慢的局限性,在处理大规模状态空间时,计算成本会非常高。
例如申请公布号为CN107317756A,名称为“一种基于Q学习的最佳攻击路径规划方法”的专利申请,采用Q-learning算法进行最佳攻击路径规划,通过获取网络结构与主机漏洞表作为Q学习最佳攻击路径规划模型的输入,采用Q-learning算法进行迭代训练,输出最佳攻击路径序列。设计的奖励函数包含当前状态、当前主机存在的漏洞以及后继状态的奖励信息。该方法不需要收集训练数据,可以在线学习,实时确定不同时刻不同网络状态对应的最佳攻击路径。但是存在的缺陷是存在算法参数运用不足,缺乏针对性,且占用了较多内存资源,同时仍无法解决复杂网络环境带来的环路问题以及强化学习初期训练速度慢的问题。
发明内容
本发明的目的在于针对上述已有技术的不足,提出了一种基于强化学习的动态攻击路径生成方法,用于解决现有技术中复杂网络环境下最优攻击路径生成效率低且获取路径不全面的问题。
本发明的技术思路是:首先,构建实验网络模拟真实内网,并获取实验网络中的网络拓扑信息以及各主机漏洞信息,接着对主机漏洞信息进行权值转换,利用这些信息构建强化学习动态攻击路径生成模型,而后利用改进强化学习Q-learning算法进行迭代训练,训练完成后获取最优攻击路径结果,具体包括如下步骤:
(1)构建网络拓扑结构G:
构建包括m个节点和n条边的网络拓扑结构G,用于模拟真实内部网络情况;且从起始节点到目标节点具有连通性,各节点主机具有漏洞信息,其中m≥5,n≥15;
(2)生成网络拓扑结构G的网络拓扑结构图:
(2a)读取G中起始节点的IPv4路由表信息,提取出路由表里的网络目标和网络掩码,再将网络目标和网络掩码数据转换为二进制形式的IP地址进行与运算,获得与当前节点相应设备相连接的网段信息,通过与网段中主机建立传输控制协议TCP连接,将连接成功的主机添加到存活主机列表;
(2b)通过对存活主机列表中的存活主机之间进行连通性检测,将连通的主机之间以节点和边的方式记录,其中节点表示主机IP地址,边表示主机之间可以直接相通,得到网络拓扑结构G的网络拓扑结构图,并按照节点个数对网络拓扑中每个节点从1到m进行编号,其中初始节点记为1、目标节点记为m;
(3)获取各节点间连通边的权值矩阵ω:
(3a)使用Nmap工具探测常规端口并记录开放端口号,匹配漏洞POC库,获取各个节点上存在漏洞的通用漏洞披露CVE名;
(3b)通过比对各节点漏洞的通用漏洞披露CVE名称和美国国家漏洞数据库的漏洞数据,得到各节点漏洞的通用漏洞评分系统CVSS评分,每个节点保留最高的CVSS评分,构建漏洞评分数据列表
(3c)获取评分列表中各节点漏洞评分并进行权值计算,得到表示各节点间连通边的权值矩阵ω;
(4)构建基于强化学习的动态攻击路径生成模型:
(4a)建立大小为m×m的奖励矩阵R,行列索引根据步骤(2b)从1到m进行编号,将权值矩阵ω中节点之间的权值作为奖励,初始化奖励矩阵R,对ω中没有的权值设置奖励为N,表示节点之间不连通;
(4b)将起始节点作为初始状态S1,目标节点作为目标状态Sm,其余节点表示中间状态Sz,1<z<m,每个节点连通的边表示可执行动作A,Ai表示当前状态Si下所有可执行的动作,Aij表示当前状态Si可以达到新状态Sj的动作,i、j∈[1,m],Rij表示从当前状态Si采取动作Aij到达新状态Sj获得的奖励值,得到基于强化学习的动态攻击路径生成模型;
(5)初始化大小为m×m的矩阵Q表,行列索引根据步骤(2b)从1到m进行编号,Q表中每一个Q值元素均设置为0,根据奖励矩阵R中的先验知识对Q表进行初始化,令Q(Si,Aij)表示在当前状态Si采取动作Aij带来的收益期望;
(6)采用改进强化学习Q-learning算法对步骤(4)构建的模型进行迭代训练:
(6a)设定学习率为α、折扣率为γ、迭代次数为episode以及进行收敛判别的判别周期为T;
(6b)令当前迭代次数为t,初始状态为S1;
(6c)在当前状态Si下,根据动作选取原则选择下一步动作Aij;
(6d)在到达新状态Sj时,获取奖励Rij,并根据更新公式更新Q表中的Q(Si,Aij);
(6e)判断新状态Sj是否为目标状态Sm,若是,则执行步骤(6f),否则执行步骤(6c);
(6f)判断t除以T是否为整数,若是,则记录此时Q表中收益期望的最小值Q(S1,A1j),计入判别列表θ,并执行步骤(6g),否则令t=t+1,返回步骤(6b);
(6g)判断判别列表θ最近三次记录是否不变,若是,则迭代训练结束,执行步骤(7),否则令t=t+1,并返回步骤(6b);
(7)获取最优攻击路径结果:
根据迭代训练完成后的最优攻击路径生成模型,通过对Q表进行搜索,从起始节点起检索Q值最小的下一步动作,记录到达目标节点累计Q值最小的路径并对其进行汇总,得到最优攻击路径结果。
本发明与现有技术相比,具有以下优点:
第一、由于本发明采用容易实现且高效的方式进行网络拓扑发现以及漏洞扫描,针对未知的网络情况可以充分获取目标信息,且每一条路由的记录都是经过验证的,可以确保网络拓扑探测的精度,与现有技术相比,解决了未知网络发现难题,并可以适应多种内部网络环境。
第二、由于本发明采用在攻击图的有向边上附加权值的方式,使得利用强化学习算法进行最优攻击路径发现时,能够更为精准的反映出内部网络最优攻击路径上主机的脆弱性,使得结果更直观且更具有代表性,与现有技术相比,提高了内部网络信息利用率。
第三、由于本发明采用强化学习Q-learning算法,对算法各项参数做了适应性修改,将Q-learning算法选取原则由选取最大期望修改为选取最小期望,在考虑到局部最优解的同时注意到整体求解的最优性,与现有技术相比,解决了复杂网络中可能存在的环路问题,同时实现对全部最优攻击路径的获取。
第四、由于本发明利用收集到的网络信息作为强化学习模型的先验知识辅助训练,通过在训练前提前对Q表进行更新,干预训练初期的路径选取,提升强化学习初期训练速度,同时通过自动判别是否完成收敛缩短迭代训练的时间,与现有技术相比,保证了在复杂网络环境下的最优攻击路径生成效率,降低了各种网络下的计算成本。
附图说明
图1为本发明的实现流程图;
图2为本发明对基于强化学习动态攻击路径生成模型进行迭代训练的实现流程图;
图3为本发明实施例提供的带权值攻击图。
具体实施方式
下面结合附图和具体实施例,对本发明作进一步详细描述。
参照附图1,本发明提出的一种基于强化学习的动态攻击路径生成方法,通过对内部网络环境进行网络拓扑发现以及漏洞扫描获取内网信息,利用收集到的内网信息构建动态攻击路径生成模型,使用基于强化学习方法进行迭代训练,获取最优攻击路径结果;具体包括如下步骤:
步骤1.构建网络拓扑结构G:
构建包括m个节点和n条边的网络拓扑结构G,用于模拟真实内部网络情况;且从起始节点到目标节点具有连通性,各节点主机具有漏洞信息,其中m≥5,n≥15。
本实施例选用包含9个主机节点网络拓扑作为实验网络G,每个节点均存在边与其相连,在该拓扑中,m=9,n=19;
步骤2.生成网络拓扑结构G的网络拓扑结构图:
(2a)读取G中起始节点的IPv4路由表信息,提取出路由表里的网络目标和网络掩码,再将网络目标和网络掩码数据转换为二进制形式的IP地址进行与运算,获得与当前节点相应设备相连接的网段信息,通过与网段中主机建立传输控制协议TCP连接,将连接成功的主机添加到存活主机列表;
(2b)通过对存活主机列表中的存活主机之间进行连通性检测,将连通的主机之间以节点和边的方式记录,其中节点表示主机IP地址,边表示主机之间可以直接相通,得到网络拓扑结构G的网络拓扑结构图,并按照节点个数对网络拓扑中每个节点从1到m进行编号,其中初始节点记为1、目标节点记为m;
步骤3.获取各节点间连通边的权值矩阵ω:
(3a)使用Nmap工具探测常规端口并记录开放端口号,匹配漏洞POC库,获取各个节点上存在漏洞的通用漏洞披露CVE名;
(3b)通过比对各节点漏洞的通用漏洞披露CVE名称和美国国家漏洞数据库的漏洞数据,得到各节点漏洞的通用漏洞评分系统CVSS评分,每个节点保留最高的CVSS评分,构建漏洞评分数据列表
(3c)获取评分列表中各节点漏洞评分并进行权值计算,得到表示各节点间连通边的权值矩阵ω;这里进行的权值计算,具体是构建权值矩阵ω映射主机漏洞评分,其计算公式如下:
其中,x表示源节点,y表示指向节点,表示漏洞评分数据列表,/>表示指向节点对应的漏洞评分,且/>ω表示权值矩阵,ωxy表示从源节点到指向节点边的权值,表示取列表中最大值,/>表示取列表中最小值。
步骤4.构建基于强化学习的动态攻击路径生成模型:
(4a)建立大小为m×m的奖励矩阵R,行列索引根据步骤(2b)从1到m进行编号,将权值矩阵ω中节点之间的权值作为奖励,初始化奖励矩阵R,对ω中没有的权值设置奖励为N,表示节点之间不连通;本实例中将N设置为100,这里通常设定的N为较大数值。
(4b)将起始节点作为初始状态S1,目标节点作为目标状态Sm,其余节点表示中间状态Sz,1<z<m,每个节点连通的边表示可执行动作A,Ai表示当前状态Si下所有可执行的动作,Aij表示当前状态Si可以达到新状态Sj的动作,i、j∈[1,m],Rij表示从当前状态Si采取动作Aij到达新状态Sj获得的奖励值,得到基于强化学习的动态攻击路径生成模型;
步骤5.初始化大小为m×m的矩阵Q表,行列索引根据步骤(2b)从1到m进行编号,Q表中每一个Q值元素均设置为0,根据奖励矩阵R中的先验知识对Q表进行初始化,即利用奖励矩阵R中节点之间的奖励值初始化Q表值,将Q(Si,Aij)值更新为Rij值,其中Q(Si,Aij)表示在当前状态Si采取动作Aij带来的收益期望;
步骤6.参照图2,采用改进强化学习Q-learning算法对步骤4构建的模型进行迭代训练:
(6a)设定学习率为α、折扣率为γ、迭代次数为episode以及进行收敛判别的判别周期为T;其中学习率α用于表示每次期望值和实际奖励值的误差值被学习的程度,折扣率γ用来表示对未来奖励的衰减值,本实施例中设置学习率为α、折扣率为γ分别为0.8和1,判别周期T为10。
(6b)令当前迭代次数为t,初始状态为S1;
(6c)在当前状态Si下,根据动作选取原则选择下一步动作Aij;所述动作选取原则,是指选取当前状态Si下,Q表中第i行最小值对应的动作,若有多个最小值则随机选取。
(6d)在到达新状态Sj时,获取奖励Rij,并根据更新公式更新Q表中的Q(Si,Aij);所述更新公式,具体如下:
Q(Si,Aij)←Q(Si,Aij)+α(Rij+γminQ(Sj,Aj′)-Q(Si,Aij))
其中,Aj′表示达到新的状态Sj后按动作选取原则选择的下一动作。
(6e)判断新状态Sj是否为目标状态Sm,若是,则执行步骤(6f),否则执行步骤(6c);
(6f)判断t除以T是否为整数,若是,则记录此时Q表中收益期望的最小值Q(S1,A1j),计入判别列表θ,并执行步骤(6g),否则令t=t+1,返回步骤(6b);
(6g)判断判别列表θ最近三次记录是否不变,若是,则迭代训练结束,执行步骤(7),否则令t=t+1,并返回步骤(6b);
步骤7.获取最优攻击路径结果:
根据迭代训练完成后的最优攻击路径生成模型,通过对Q表进行搜索,从起始节点起检索Q值最小的下一步动作,记录到达目标节点累计Q值最小的路径并对其进行汇总,得到最优攻击路径结果。
参照图3,使用带权值攻击图对得到的最优攻击路径结果进行直观展示,该示例中共有9个节点、19条有向边,起始节点为1,目标节点为9,存在一条路径为1→4→5→9的最优攻击路径,使得从起始节点到目标节点累计权值最小,值为23。
随着网络系统日益复杂化、多元化,网络风险也在不断上升,通过最优路径发动攻击的方式发动网络攻击已成为影响各企业、机构内部网络安全的重要因素,这种攻击方式成为了不可忽视的安全隐患,具有攻击性高且难以溯源的特点。本发明首先采用在攻击图上附加权值的方式,对内部网络中各主机进行漏洞扫描与权值量化,建立带权值攻击图,更加精准的反映内部网络中各主机的脆弱性,提升了内部网络信息利用率;其次对强化学习Q-learning算法各项参数做了适应性修改,将动作选取原则由选取最大期望修改为选取最小期望,考虑局部最优的同时注意整体的最优性,避免了环路问题,实现对全部最优攻击路径的同时获取;最后利用收集到的网络信息作为先验知识辅助强化学习训练,提升了训练初期的速度,同时通过自动判别收敛结束缩短训练浪费时间,提升了最优攻击路径的生成效率,降低了各种网络环境下的计算成本。解决了现有技术针对内部网络环境下获取最优攻击路径效率低且结果不全面的问题,并能够应对复杂网络环境输出符合真实网络环境特征的全部最优攻击路径结果,精准反映内网脆弱性,因此具有良好的研究价值和应用前景。
本发明未详细说明部分属于本领域技术人员公知常识。
以上所述仅为本发明的较佳实施例而已,并不用以限制本发明,显然对于本领域的专业人员来说,在了解了本发明内容和原理后,都可能在不背离本发明原理、结构的情况下,进行形式和细节上的各种修正和改变,但是这些基于本发明思想的修正和改变仍在本发明的权利要求保护范围之内。
Claims (6)
1.一种基于强化学习的动态攻击路径生成方法,其特征在于,包括如下步骤:
(1)构建网络拓扑结构G:
构建包括m个节点和n条边的网络拓扑结构G,用于模拟真实内部网络情况;且从起始节点到目标节点具有连通性,各节点主机具有漏洞信息,其中m≥5,n≥15;
(2)生成网络拓扑结构G的网络拓扑结构图:
(2a)读取G中起始节点的IPv4路由表信息,提取出路由表里的网络目标和网络掩码,再将网络目标和网络掩码数据转换为二进制形式的IP地址进行与运算,获得与当前节点相应设备相连接的网段信息,通过与网段中主机建立传输控制协议TCP连接,将连接成功的主机添加到存活主机列表;
(2b)通过对存活主机列表中的存活主机之间进行连通性检测,将连通的主机之间以节点和边的方式记录,其中节点表示主机IP地址,边表示主机之间可以直接相通,得到网络拓扑结构G的网络拓扑结构图,并按照节点个数对网络拓扑中每个节点从1到m进行编号,其中初始节点记为1、目标节点记为m;
(3)获取各节点间连通边的权值矩阵ω:
(3a)使用Nmap工具探测常规端口并记录开放端口号,匹配漏洞POC库,获取各个节点上存在漏洞的通用漏洞披露CVE名;
(3b)通过比对各节点漏洞的通用漏洞披露CVE名称和美国国家漏洞数据库的漏洞数据,得到各节点漏洞的通用漏洞评分系统CVSS评分,每个节点保留最高的CVSS评分,构建漏洞评分数据列表
(3c)获取评分列表中各节点漏洞评分并进行权值计算,得到表示各节点间连通边的权值矩阵ω;
(4)构建基于强化学习的动态攻击路径生成模型:
(4a)建立大小为m×m的奖励矩阵R,行列索引根据步骤(2b)从1到m进行编号,将权值矩阵ω中节点之间的权值作为奖励,初始化奖励矩阵R,对ω中没有的权值设置奖励为N,表示节点之间不连通;
(4b)将起始节点作为初始状态S1,目标节点作为目标状态Sm,其余节点表示中间状态Sz,1<z<m,每个节点连通的边表示可执行动作A,Ai表示当前状态Si下所有可执行的动作,Aij表示当前状态Si可以达到新状态Sj的动作,i、j∈[1,m],Rij表示从当前状态Si采取动作Aij到达新状态Sj获得的奖励值,得到基于强化学习的动态攻击路径生成模型;
(5)初始化大小为m×m的矩阵Q表,行列索引根据步骤(2b)从1到m进行编号,Q表中每一个Q值元素均设置为0,根据奖励矩阵R中的先验知识对Q表进行初始化,令Q(Si,Aij)表示在当前状态Si采取动作Aij带来的收益期望;
(6)采用改进强化学习Q-learning算法对步骤(4)构建的模型进行迭代训练:
(6a)设定学习率为α、折扣率为γ、迭代次数为episode以及进行收敛判别的判别周期为T;
(6b)令当前迭代次数为t,初始状态为S1;
(6c)在当前状态Si下,根据动作选取原则选择下一步动作Aij;
(6d)在到达新状态Sj时,获取奖励Rij,并根据更新公式更新Q表中的Q(Si,Aij);
(6e)判断新状态Sj是否为目标状态Sm,若是,则执行步骤(6f),否则执行步骤(6c);
(6f)判断t除以T是否为整数,若是,则记录此时Q表中收益期望的最小值Q(S1,A1j),计入判别列表θ,并执行步骤(6g),否则令t=t+1,返回步骤(6b);
(6g)判断判别列表θ最近三次记录是否不变,若是,则迭代训练结束,执行步骤(7),否则令t=t+1,并返回步骤(6b);
(7)获取最优攻击路径结果:
根据迭代训练完成后的最优攻击路径生成模型,通过对Q表进行搜索,从起始节点起检索Q值最小的下一步动作,记录到达目标节点累计Q值最小的路径并对其进行汇总,得到最优攻击路径结果。
2.根据权利要求1所述的方法,其特征在于:步骤(3c)中所述的权值计算,具体是构建权值矩阵ω映射主机漏洞评分,其计算公式如下:
其中,x表示源节点,y表示指向节点,表示漏洞评分数据列表,/>表示指向节点对应的漏洞评分,且/>ω表示权值矩阵,ωxy表示从源节点到指向节点边的权值,/>表示取列表中最大值,/>表示取列表中最小值。
3.根据权利要求1所述的方法,其特征在于:步骤(5)中所述对Q表进行初始化,是利用奖励矩阵R中节点之间的奖励值初始化Q表值,将Q(Si,Aij)值更新为Rij值。
4.根据权利要求1所述的方法,其特征在于:步骤(6a)中所述学习率为α、折扣率为γ分别设置为0.8和1。
5.根据权利要求1所述的方法,其特征在于:步骤(6c)中所述动作选取原则,是指选取当前状态Si下,Q表中第i行最小值对应的动作,若有多个最小值则随机选取。
6.根据权利要求1所述的方法,其特征在于:步骤(6d)中所述更新公式,具体如下:
Q(Si,Aij)←Q(Si,Aij)+α(Rij+γminQ(Sj,Aj′)-Q(Si,Aij))
其中,Aj′表示达到新的状态Sj后按动作选取原则选择的下一动作。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310757725.4A CN116743468A (zh) | 2023-06-26 | 2023-06-26 | 基于强化学习的动态攻击路径生成方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202310757725.4A CN116743468A (zh) | 2023-06-26 | 2023-06-26 | 基于强化学习的动态攻击路径生成方法 |
Publications (1)
Publication Number | Publication Date |
---|---|
CN116743468A true CN116743468A (zh) | 2023-09-12 |
Family
ID=87905894
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202310757725.4A Pending CN116743468A (zh) | 2023-06-26 | 2023-06-26 | 基于强化学习的动态攻击路径生成方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN116743468A (zh) |
Cited By (1)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117834309A (zh) * | 2024-03-06 | 2024-04-05 | 南京众智维信息科技有限公司 | 一种基于对比图聚类和强化学习的漏洞评估方法 |
-
2023
- 2023-06-26 CN CN202310757725.4A patent/CN116743468A/zh active Pending
Cited By (2)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN117834309A (zh) * | 2024-03-06 | 2024-04-05 | 南京众智维信息科技有限公司 | 一种基于对比图聚类和强化学习的漏洞评估方法 |
CN117834309B (zh) * | 2024-03-06 | 2024-05-28 | 南京众智维信息科技有限公司 | 一种基于对比图聚类和强化学习的漏洞评估方法 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
Hu et al. | Automated penetration testing using deep reinforcement learning | |
CN107943874B (zh) | 知识图谱处理方法、装置、计算机设备及存储介质 | |
US20190164086A1 (en) | Framework for semi-supervised learning when no labeled data is given | |
CN106875004B (zh) | 复合模式神经元信息处理方法和系统 | |
Zennaro et al. | Modelling penetration testing with reinforcement learning using capture‐the‐flag challenges: Trade‐offs between model‐free learning and a priori knowledge | |
CN109145516B (zh) | 一种基于改进型极限学习机的模拟电路故障识别方法 | |
CN111581189A (zh) | 一种空气质量检测数据缺失的补全方法及补全装置 | |
CN106875005B (zh) | 自适应阈值神经元信息处理方法和系统 | |
Zhou et al. | NIG-AP: A new method for automated penetration testing | |
CN111353391B (zh) | 雷达干扰效果评估方法、装置、电子设备及其存储介质 | |
CN116743468A (zh) | 基于强化学习的动态攻击路径生成方法 | |
CN115277102B (zh) | 网络攻击检测方法、装置、电子设备及存储介质 | |
CN113704098B (zh) | 一种基于蒙特卡洛搜索树种子调度的深度学习模糊测试方法 | |
CN113660241A (zh) | 一种基于深度强化学习的自动化渗透测试方法 | |
CN115102705B (zh) | 一种基于深度强化学习的自动化网络安全检测方法 | |
CN113239022A (zh) | 医疗诊断缺失数据补全方法及补全装置、电子设备、介质 | |
CN116582349A (zh) | 基于网络攻击图的攻击路径预测模型生成方法及装置 | |
WO2021262344A1 (en) | Method and apparatus to detect scripted network traffic | |
CN115174221B (zh) | 一种工控ot网络多目标渗透测试方法及系统 | |
CN103795591B (zh) | 一种僵尸群落分析方法及装置 | |
CN116225752A (zh) | 基于故障模式库的微服务系统故障根因分析方法及系统 | |
CN115842668A (zh) | 一种信息传播源的确定方法、系统、电子设备及存储介质 | |
CN114581086A (zh) | 基于动态时序网络的钓鱼账户检测方法及系统 | |
CN115022231A (zh) | 一种基于深度强化学习的最优路径规划的方法和系统 | |
CN115455426A (zh) | 基于漏洞分析模型开发的业务错误分析方法及云端ai系统 |
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 |