检索规则说明:AND代表“并且”;OR代表“或者”;NOT代表“不包含”;(注意必须大写,运算符两边需空一格)
检 索 范 例 :范例一: (K=图书馆学 OR K=情报学) AND A=范并思 范例二:J=计算机应用与软件 AND (U=C++ OR U=Basic) NOT M=Visual
作 者:崔宝江[1,2] 马丁[1] 郝永乐[2] 王建新[3]
机构地区:[1]北京邮电大学计算机学院,北京100876 [2]中国信息安全测评中心,北京100085 [3]北京林业大学信息学院,北京100083
出 处:《清华大学学报(自然科学版)》2011年第10期1351-1356,共6页Journal of Tsinghua University(Science and Technology)
基 金:国家自然科学基金资助项目(6117026890818021)
摘 要:基于基本块签名和跳转关系的二进制文件结构化比对技术,对已有的二进制结构化比对算法进一步改进,提出一种基于基本块签名和基本块之间跳转关系的函数控制流图比对算法。即首先提取二进制文件反汇编后的函数控制流图信息,然后对图中的基本块进行签名匹配,在签名匹配的基础上再进一步利用邻接矩阵进行边匹配,最后利用匹配的基本块计算函数相似度和文件相似度,并开发出比对工具BinCompae。研究结果表明:相对于源码比对工具和几个常用的二进制补丁比对工具,针对常见的代码抄袭方式,BinCompae均能检测出99%以上的相似度;此外,BinCompare还能检测出语义不变,代码形式改变的抄袭方式。因此,基于基本块签名和跳转关系的结构化比对算法针对二进制文件比对具有很高的准确性和实用性。The paper describes graph-based comparison of executable objects based on block signatures and jump relations.This paper describes an algorithm combining basic block signatures and basic block jump relations.The algorithm develops the function control flow graph after disassembly,then matches the block signatures and further matches the blocks using an adjacency matrix.The algorithm finally calculates the function and file similarity using a comparison tool.Tests demonstrate that the algorithm can detect more than 99% of commonly used source code plagiarisms and similarities,better than source code comparison tools and several executable patch comparison tools.The algorithm can also detect cases with the same semantics,but different expressions.Thus,the graph-based comparison algorithm based on the block signatures and jump relations is accurate and effective in comparing executable objects.
关 键 词:二进制文件同源性检测 基本块签名 基本块跳转关系 函数控制流图
分 类 号:TP309[自动化与计算机技术—计算机系统结构]
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在载入数据...
正在链接到云南高校图书馆文献保障联盟下载...
云南高校图书馆联盟文献共享服务平台 版权所有©
您的IP:216.73.216.60