安全漏洞预警方法、装置、设备及计算机可读存储介质制造方法及图纸

技术编号:27742755 阅读:13 留言:0更新日期:2021-03-19 13:36
本发明专利技术涉及漏洞检测,提供一种安全漏洞预警方法、装置、设备及计算机可读存储介质。本发明专利技术通过对获取到的代码提交数据进行预处理,使得能够去除代码提交数据中的脏数据,提高数据准确性;通过对初始代码数据采用流形学习算法进行降维处理,降低了初始代码数据的维度与冗余性,使得待分析数据更加便于分析;通过最后根据随机森林算法,筛选定位出可能存在安全漏洞的代码信息,进而生成代码漏洞预警信息,从而实现了代码漏洞预警信息的自动生成。且相关技术人员可以方便得获取到该预警信息并基于此对可能存在的安全漏洞进行排查,从而减小了系统的安全风险。此外,本发明专利技术还涉及区块链技术,上述代码漏洞预警信息可存储于区块链中。

【技术实现步骤摘要】
安全漏洞预警方法、装置、设备及计算机可读存储介质
本专利技术涉及漏洞检测
,尤其涉及一种安全漏洞预警方法、装置、设备及计算机可读存储介质。
技术介绍
代码安全漏洞扫描是保障产品项目成功发布的重要环节之一,但随着项目规模的逐渐扩大,代码量的增多,代码安全扫描和代码规范扫描的相关信息越来越多,安全漏洞的检查难度也逐渐增大。现有的安全扫描方式,无论是神兵流水线扫描方式还是线下扫描方式,即使以消耗大量软硬件资源为代价都难以准确得到有用的扫描结果信息,更无法对扫描结果的漏洞信息做到预警,也即是反映出了通过现有的代码安全扫描方式难以获取到代码安全漏洞的预警信息的技术问题。
技术实现思路
本专利技术的主要目的在于提供一种安全漏洞预警方法、装置、设备及计算机可读存储介质,旨在解决通过现有的代码安全扫描方式难以获取到代码安全漏洞的预警信息的技术问题。为实现上述目的,本专利技术提供一种安全漏洞预警方法,所述安全漏洞预警方法包括以下步骤:获取代码提交数据,对所述代码提交数据进行预处理得到初始代码数据;基于流形学习算法对所述初始代码数据进行降维处理,得到待分析数据;基于随机森林算法对所述待分析数据进行数据筛选,以定位出所述初始代码数据中需要进行安全漏洞预警的目标代码信息,并根据所述目标代码信息生成代码漏洞预警信息。可选地,所述基于流形学习算法对所述初始代码数据进行降维处理,得到待分析数据的步骤包括:将所述初始代码数据转化为多个样本点,并将每一所述样本点属性相近的样本点作为对应的近邻点;根据所述近邻点得到出每一所述样本点的局部重建权值矩阵;结合所述近邻点与所述局部重建权值矩阵,得到每一所述样本点的样本输出值,以作为所述待分析数据。可选地,所述基于随机森林算法对所述待分析数据进行数据筛选,以定位出所述初始代码数据中需要进行安全漏洞预警的目标代码信息的步骤包括:将所述待分析数据作为随机森林算法的入参,基于随机森林算法对所述待分析数据进行有放回取样,得到多个训练子集;随机从每个所述训练子集对应的特征集合中选取特征子集,以基于所述特征子集构建每一所述训练子集的决策树;获取每一所述决策树的决策结果,并投票得出全部所述决策结果中的最佳决策结果,以将所述最佳决策结果在所述代码提交数据中对应的代码信息作为所述目标代码信息。可选地,所述基于随机森林算法对所述待分析数据进行数据筛选,以定位出所述初始代码数据中需要进行安全漏洞预警的目标代码信息的步骤之后,还包括:对所述代码漏洞预警信息进行分级,以根据不同的预警级别将所述代码漏洞预警信息发送至相应的处理人终端。可选地,所述对所述代码漏洞预警信息进行分级,以根据不同的预警级别将所述代码漏洞预警信息发送至相应的处理人终端的步骤包括:确定所述代码漏洞预警信息的漏洞类型,并从预设的类型等级映射表中查找到与所述漏洞类型对应的风险等级,以将所述风险等级作为所述代码预警信息的预警级别;在检测到所述代码预警信息的预警级别属于中等以上预警级别时,将所述代码预警信息进行加密得到加密预警信息,并将所述加密预警信息发送至中等以上预警级别对应的处理人终端。可选地,所述获取代码提交数据,对所述代码提交数据进行预处理得到初始代码数据的步骤包括:接收已对接的代码提交工具按照预设时间间隔上传的待扫描代码信息,对所述待扫描代码信息进行扫描得到代码提交数据;对所述代码提交数据进行数据清洗,得到有效代码提交数据;将所述有效代码提交数据按照属性信息进行排序,以得到所述初始代码数据。可选地,所述定位出所述初始代码数据中需要进行安全漏洞预警的目标代码信息,并根据所述目标代码信息生成代码漏洞预警信息的步骤之后,还包括:在检测到所述代码漏洞预警信息对应的安全漏洞完成修复时,获取所述安全漏洞的修复信息,并将所述代码漏洞预警信息与所述修复信息关联得到漏洞训练数据集;利用所述漏洞训练数据集训练漏洞修复模型,以基于训练完成的漏洞修复模型得到新产生的代码漏洞预警信息所对应的建议修复方案。此外,为实现上述目的,本专利技术还提供一种安全漏洞预警装置,所述安全漏洞预警装置包括:提交数据处理模块,用于获取代码提交数据,对所述代码提交数据进行预处理得到初始代码数据;初始数据降维模块,用于基于流形学习算法对所述初始代码数据进行降维处理,得到待分析数据;预警漏洞定位模块,用于基于随机森林算法对所述待分析数据进行数据筛选,以定位出所述初始代码数据中需要进行安全漏洞预警的目标代码信息,并根据所述目标代码信息生成代码漏洞预警信息。可选地,所述初始数据降维模块包括:近邻样本确定单元,用于将所述初始代码数据转化为多个样本点,并将每一所述样本点属性相近的样本点作为对应的近邻点;权值矩阵获取单元,用于根据所述近邻点得到出每一所述样本点的局部重建权值矩阵;样本输出获取单元,用于结合所述近邻点与所述局部重建权值矩阵,得到每一所述样本点的样本输出值,以作为所述待分析数据。可选地,所述预警漏洞定位模块包括:训练子集获取单元,用于将所述待分析数据作为随机森林算法的入参,基于随机森林算法对所述待分析数据进行有放回取样,得到多个训练子集;决策树构建单元,用于随机从每个所述训练子集对应的特征集合中选取特征子集,以基于所述特征子集构建每一所述训练子集的决策树;最佳决策确定单元,用于获取每一所述决策树的决策结果,并投票得出全部所述决策结果中的最佳决策结果,以将所述最佳决策结果在所述代码提交数据中对应的代码信息作为所述目标代码信息。可选地,所述安全漏洞预警装置还包括:预警信息分级模块,用于对所述代码漏洞预警信息进行分级,以根据不同的预警级别将所述代码漏洞预警信息发送至相应的处理人终端。可选地,所述预警信息分级模块还包括:预警级别确定单元,用于确定所述代码漏洞预警信息的漏洞类型,并从预设的类型等级映射表中查找到与所述漏洞类型对应的风险等级,以将所述风险等级作为所述代码预警信息的预警级别;在检测到所述代码预警信息的预警级别属于中等以上预警级别时,将所述代码预警信息进行加密得到加密预警信息,并将所述加密预警信息发送至中等以上预警级别对应的处理人终端。可选地,所述提交数据处理模块包括:代码信息扫描单元,用于接收已对接的代码提交工具按照预设时间间隔上传的待扫描代码信息,对所述待扫描代码信息进行扫描得到代码提交数据;提交数据清洗单元,用于对所述代码提交数据进行数据清洗,得到有效代码提交数据;有效数据排序单元,用于将所述有效代码提交数据按照属性信息进行排序,以得到所述初始代码数据。可选地,所述安全漏洞预警装置还包括:训练数据获取模块,用于在检测到所述代码漏洞预警信息对应的安全漏洞完成修复时,获取所述安全漏洞的修复信息,并将所述代码漏洞预警信息与所述修复信息关联得到漏洞训练数据集;修本文档来自技高网...

