软件安全性测试方法、系统、服务器及可读存储介质技术方案

技术编号:31562586 阅读:28 留言:0更新日期:2021-12-25 10:45
本发明专利技术公开了一种软件安全性测试方法、系统、服务器及计算机可读存储介质。该软件安全性测试方法包括:获取软件安全性测试的历史测试数据;获取安全性测试要求;根据所述历史测试数据和所述安全性测试要求建立与软件实际应用场景对应的虚拟场景模型,所述虚拟场景模型由至少两个实际应用场景对应的测试模型协同整合而成;将被测软件导入所述虚拟场景模型,使用至少两个所述测试模型协同测试所述被测软件在不同应用场景中的安全性。解决了软件安全性测试存在的效率低、全面性差的问题。全面性差的问题。全面性差的问题。

【技术实现步骤摘要】
软件安全性测试方法、系统、服务器及可读存储介质


[0001]本专利技术涉及软件安全性测试
,尤其涉及一种软件安全性测试方法、系统、服务器及可读存储介质。

技术介绍

[0002]软件测试是一种伴随着软件控制程序大规模应用而兴起的技术,该技术主要用于测试软件程序的质量,通过对软件程序进行检测可知其中是否存在漏洞、错误、缺陷等问题,帮助软件在应用前进行把关,指导软件开发人员修复其中可能的漏洞、错误、缺陷等问题,从而为软件的高效应用提供评估支撑,降低软件应用可能存在的风险,提升软件安全性。
[0003]基于软件测试的重要性,在软件程序上市应用之前都需要对开发的软件程序进行大规模的安全性验证,以消除上市应用之后可能带来的风险。而目前的软件安全性测试工作大部分都是基于人工进行的。而由于个人经验、个人精力、个人时间的限制,导致人工检测不可避免地存在效率低、检测全面性差的问题。因此,亟需一种能够提高软件安全性检测效率与全面性的技术。

技术实现思路

[0004]本申请实施例通过提供一种软件安全性测试方法,旨在解决目前的软件安全性测试存在的效率低、全面性差的问题。
[0005]为实现上述目的,本申请实施例提供了一种软件安全性测试方法,包括如下步骤:
[0006]获取软件安全性测试的历史测试数据;
[0007]获取安全性测试要求;
[0008]根据所述历史测试数据和所述安全性测试要求建立与软件实际应用场景对应的虚拟场景模型,所述虚拟场景模型由至少两个实际应用场景对应的测试模型协同整合而成;
[0009]将被测软件导入所述虚拟场景模型,使用至少两个所述测试模型协同测试所述被测软件在不同应用场景中的安全性。
[0010]在一实施例中,所述将被测软件导入所述虚拟场景模型,使用多个所述测试模型协同测试所述被测软件在不同应用场景中的安全性,包括:
[0011]将所述被测软件及其代码导入所述虚拟场景模型;
[0012]调用所述虚拟场景模型中的功能验证模型检测所述被测软件能否实现预设功能;
[0013]若所述被测软件实现所述预设功能,则协同调用所述虚拟场景模型中的其他测试模型对所述被测软件进行对应测试。
[0014]在一实施例中,所述若所述被测软件实现所述预设功能,则协同调用所述虚拟场景模型中的其他测试模型对所述被测软件进行对应测试,包括:
[0015]若所述被测软件实现所述预设功能,则调用所述虚拟场景模型中的安全漏洞扫描
模型对所述被测软件中实现所述预设功能的模块进行安全漏洞扫描。
[0016]在一实施例中,所述若所述被测软件实现所述预设功能,则协同调用所述虚拟场景模型中的其他测试模型进行对应测试,还包括:
[0017]若所述被测软件实现所述预设功能,则调用所述虚拟场景模型中的模拟攻击模型对所述被测软件中实现所述预设功能的模块进行攻击。
[0018]在一实施例中,在所述调用所述虚拟场景模型中的功能验证模型检测所述能否实现预设功能,之前执行步骤:
[0019]调用所述虚拟场景模型中的静态代码检测模型,检测所述被测软件的代码;
[0020]若所述被测软件通过所述静态代码检测,则调用所述功能验证模型对所述被测软件进行功能检测。
[0021]在一实施例中,所述软件安全性测试方法,还包括:
[0022]若所述被测软件未通过所述虚拟场景模型中的安全性测试,则对所述被测软件进行修复,并将修复后的被测软件重新导入所述虚拟场景测试模型进行安全性测试。
[0023]在一实施例中,所述若所述被测软件未通过所述虚拟场景模型中的安全性测试,则对被测软件进行修复,并将修复后的被测软件重新导入所述虚拟场景测试模型进行安全性测试,包括:
[0024]若所述被测软件未通过所述虚拟场景测试模型中某一测试模型的测试,则对被测软件的隐患代码进行标记;
[0025]基于检测结果与所述标记生成检测日志;
[0026]根据所述检测日志提示开发人员对所述被测软件进行修复;
[0027]将修复后的被测软件重新导入所述虚拟场景模型进行安全性测试。
[0028]本申请实施例还提出一种软件安全性测试系统,包括信息收集模块、人工智能训练模块及检测模块,其中,所述信息收集模块用于获取软件安全性测试的历史测试数据及安全性测试要求;所述人工智能训练模块用于根据所述历史测试数据和所述安全性测试要求建立与软件实际应用场景对应的虚拟场景模型,所述虚拟场景模型由至少两个实际应用场景对应的测试模型协同整合而成;所述检测模块用于将被测软件导入所述虚拟场景模型,使用多个所述测试模型协同测试所述被测软件在不同应用场景中的安全性。
[0029]本申请实施例还提出一种软件安全性测试服务器,包括存储器、处理器及存储在存储器上并可在处理器上运行的软件安全性测试的程序,所述处理器执行所述软件安全性测试程序时实现软件安全性测试方法,所述软件安全性测试方法包括:
[0030]获取软件安全性测试的历史测试数据;
[0031]获取安全性测试要求;
[0032]根据所述历史测试数据和所述安全性测试要求建立与软件实际应用场景对应的虚拟场景模型,所述虚拟场景模型由至少两个实际应用场景对应的测试模型协同整合而成;
[0033]将被测软件导入所述虚拟场景模型,使用至少两个所述测试模型协同测试所述被测软件在不同应用场景中的安全性。
[0034]本申请实施例还提出一种计算机可读存储介质,其特征在于,其上存储有软件安全性测试的程序,其特征在于,该软件安全性测试程序被处理器执行时实现软件安全性测
试方法;所述软件安全性测试方法包括:
[0035]获取软件安全性测试的历史测试数据;
[0036]获取安全性测试要求;
[0037]根据所述历史测试数据和所述安全性测试要求建立与软件实际应用场景对应的虚拟场景模型,所述虚拟场景模型由至少两个实际应用场景对应的测试模型协同整合而成;
[0038]将被测软件导入所述虚拟场景模型,使用至少两个所述测试模型协同测试所述被测软件在不同应用场景中的安全性。
[0039]本申请技术方案通过获取软件安全性测试的历史测试数据和测试要求,以建立虚拟场景测试模型,再通过该虚拟场景测试模型中的至少两个测试模型协同测试软件在不同应用场景中的安全性,实现了软件安全性的自动测试;从而解决了现有技术通过人工检测软件安全性所存在的检测效率低、检测不全面的问题,从而能够极大地提高软件安全性测试的效率与全面性。
附图说明
[0040]为了更清楚地说明本专利技术实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作简单地介绍,显而易见地,下面描述中的附图仅仅是本专利技术的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图示出的结构获得其他的附图。
[0041]图1为本专利技术软件安全性测试方法一实施例的流程本文档来自技高网
...

