一种自动化渗透测试方法和装置制造方法及图纸

技术编号:38011648 阅读:7 留言:0更新日期:2023-06-30 10:32
本发明专利技术涉及了一种自动化渗透测试方法和装置,该方法包括:BDIAgent根据初始渗透测试本体属性创建初始测试计划;将初始测试计划的标识发送给测试执行器;接收测试执行器反馈的测试结果信息;若强化学习引擎确定未达到预期测试目标,则根据测试执行过程中收集的信息和本次测试结果,更新渗透测试本体属性,得到迭代渗透测试本体属性;根据迭代渗透测试本体属性更新初始测试计划,得到迭代测试计划,并利用测试执行器执行迭代测试计划,直到新的测试结果达到预期测试目标;根据新的测试结果生成测试报告。本方案可以实现更好的推理能力和知识复用,使自动化渗透测试系统在面对动态、未知环境时,具备选择最佳的渗透测试策略的能力。力。力。

【技术实现步骤摘要】
一种自动化渗透测试方法和装置


[0001]本专利技术涉及通信
,尤其涉及一种自动化渗透测试方法和装置。

技术介绍

[0002]渗透测试是一种通过主动识别和利用现有漏洞来评估数字资产的安全性的方法。作为一种广泛使用的,用于提高目标系统信息安全水平的方法,渗透测试需要依赖具备多年经验的安全专家,人力成本较高,并且复杂的手动过程既昂贵又耗时。自动化渗透测试可以显著减少渗透测试过程中信息收集、分析和利用阶段所需的时间和人力成本。
[0003]迄今为止,关于自动化渗透测试的大多数研究只是将漏洞扫描器的扫描结果映射到对应的漏洞利用工具。大多数研究将渗透测试视为一个规划问题,通过攻击树、攻击图、规划域定义语言(PDDL)或部分可观察的马尔科夫决策过程(POMDP)等方式进行描述。
[0004]但是,这些解决方案要么存在无法处理不完整的知识、不确定的或动态的环境的问题,要么存在扩展性较差的问题。

技术实现思路

