浙大城市学院张芸获国家专利权
买专利卖专利找龙图腾,真高效! 查专利查商标用IPTOP,全免费!专利年费监控用IP管家,真方便!
龙图腾网获悉浙大城市学院申请的专利基于排序的开源软件安全漏洞补丁定位方法获国家发明授权专利权,本发明授权专利权由国家知识产权局授予,授权公告号为:CN114386048B 。
龙图腾网通过国家知识产权局官网在2025-09-26发布的发明授权授权公告中获悉:该发明授权的专利申请号/专利号为:202210049750.2,技术领域涉及:G06F21/57;该发明授权基于排序的开源软件安全漏洞补丁定位方法是由张芸;吴明晖;王世超;鲍凌峰;夏鑫设计研发完成,并于2022-01-17向国家知识产权局提交的专利申请。
本基于排序的开源软件安全漏洞补丁定位方法在说明书摘要公布了:本发明提供了一种基于排序的开源软件安全漏洞补丁定位方法,具体包括:从网站中收集漏洞和代码提交数据;使用数据挖掘、统计分析方法抽取代码行、漏洞身份、漏洞修复位置、分词词袋共4个维度的漏洞和代码提交相似性特征;训练基于Bert模型的漏洞领域文本语义编码模块,并使用语义编码模块提取漏洞语义特征和代码提交语义特征;将漏洞语义特征和代码提交语义特征的拼接起来组成漏洞和代码提交的全部特征;模型训练;使用多数投票的思想进行模型融合。本发明能够从漏洞和代码提交中抽取特征,建立漏洞补丁提交排序模型,将开源软件仓库中的代码提交按照与漏洞的匹配程度进行排序,有效地降低补丁标注人员需要检查的代码提交数量。
本发明授权基于排序的开源软件安全漏洞补丁定位方法在权利要求书中公布了:1.一种基于排序的开源软件安全漏洞补丁定位方法,其特征在于,包括以下步骤: 步骤1:数据采集; 步骤2:数据预处理; 步骤3:漏洞与代码提交相似性特征提取,包括: 代码行、漏洞身份、漏洞位置、分词词袋共4个大方向上抽取漏洞与代码提交之间的相似性特征; 从代码行的角度生成相似性特征,统计代码提交中增加的代码行数量、删除的代码行数量、总修改的代码行数; 从漏洞身份的角度生成相似性特征,计提交信息中漏洞编号个数、缺陷编号个数、问题编号个数、网页链接个数,统计提交信息中漏洞编号与对应漏洞是否匹配; 从漏洞位置的角度生成相似性特征,计算漏洞被赋予漏洞编号的时间与代码提交时间之间的天数间隔,统计既出现在漏洞描述又被修改的文件路径文件名函数名个数,统计该文件路径文件名函数名个数占代码提交修改的文件路径文件名函数名数目的比例,统计只出现在代码提交修改内的文件路径文件名函数名个数; 从分词词袋的角度生成相似性特征,统计提交信息与漏洞类型名称之间相同分词的个数,统计该相同分词个数占漏洞类型名称分词总数的比例;计算漏洞TFIDF向量与代码提交TFIDF向量之间的余弦相似度;统计提交信息与漏洞描述之间相同分词的个数,统计该相同分词个数占漏洞描述分词总数的比例,统计该相同分词中最大出现频数、平均出现频数、总出现频数;统计修改的代码内容与漏洞描述之间相同分词的个数,统计该相同分词个数占漏洞描述分词总数的比例,统计该相同分词中最大出现频数、平均出现频数、总出现频数; 步骤4:漏洞语义特征和代码提交语义特征提取,包括: 构建Bert语义编码模块,并生成训练框架对编码模块进行训练,之后使用Bert模型自带的向量化方法将漏洞描述和提交信息转换为向量形式,然后分别经过语义编码模块得到漏洞语义特征和代码提交语义特征; 步骤5:将步骤3和步骤4得到的所有特征拼接起来组成漏洞和代码提交的全部特征; 步骤6:模型训练,包括: 使用XGBoost、LightGBM、CNN三种模型在步骤5拼接好的特征上进行训练并得到各个提交代码在各个模型上排名结果; 训练XGBoost模型用于代码提交排序,将步骤5拼接后的特征作为XGBoost模型的输入,将漏洞与补丁提交是否匹配作为模型训练结果标签,使用对数损失函数对XGBoost模型进行训练,模型训练后,每一对漏洞与代码提交生成的特征经过模型预测得到两者的匹配概率,根据匹配概率按照降序对所有代码提交进行排序; 训练LightGBM模型用于漏洞补丁提交排序,将步骤5拼接后的特征作为LightGBM模型的输入,将漏洞与补丁提交是否匹配作为模型训练结果标签,使用对数损失函数对LightGBM模型进行训练,模型训练后,每一对漏洞与代码提交生成的特征经过模型预测得到两者的匹配概率,根据匹配概率按照降序对所有代码提交进行排序; 训练CNN模型用于漏洞补丁提交排序,将步骤5拼接后的特征作为CNN模型的输入,将漏洞与补丁提交是否匹配作为模型训练结果标签,使用Focalloss损失函数对CNN模型进行训练,模型训练后,每一对漏洞与代码提交生成的特征经过模型预测得到两者的匹配概率,根据匹配概率按照降序对所有代码提交进行排序; 步骤7:使用多数投票的思想进行模型融合,包括: 对于每一个代码提交以及步骤6中三个模型给出的排名值,获得最接近的两个排名的均值;根据该均值对所有代码提交进行升序排序;若均值相同,则按照未使用的排名进行升序排序,以此来得到最终每个代码提交的排名。
如需购买、转让、实施、许可或投资类似专利技术,可联系本专利的申请人或专利权人浙大城市学院,其通讯地址为:310015 浙江省杭州市拱墅区湖州街51号;或者联系龙图腾网官方客服,联系龙图腾网可拨打电话0551-65771310或微信搜索“龙图腾网”。
以上内容由龙图腾AI智能生成。
1、本报告根据公开、合法渠道获得相关数据和信息,力求客观、公正,但并不保证数据的最终完整性和准确性。
2、报告中的分析和结论仅反映本公司于发布本报告当日的职业理解,仅供参考使用,不能作为本公司承担任何法律责任的依据或者凭证。
请提出您的宝贵建议,有机会获取IP积分或其他奖励