【技术保护点】

【技术特征摘要】
1.一种软件安全性测试方法,其特征在于,包括如下步骤:获取软件安全性测试的历史测试数据;获取安全性测试要求;根据所述历史测试数据和所述安全性测试要求建立与软件实际应用场景对应的虚拟场景模型,所述虚拟场景模型由至少两个实际应用场景对应的测试模型协同整合而成;将被测软件导入所述虚拟场景模型,使用至少两个所述测试模型协同测试所述被测软件在不同应用场景中的安全性。2.如权利要求1所述的软件安全性测试方法,其特征在于,所述将被测软件导入所述虚拟场景模型,使用多个所述测试模型协同测试所述被测软件在不同应用场景中的安全性,包括:将所述被测软件及其代码导入所述虚拟场景模型;调用所述虚拟场景模型中的功能验证模型检测所述被测软件能否实现预设功能;若所述被测软件实现所述预设功能,则协同调用所述虚拟场景模型中的其他测试模型对所述被测软件进行对应测试。3.如权利要求2所述的软件安全性测试方法,其特征在于,所述若所述被测软件实现所述预设功能,则协同调用所述虚拟场景模型中的其他测试模型对所述被测软件进行对应测试,包括:若所述被测软件实现所述预设功能,则调用所述虚拟场景模型中的安全漏洞扫描模型对所述被测软件中实现所述预设功能的模块进行安全漏洞扫描。4.如权利要求2所述的软件安全性测试方法,其特征在于,所述若所述被测软件实现所述预设功能,则协同调用所述虚拟场景模型中的其他测试模型进行对应测试,还包括:若所述被测软件实现所述预设功能,则调用所述虚拟场景模型中的模拟攻击模型对所述被测软件中实现所述预设功能的模块进行攻击。5.如权利要求2所述的软件安全性测试方法,其特征在于,在所述调用所述虚拟场景模型中的功能验证模型检测所述能否实现预设功能,之前执行步骤:调用所述虚拟场景模型中的静态代码检测模型,检测所述被测软件的代码;若所述被...

【专利技术属性】
技术研发人员:黄帅帅
申请(专利权)人:深圳兆日科技股份有限公司
类型:发明
国别省市:

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

1