[0005]本专利技术旨在至少解决现有技术中存在的技术问题之一。
[0006]为此,本专利技术第一方面提出一种自动化渗透测试方法,应用于自动化渗透测试系统中的BDIAgent,所述自动化渗透测试系统还包括被测目标、测试执行器、推理引擎和强化学习引擎,其特征在于,所述方法包括:
[0007]根据所述被测目标的属性信息构建初始渗透测试本体属性,并根据所述初始渗透测试本体属性创建初始测试计划;
[0008]将所述初始测试计划的标识发送给测试执行器,以使所述测试执行器利用所述标识从知识库中获取对应的测试用例,并执行所述测试用例;
[0009]接收所述测试执行器反馈的测试结果信息,并将所述测试结果信息同步给所述推理引擎和所述强化学习引擎,以使所述推理引擎根据预先构建的SWRL规则分析所述测试结果,所述强化学习引擎确定所述测试结果是否达到预期测试目标;
[0010]若所述强化学习引擎确定未达到所述预期测试目标,则根据测试执行过程中收集的信息和本次测试结果,更新所述渗透测试本体属性,得到迭代渗透测试本体属性;
[0011]根据所述迭代渗透测试本体属性更新所述初始测试计划,得到迭代测试计划,并利用所述测试执行器执行所述迭代测试计划,直到新的测试结果达到所述预期测试目标;
[0012]根据所述新的测试结果生成测试报告。
[0013]可选的,所述根据被测目标的属性信息构建初始渗透测试本体属性,包括:
[0014]根据被测目标的属性信息,利用知识库确定渗透测试的攻击框架,并利用所述攻击框架创建渗透测试本体模型;所述攻击框架包括:攻击者部分、被攻击目标部分、攻击方法部分和被攻击目标脆弱性部分;
[0015]根据所述攻击框架各个部分之间的关系,定义渗透测试本体属性。
[0016]可选的,在定义渗透测试本体属性之后,还包括:
[0017]根据所述渗透测试本体属性,构建SWRL规则;所述SWRL规则表征所述渗透测试本体属性和渗透测试结果之间的逻辑推理关系。
[0018]可选的,在根据被测目标的属性信息,利用知识库确定渗透测试的攻击框架之前,还包括:
[0019]利用扫描器扫描被测目标,得到所述被测目标的属性信息,所述被测目标的属性信息至少包括:开放的端口、漏洞、当前权限、IP地址、操作系统特征和版本号、设备配置信息;
[0020]在利用所述攻击框架创建渗透测试本体模型之后,还包括:
[0021]将所述被测目标的属性信息保存在所述渗透测试本体模型的target实例的数据属性中。
[0022]可选的,所述根据所述初始渗透测试本体属性创建初始测试计划,包括:
[0023]根据所述初始渗透测试本体属性信息初始化所述BDIAgent中的信念集和意图集;所述信念集表示所述被测目标的环境信息或状态信息,所述意图集表示所述BDIAgent的当前主要任务;
[0024]根据所述信念集和所述意图集的信息,匹配合适的测试用例,并将所述测试用例的标识编排,形成初始测试计划。
[0025]可选的,所述根据所述迭代渗透测试本体属性更新所述初始测试计划,得到迭代测试计划,包括:
[0026]将所述迭代渗透测试本体属性与预先构建的SWRL规则进行匹配,采用推理引擎推理,得到分析结果;
[0027]将所述分析结果与预期测试目标进行比对,根据比对得到的差异信息反向调整所述测试计划,得到迭代测试计划。
[0028]可选的,在根据所述新的测试结果生成测试报告之后,还包括:
[0029]将所述测试报告发送给所述强化学习引擎,以使所述强化学习引擎生成经验知识,并反馈至所述知识库。
[0030]本专利技术第二方面提出一种自动化渗透测试装置,应用于自动化渗透测试系统中的BDIAgent,所述自动化渗透测试系统还包括被测目标、测试执行器、推理引擎和强化学习引擎,其特征在于,所述装置包括:
[0031]初始测试计划创建模块,用于根据所述被测目标的属性信息构建初始渗透测试本体属性,并根据所述初始渗透测试本体属性创建初始测试计划;
[0032]测试用例执行模块,用于将所述初始测试计划的标识发送给测试执行器,以使所述测试执行器利用所述标识从知识库中获取对应的测试用例,并执行所述测试用例;
[0033]测试结果分析模块,用于接收所述测试执行器反馈的测试结果信息,并将所述测试结果信息同步给所述推理引擎和所述强化学习引擎,以使所述推理引擎根据预先构建的SWRL规则分析所述测试结果,所述强化学习引擎确定所述测试结果是否达到预期测试目标;
[0034]属性更新模块,用于若所述强化学习引擎确定未达到所述预期测试目标,则根据测试执行过程中收集的信息和本次测试结果,更新所述渗透测试本体属性,得到迭代渗透
测试本体属性;
[0035]测试计划更新模块,用于根据所述迭代渗透测试本体属性更新所述初始测试计划,得到迭代测试计划,并利用所述测试执行器执行所述迭代测试计划,直到新的测试结果达到所述预期测试目标;
[0036]测试报告生成模块,用于根据所述新的测试结果生成测试报告。
[0037]可选的,所述初始测试计划创建模块具体用于:
[0038]根据被测目标的属性信息,利用知识库确定渗透测试的攻击框架,并利用所述攻击框架创建渗透测试本体模型;所述攻击框架包括:攻击者部分、被攻击目标部分、攻击方法部分和被攻击目标脆弱性部分;
[0039]根据所述攻击框架各个部分之间的关系,定义渗透测试本体属性。
[0040]可选的,所述装置还包括:
[0041]SWRL规则构建模块,用于根据所述渗透测试本体属性,构建SWRL规则;所述SWRL规则表征所述渗透测试本体属性和渗透测试结果之间的逻辑推理关系。
[0042]可选的,所述装置还包括:
[0043]利用扫描器扫描被测目标,得到所述被测目标的属性信息,所述被测目标的属性信息至少包括:开放的端口、漏洞、当前权本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种自动化渗透测试方法,其特征在于,应用于自动化渗透测试系统中的BDIAgent,所述自动化渗透测试系统还包括被测目标、测试执行器、推理引擎和强化学习引擎,其特征在于,所述方法包括:根据所述被测目标的属性信息构建初始渗透测试本体属性,并根据所述初始渗透测试本体属性创建初始测试计划;将所述初始测试计划的标识发送给测试执行器,以使所述测试执行器利用所述标识从知识库中获取对应的测试用例,并执行所述测试用例;接收所述测试执行器反馈的测试结果信息,并将所述测试结果信息同步给所述推理引擎和所述强化学习引擎,以使所述推理引擎根据预先构建的SWRL规则分析所述测试结果,所述强化学习引擎确定所述测试结果是否达到预期测试目标;若所述强化学习引擎确定未达到所述预期测试目标,则根据测试执行过程中收集的信息和本次测试结果,更新所述渗透测试本体属性,得到迭代渗透测试本体属性;根据所述迭代渗透测试本体属性更新所述初始测试计划,得到迭代测试计划,并利用所述测试执行器执行所述迭代测试计划,直到新的测试结果达到所述预期测试目标;根据所述新的测试结果生成测试报告。2.根据权利要求1所述的方法,其特征在于,所述根据被测目标的属性信息构建初始渗透测试本体属性,包括:根据被测目标的属性信息,利用知识库确定渗透测试的攻击框架,并利用所述攻击框架创建渗透测试本体模型;所述攻击框架包括:攻击者部分、被攻击目标部分、攻击方法部分和被攻击目标脆弱性部分;根据所述攻击框架各个部分之间的关系,定义渗透测试本体属性。3.根据权利要求2所述的方法,其特征在于,在定义渗透测试本体属性之后,还包括:根据所述渗透测试本体属性,构建SWRL规则;所述SWRL规则表征所述渗透测试本体属性和渗透测试结果之间的逻辑推理关系。4.根据权利要求2所述的方法,其特征在于,在根据被测目标的属性信息,利用知识库确定渗透测试的攻击框架之前,还包括:利用扫描器扫描被测目标,得到所述被测目标的属性信息,所述被测目标的属性信息至少包括:开放的端口、漏洞、当前权限、IP地址、操作系统特征和版本号、设备配置信息;在利用所述攻击框架创建渗透测试本体模型之后,还包括:将所述被测目标的属性信息保存在所述渗透测试本体模型的target实例的数据属性中。5.根据权利要求1所述的方法,其特征在于,所述根据所述初始渗透测试本体属性创建初始测试计划,包括:根据所述初始渗透测试本体属性信息初始化所述BDIAgent中的信念集和意图集;所述信念集表示所述被测目标的环境信息或状态信息,所述意图集表示所述BDIAgent的当前主要任务;根据所述信念集和所述意图集的信息,...

【专利技术属性】
技术研发人员:郭鹏薛进章赟杰
申请(专利权)人:中汽创智科技有限公司
类型:发明
国别省市:

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

1