[发明专利]一种基于NLP的二进制代码相似性比对方法有效

专利信息
申请号: 202110988539.2 申请日: 2021-08-26
公开(公告)号: CN113703773B 公开(公告)日: 2022-07-19
发明(设计)人: 贾张涛;付修锋;李雅斯;杨铁湃;邵飒;金玉川 申请(专利权)人: 北京计算机技术及应用研究所
主分类号: G06F8/41 分类号: G06F8/41;G06F40/216;G06F40/284
代理公司: 中国兵器工业集团公司专利中心 11011 代理人: 刘瑞东
地址: 100854*** 国省代码: 北京;11
权利要求书: 查看更多 说明书: 查看更多
摘要:
搜索关键词: 一种 基于 nlp 二进制 代码 相似性 方法
【权利要求书】:

1.一种基于NLP的二进制代码相似性比对方法,其特征在于,该方法包括如下步骤:

第一步:二进制代码反汇编

将二进制代码文件Bin_0转换为汇编文件Asm_0;

第二步:汇编文件切分

Asm_0为二进制代码函数的集合,对Asm_0进行函数、代码块提取,函数是多个代码块的集合;

第三步:特征提取

依据拆分好的代码块序列,利用NLP算法,结合函数特征信息,对二进制代码的文件、函数块、代码块分别进行编码,获得函数的特征向量;

第四步:相似度计算

通过计算函数特征向量之间的距离来获取函数的相似情况,根据函数的相似情况判断二进制代码工程的相似度;

所述第三步具体包括如下步骤:

S31、函数块P表示为代码块的集合,P={L_1,L_2,……,L_m};

S32、对于代码块L_k进行分词处理,k=1,…,m:根据汇编语言的特征,对代码块的文本进行分词处理;

S33、将代码块L_k序列映射成特征向量:使用哈希函数将每个代码块生成一组长度为64位向量,得到代码块L_k对应的哈希向量Hash_k;

S34、分词词频统计,代码块L_k的各个分词进行词频统计,以每个分词出现的频度作为该分词权值,T_k={…,mov:X,…},X为mov出现的频度;

S35、赋权,根据分词权值对代码块L_k对应的哈希向量Hash_k根据特定规则赋予权重值,输出该代码块各分词的加权向量;

S36、函数P处理:对函数P中每个代码块进行处理,得到每个代码块包含分词的加权向量;

S37、合并:将函数P中所有代码块中同一分词的向量进行加权合并,以对数据进行压缩,得到函数P中每个分词的加权向量;

S38、降维:将函数块P每个分词的加权向量进行相加,进行降维操作,得到函数P的64位加权向量;

所述第四步具体包括:

S41、首先通过调用代码特征的提取方法获取两个工程的函数特征向量Hash_P,并分别统计函数总数目;

S42、以距离S为阈值,根据函数特征向量Hash_P对函数进行分类,特征向量相同记为相同函数,特征向量不同且向量距离小于S记为相似函数,其他记为不同函数,统计每个二进制文件函数相似情况;

S43、以相同、相似函数数量之和占函数总数的百分比作为工程相似度。

2.如权利要求1所述的基于NLP的二进制代码相似性比对方法,其特征在于,所述第一步具体包括:通过二进制代码反汇编工具,将二进制代码文件Bin_0转换为汇编文件Asm_0。

3.如权利要求1所述的基于NLP的二进制代码相似性比对方法,其特征在于,所述第二步具体包括:

S21、根据函数开始标识和函数结束标识,对汇编文件进行切分,提取汇编文件中的函数信息;函数用P表示,一个汇编代码S由S={P_1,P_2,……,P_n}表示;

S22、每一个函数由多个代码基本块组成,并通过分支指令标记,代码块用L表示,每个函数表示为多个代码块的集合P={L_1,L_2,……,L_m};

S23、对汇编文件中的函数标识、偏移地址、分支指令、函数地址、跳转地址和立即数进行标准化处理。

4.如权利要求3所述的基于NLP的二进制代码相似性比对方法,其特征在于,分支指令标记包括jnz和jmp。

5.如权利要求1所述的基于NLP的二进制代码相似性比对方法,其特征在于,所述步骤S32中汇编语言的特征包括Mov、add和Sub。

6.如权利要求1所述的基于NLP的二进制代码相似性比对方法,其特征在于,所述步骤S35具体包括:根据分词权值与代码块的哈希向量相乘获得加权向量,若哈希向量的第i位为1,则用“1”与分词权值相乘获得该位的向量值,若哈希向量的第i位为0,则用“-1”与分词权值相乘获得该位的向量值。

下载完整专利技术内容需要扣除积分,VIP会员可以免费下载。

该专利技术资料仅供研究查看技术是否侵权等信息,商用须获得专利权人授权。该专利全部权利属于北京计算机技术及应用研究所,未经北京计算机技术及应用研究所许可,擅自商用是侵权行为。如果您想购买此专利、获得商业授权和技术合作,请联系【客服

本文链接:http://www.vipzhuanli.com/pat/books/202110988539.2/1.html,转载请声明来源钻瓜专利网。

×

专利文献下载

说明:

1、专利原文基于中国国家知识产权局专利说明书;

2、支持发明专利 、实用新型专利、外观设计专利(升级中);

3、专利数据每周两次同步更新,支持Adobe PDF格式;

4、内容包括专利技术的结构示意图流程工艺图技术构造图

5、已全新升级为极速版,下载速度显著提升!欢迎使用!

请您登陆后,进行下载,点击【登陆】 【注册】

关于我们 寻求报道 投稿须知 广告合作 版权声明 网站地图 友情链接 企业标识 联系我们

钻瓜专利网在线咨询

周一至周五 9:00-18:00

咨询在线客服咨询在线客服
tel code back_top