[发明专利]程序漏洞修复方法、装置、电子设备及存储介质在审
申请号: | 202211169630.2 | 申请日: | 2022-09-23 |
公开(公告)号: | CN115481406A | 公开(公告)日: | 2022-12-16 |
发明(设计)人: | 闫保奇;姚倩;周慧英 | 申请(专利权)人: | 中国电信股份有限公司 |
主分类号: | G06F21/57 | 分类号: | G06F21/57 |
代理公司: | 北京律智知识产权代理有限公司 11438 | 代理人: | 孙宝海 |
地址: | 100033 *** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 程序 漏洞 修复 方法 装置 电子设备 存储 介质 | ||
1.一种程序漏洞修复方法,其特征在于,包括:
基于对源代码进行缺陷检测所得到的源缺陷代码与检测结果,获取历史修复代码;其中,所述历史修复代码为与所述检测结果相对应的历史缺陷代码的修复代码;
基于所述历史修复代码的特征,生成所述源缺陷代码的目标修复代码;
根据所述源缺陷代码的源代码结构,在所述源代码中对所述目标修复代码进行序列拟合,得到修复后的源代码。
2.根据权利要求1所述的方法,其特征在于,基于对源代码进行缺陷检测所得到的源缺陷代码与检测结果,获取历史修复代码,包括:
对所述源代码进行缺陷检测,得到检测结果以及检测结果所对应的源缺陷代码;
基于所述检测结果,获取与所述源缺陷代码相对应的历史缺陷代码以及所述历史缺陷代码的修复代码;
对所述历史缺陷代码与所述源缺陷代码进行相似度计算,得到各历史缺陷代码所对应的相似度;
将相似度大于预设相似度阈值的历史缺陷代码的修复代码,作为所述历史修复代码。
3.根据权利要求1所述的方法,其特征在于,所述基于所述历史修复代码的特征,生成所述源缺陷代码的目标修复代码,包括:
分别对所述源缺陷代码,以及所述历史修复代码进行抽象化处理,相应得到抽象源缺陷代码以及抽象历史修复代码;
基于所述抽象历史修复代码的特征,将所述抽象源缺陷代码翻译为抽象修复代码;
对所述抽象修复代码进行反抽象化处理,得到所述目标修复代码。
4.根据权利要求3所述的方法,其特征在于,所述分别对所述源缺陷代码,以及所述历史修复代码进行抽象化处理,相应得到抽象源缺陷代码以及抽象历史修复代码,包括:
根据所述源缺陷代码的检测结果,获取与所述源缺陷代码相关的源代码结构;
基于所述源代码结构对所述源缺陷代码的函数与参数,以及所述历史修复代码的函数与参数分别进行抽象化处理,得到所述抽象源缺陷代码以及所述抽象历史修复代码;其中,所述抽象源缺陷代码与所述抽象历史修复代码之间相对应的函数和相对应的参数,被抽象化为同一标识。
5.根据权利要求3所述的方法,其特征在于,所述基于所述抽象历史修复代码的特征,将所述抽象源缺陷代码翻译为抽象修复代码,包括:
对所述抽象源缺陷代码进行编码,得到多个词向量所组成的代码向量;
基于注意力机制对所述代码向量中的各词向量分别进行加权处理,得到加权代码向量;
基于所述抽象历史修复代码中各字符映射,将所述加权代码向量进行解码,得到所述抽象修复代码。
6.根据权利要求1所述的方法,其特征在于,所述根据所述源缺陷代码的源代码结构,在所述源代码中对所述目标修复代码进行序列拟合,得到修复后的源代码,包括:
提取所述源代码结构中各函数与各参数之间的关系,在所述源代码中确认所述目标修复代码的拟合序列;
基于所述拟合序列将所述目标修复代码与所述源代码进行拟合,以完成所述源代码的修复,得到所述修复后的源代码。
7.根据权利要求5所述的方法,其特征在于,所述方法还包括:
模拟运行所述修复后的源代码,得到运行结果;
若所述运行结果报错,则将运行结果报错所对应的目标函数转换为特征码;
在对所述抽象源缺陷代码进行编码处理时,基于所述特征码更新所述目标函数对应的词向量。
8.一种程序漏洞修复终端,其特征在于,包括:
历史修复代码获取模块,配置为基于对源代码进行缺陷检测所得到的源缺陷代码与检测结果,获取历史修复代码;其中,所述历史修复代码为与所述检测结果相对应的历史缺陷代码的修复代码;
目标修复代码获取模块,配置为基于所述历史修复代码的特征,生成所述源缺陷代码的目标修复代码;
源代码修复模块,配置为根据所述源缺陷代码的源代码结构,在所述源代码中对所述目标修复代码进行序列拟合,得到修复后的源代码。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于中国电信股份有限公司,未经中国电信股份有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202211169630.2/1.html,转载请声明来源钻瓜专利网。