[发明专利]一种流程差异定位方法及装置在审
申请号: | 202111340478.5 | 申请日: | 2021-11-12 |
公开(公告)号: | CN114003507A | 公开(公告)日: | 2022-02-01 |
发明(设计)人: | 赵润泽;汤国祥 | 申请(专利权)人: | 北京天融信网络安全技术有限公司;北京天融信科技有限公司;北京天融信软件有限公司 |
主分类号: | G06F11/36 | 分类号: | G06F11/36 |
代理公司: | 北京金信知识产权代理有限公司 11225 | 代理人: | 喻嵘 |
地址: | 100085 北京*** | 国省代码: | 北京;11 |
权利要求书: | 查看更多 | 说明书: | 查看更多 |
摘要: | |||
搜索关键词: | 一种 流程 差异 定位 方法 装置 | ||
1.一种流程差异定位方法,其特征在于,包括:
获取源代码;
从所述源代码中摘取源代码片段;
初始化所述源代码片段,并对初始化的所述源代码片段进行编译运行;
获得运行结果;
在所述运行结果与所述源代码片段在所述源代码中运行时的结果不同的情况下,在所述源代码片段与源代码中的对应位置处均执行插桩操作;
运行插桩后的所述源代码片段及源代码,以至少分别寻找所述源代码片段及源代码中的流程控制关键点,并得到记录有插桩后的所述源代码片段与源代码的运行数据的log文件;
至少基于所述log文件辅助确定所述源代码片段相对所述源代码的流程差异位置。
2.根据权利要求1所述的方法,其特征在于,所述运行插桩后的所述源代码片段及源代码,以至少分别寻找所述源代码片段及源代码中的流程控制关键点,包括:
对所述源代码片段与源代码分别进行分块处理,得到多个代码块;
至少基于每个所述代码块在对应的所述源代码片段或源代码中的上下文,从多个所述代码块中确定出作为候选流程控制关键点的第一代码块;
对所述第一代码块进行关键点过滤处理,以得到分别对应所述源代码片段以及所述源代码中的所述流程控制关键点的第二代码块。
3.根据权利要求2所述的方法,其特征在于,所述至少基于每个所述代码块在对应的所述源代码片段或源代码中的上下文,从多个所述代码块中确定出作为候选流程控制关键点的第一代码块,包括:
确定每个所述代码块在对应的所述源代码片段或源代码中的上下文;
确定所述上下文中是否具有目标关键词,若是,则确定对应的所述代码块为所述第一代码块;
所述方法还包括:
确定所述源代码片段及源代码中的函数头为所述候选流程控制关键点。
4.根据权利要求1所述的方法,其特征在于,运行插桩后的所述源代码片段及源代码,得到记录有插桩后的所述源代码片段与源代码的运行数据的log文件,包括:
在所述源代码片段及源代码中对应每个所述流程关键点处均插入log打印函数,以在经插桩处理后的所述源代码片段及源代码运行时,分别生成并输出所述log文件。
5.根据权利要求1所述的方法,其特征在于,所述log文件均包括多个线程的运行数据,其中,对应所述源代码的log文件为标准log文件,对应所述源代码片段的log文件为待测log文件;
所述至少基于所述log文件辅助确定所述源代码片段相对所述源代码的流程差异位置,包括:
分别对所述标准log文件、待测log文件基于线程ID进行分块,以得到多个分别对应各个线程的log块;
将对应标准log文件的log块与对应待测log文件的log块进行比对,以辅助确定出所述源代码片段的流程差异位置。
6.根据权利要求5所述的方法,其特征在于,所述将对应标准log文件的log块与对应待测log文件的log块进行比对,包括:
将对应待测log文件中的每个log块均与对应标准log文件的所有log块进行对比;
在对比过程中,确定每个进行对比的log块的长度,若相对比的两个log块的长度差满足阈值时,则对长度过长的所述log块进行有效数据提取,以形成第三log块,所述第三log块的长度与长度较短的所述log块的长度满足匹配关系;
比对所述第三log块与所述长度较短的log块。
7.根据权利要求5所述的方法,其特征在于,所述将对应标准log文件的log块与对应待测log文件的log块进行比对,包括:
基于特征生成算法处理每个所述log块,以确定出每个所述log块的特征;
基于每个所述log块的特征比对对应标准log文件的log块与对应待测log文件的log块的频度相似度;
若确定的频度相似度满足第一匹配阈值,则比对对应标准log文件的log块与对应待测log文件的log块的编辑距离相似度。
该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京天融信网络安全技术有限公司;北京天融信科技有限公司;北京天融信软件有限公司,未经北京天融信网络安全技术有限公司;北京天融信科技有限公司;北京天融信软件有限公司许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服】
本文链接:http://www.vipzhuanli.com/pat/books/202111340478.5/1.html,转载请声明来源钻瓜专利网。