【技术保护点】
1.一种安全漏洞预警方法,其特征在于,所述安全漏洞预警方法包括:/n获取代码提交数据,对所述代码提交数据进行预处理得到初始代码数据;/n基于流形学习算法对所述初始代码数据进行降维处理,得到待分析数据;/n基于随机森林算法对所述待分析数据进行数据筛选,以定位出所述初始代码数据中需要进行安全漏洞预警的目标代码信息,并根据所述目标代码信息生成代码漏洞预警信息。/n

【技术特征摘要】
1.一种安全漏洞预警方法,其特征在于,所述安全漏洞预警方法包括:
获取代码提交数据,对所述代码提交数据进行预处理得到初始代码数据;
基于流形学习算法对所述初始代码数据进行降维处理,得到待分析数据;
基于随机森林算法对所述待分析数据进行数据筛选,以定位出所述初始代码数据中需要进行安全漏洞预警的目标代码信息,并根据所述目标代码信息生成代码漏洞预警信息。


2.如权利要求1所述的安全漏洞预警方法,其特征在于,所述基于流形学习算法对所述初始代码数据进行降维处理,得到待分析数据的步骤包括:
将所述初始代码数据转化为多个样本点,并将每一所述样本点属性相近的样本点作为对应的近邻点;
根据所述近邻点得到出每一所述样本点的局部重建权值矩阵;
结合所述近邻点与所述局部重建权值矩阵,得到每一所述样本点的样本输出值,以作为所述待分析数据。


