本申请涉及移动互联网,尤其涉及一种app自动化安全扫描方法、装置、设备及存储介质。
背景技术:
1、伴随着移动应用开发技术的飞速发展,手机app(应用程序,application)已经成为人们日常生活中不可或缺的一部分,移动应用安全的问题也越发突出。
2、现有技术中,为保障移动应用的安全质量,目前很多企业特别是金融类应用几乎都有一套通过自动化扫描的方式对移动app的加固壳安全、代码安全、数据安全、内容安全等进行自动化识别扫描。
3、但是,发明人发现,基于自动化扫描方式的通用性,很多针对不同app客户端的扫描还是需要通过人工二次核查确认其误报,人工成本高、效率低下,无法有效减少误报率。
技术实现思路
1、本申请提供一种app自动化安全扫描方法、装置、设备及存储介质,用以解决现有技术中针对不同app客户端的扫描需要通过人工二次核查确认其误报导致的误报率高且人工成本高效率低的问题。
2、第一方面,本申请提供一种app自动化安全扫描方法,应用于平台端,包括:
3、接收用户端发送的app待测包;
4、启动自动化安全扫描程序,以对所述app待测包中的各检测项进行安全判断,得到判断结果数据;
5、判断自动化安全扫描是否为首次检测;
6、若是,则根据所述判断结果数据输出初版检测报告;
7、若否,则将所述判断结果数据输入误报核减模型,以使所述误报核减模型对所述判断结果数据进行误报核减处理,得到app的检测结果。
8、在一种可能的设计中,所述误报核减模型的建立过程,包括:获取app自动化安全扫描产生的首次自动化安全扫描的误报数据集;对所述首次自动化安全扫描的误报数据集进行特征处理,得到目标误报数据集;将所述目标误报数据集划分为训练集和验证集,并基于所述训练集训练预选的机器学习模型得到初始误报核减模型;将所述初始误报核减模型采用验证集进行预测,若所述初始误报核减模型在验证集上达到设定的性能阈值,则停止所述初始误报核减模型的训练,得到训练好的误报核减模型。
9、在一种可能的设计中,所述获取app自动化安全扫描产生的首次自动化安全扫描的误报数据集,包括:获取多个app待测包对应的多个首次判断结果数据;根据所述多个首次判断结果数据得到所述各个首次判断结果数据中的误报问题;对所述误报问题进行人工标记,得到首次自动化安全扫描的误报数据集。
10、在一种可能的设计中,所述对所述首次自动化安全扫描的误报数据集进行特征处理,得到目标误报数据集,包括:对所述误报数据集中的误报信息进行处理,得到误报代码行;根据所述误报代码行定位每个误报数据的具体函数;将所述具体函数进行函数映射,以得到每个误报数据的软件度量特征;对所述软件度量特征进行归一化处理,得到目标误报数据集。
11、在一种可能的设计中,所述误报数据集还包括测试集;相应地,所述若所述初始误报核减模型在验证集上达到设定的性能阈值,则停止所述初始误报核减模型的训练,得到训练好的误报核减模型之后,还包括:采用所述测试集对所述误报核减模型进行测试。
12、第二方面,本申请提供一种app自动化安全扫描装置,包括:
13、接收模块,用于接收用户端发送的app待测包;
14、安全判断模块,用于启动自动化安全扫描程序,以对所述app待测包中的各检测项进行安全判断,得到判断结果数据;
15、判断模块,用于判断自动化安全扫描是否为首次检测;
16、输出模块,用于若是,则根据所述判断结果数据输出初版检测报告;
17、误报核减模块,用于若否,则将所述判断结果数据输入误报核减模型,以使所述误报核减模型对所述判断结果数据进行误报核减处理,得到app的检测结果。
18、在一种可能的设计中,所述app自动化安全扫描装置还包括:模型建立模块,用于获取app自动化安全扫描产生的首次自动化安全扫描的误报数据集;对所述首次自动化安全扫描的误报数据集进行特征处理,得到目标误报数据集;将所述目标误报数据集划分为训练集和验证集,并基于所述训练集训练预选的机器学习模型得到初始误报核减模型;将所述初始误报核减模型采用验证集进行预测及排序,并根据不确定策略从验证集中选择置信度最低的n个数据进行审核,将审核后的结果反馈到构建的初始误报核减模型中进行迭代式的训练和学习,其中n为正整数;若所述初始误报核减模型在验证集上达到设定的性能阈值,则停止所述初始误报核减模型的训练,得到训练好的误报核减模型。
19、第三方面,本申请实施例提供一种电子设备,包括:处理器,以及与所述处理器通信连接的存储器;所述存储器存储计算机执行指令;所述处理器执行所述存储器存储的计算机执行指令,以实现如上第一方面以及第一方面各种可能的设计所述的app自动化安全扫描方法。
20、第四方面,本申请实施例提供一种计算机可读存储介质,所述计算机可读存储介质中存储有计算机执行指令,当处理器执行所述计算机执行指令时,实现如上第一方面以及第一方面各种可能的设计所述的app自动化安全扫描方法。
21、第五方面,本申请实施例提供一种计算机程序产品,包括计算机程序,所述计算机程序被处理器执行时,实现如上第一方面以及第一方面各种可能的设计所述的app自动化安全扫描方法。
22、本申请提供的app自动化安全扫描方法、装置、设备及存储介质,通过接收用户端发送的app待测包,启动自动化安全扫描程序以对app待测包中的各检测项进行安全判断,得到判断结果数据,若自动化安全扫描为首次检测则输出初版检测报告,若自动化安全扫描不是首次检测则将判断结果数据输入误报核减模型,以使误报核减模型对判断结果数据进行误报核减处理,得到app的检测结果,使得app待测包在经过自动化安全扫描之后不再需要人工二次核查误报情况,减少了误报率,并且减少了人工成本、提高了效率。
1.一种app自动化安全扫描方法,其特征在于,应用于平台端,包括:
2.根据权利要求1所述的方法,其特征在于,所述误报核减模型的建立过程,包括:
3.根据权利要求2所述的方法,其特征在于,所述获取app自动化安全扫描产生的首次自动化安全扫描的误报数据集,包括:
4.根据权利要求2所述的方法,其特征在于,所述对所述首次自动化安全扫描的误报数据集进行特征处理,得到目标误报数据集,包括:
5.根据权利要求2-4任一项所述的方法,其特征在于,其中,所述误报数据集还包括测试集;
6.一种app自动化安全扫描装置,其特征在于,包括:
7.根据权利要求6所述的装置,其特征在于,还包括:模型建立模块,用于获取app自动化安全扫描产生的首次自动化安全扫描的误报数据集;对所述首次自动化安全扫描的误报数据集进行特征处理,得到目标误报数据集;将所述目标误报数据集划分为训练集和验证集,并基于所述训练集训练预选的机器学习模型得到初始误报核减模型;将所述初始误报核减模型采用验证集进行预测及排序,并根据不确定策略从验证集中选择置信度最低的n个数据进行审核,将审核后的结果反馈到构建的初始误报核减模型中进行迭代式的训练和学习,其中n为正整数;若所述初始误报核减模型在验证集上达到设定的性能阈值,则停止所述初始误报核减模型的训练,得到训练好的误报核减模型。
8.一种电子设备,其特征在于,包括:处理器,以及与所述处理器通信连接的存储器;
9.一种计算机可读存储介质,其特征在于,所述计算机可读存储介质中存储有计算机执行指令,所述计算机执行指令被处理器执行时用于实现如权利要求1-5中任一项所述的方法。
10.一种计算机程序产品,其特征在于,包括计算机程序,该计算机程序被处理器执行时实现权利要求1-5中任一项所述的方法。