3.如权利要求1所述的安全漏洞预警方法,其特征在于,所述基于随机森林算法对所述待分析数据进行数据筛选,以定位出所述初始代码数据中需要进行安全漏洞预警的目标代码信息的步骤包括:
将所述待分析数据作为随机森林算法的入参,基于随机森林算法对所述待分析数据进行有放回取样,得到多个训练子集;
随机从每个所述训练子集对应的特征集合中选取特征子集,以基于所述特征子集构建每一所述训练子集的决策树;
获取每一所述决策树的决策结果,并投票得出全部所述决策结果中的最佳决策结果,以将所述最佳决策结果在所述代码提交数据中对应的代码信息作为所述目标代码信息。


4.如权利要求1所述的安全漏洞预警方法,其特征在于,所述基于随机森林算法对所述待分析数据进行数据筛选,以定位出所述初始代码数据中需要进行安全漏洞预警的目标代码信息的步骤之后,还包括:
对所述代码漏洞预警信息进行分级,以根据不同的预警级别将所述代码漏洞预警信息发送至相应的处理人终端。


5.如权利要求4所述的安全漏洞预警方法,其特征在于,所述对所述代码漏洞预警信息进行分级,以根据不同的预警级别将所述代码漏洞预警信息发送至相应的处理人终端的步骤包括:
确定所述代码漏洞预警信息的漏洞类型,并从预设的类型等级映射表中查找到与所述漏洞类型对应的风险等级,以将所述风险等级作为所述代码预警信息的预警级...

【专利技术属性】
技术研发人员:肖爽
申请(专利权)人:中国平安财产保险股份有限公司
类型:发明
国别省市:广东;44

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

1