CN105868108A - 基于神经网络的指令集无关的二进制代码相似性检测方法 - Google Patents

基于神经网络的指令集无关的二进制代码相似性检测方法 Download PDF

Info

Publication number
CN105868108A
CN105868108A CN201610182075.5A CN201610182075A CN105868108A CN 105868108 A CN105868108 A CN 105868108A CN 201610182075 A CN201610182075 A CN 201610182075A CN 105868108 A CN105868108 A CN 105868108A
Authority
CN
China
Prior art keywords
similarity
feature
function
degree
features
Prior art date
Legal status (The legal status is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the status listed.)
Granted
Application number
CN201610182075.5A
Other languages
English (en)
Other versions
CN105868108B (zh
Inventor
石志强
刘中金
常青
陈昱
孙利民
朱红松
王猛涛
Current Assignee (The listed assignees may be inaccurate. Google has not performed a legal analysis and makes no representation or warranty as to the accuracy of the list.)
Institute of Information Engineering of CAS
National Computer Network and Information Security Management Center
Original Assignee
Institute of Information Engineering of CAS
Priority date (The priority date is an assumption and is not a legal conclusion. Google has not performed a legal analysis and makes no representation as to the accuracy of the date listed.)
Filing date
Publication date
Application filed by Institute of Information Engineering of CAS filed Critical Institute of Information Engineering of CAS
Priority to CN201610182075.5A priority Critical patent/CN105868108B/zh
Publication of CN105868108A publication Critical patent/CN105868108A/zh
Application granted granted Critical
Publication of CN105868108B publication Critical patent/CN105868108B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Classifications

    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F11/00Error detection; Error correction; Monitoring
    • G06F11/36Preventing errors by testing or debugging software
    • G06F11/3604Software analysis for verifying properties of programs
    • G06F11/3608Software analysis for verifying properties of programs using formal methods, e.g. model checking, abstract interpretation
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/21Design or setup of recognition systems or techniques; Extraction of features in feature space; Blind source separation
    • G06F18/214Generating training patterns; Bootstrap methods, e.g. bagging or boosting
    • GPHYSICS
    • G06COMPUTING; CALCULATING OR COUNTING
    • G06FELECTRIC DIGITAL DATA PROCESSING
    • G06F18/00Pattern recognition
    • G06F18/20Analysing
    • G06F18/24Classification techniques

Landscapes

  • Engineering & Computer Science (AREA)
  • Theoretical Computer Science (AREA)
  • Data Mining & Analysis (AREA)
  • Physics & Mathematics (AREA)
  • General Physics & Mathematics (AREA)
  • General Engineering & Computer Science (AREA)
  • Computer Vision & Pattern Recognition (AREA)
  • Life Sciences & Earth Sciences (AREA)
  • Artificial Intelligence (AREA)
  • Bioinformatics & Cheminformatics (AREA)
  • Bioinformatics & Computational Biology (AREA)
  • Evolutionary Biology (AREA)
  • Evolutionary Computation (AREA)
  • Computer Hardware Design (AREA)
  • Software Systems (AREA)
  • Quality & Reliability (AREA)
  • Information Retrieval, Db Structures And Fs Structures Therefor (AREA)

Abstract

本发明涉及一种基于神经网络的指令集无关的二进制代码相似性检测方法,其主要步骤包括:对二进制文件进行逆向分析,提取函数的调用关系特征、字符串特征、栈空间特征、代码规模特征、路径序列特征、路径基本特征,度序列特征、度基本特征,图规模特征等9个方面共24个特征。基于特征的表现形式,采用3种相似度计算方法计算待比较的两个函数的24个特征的相似程度,作为集成神经网络分类器的输入向量,获得两个函数整体相似度的预测值并进行排序。本发明与现有的技术比,不依赖特定的指令集,可以实现不同指令集的二进制文件的相似度检测,准确率高,技术简单,易于推广。

Description

基于神经网络的指令集无关的二进制代码相似性检测方法
技术领域
本发明涉及二进制程序漏洞挖掘与逆向分析领域,具体涉及一种基于神经网络的指令集无关的二进制代码相似性的检测方法,属于计算机程序检测技术领域。
背景技术
随着开源软件的崛起,软件抄袭现象越来越多,检测代码是否抄袭的需求也就越来越大。实际应用中,大部分的商业软件均已二进制代码形式存在,源代码难以获取。因此,判断代码是否抄袭的方法主要采用二进制代码相似性检测技术。
二进制代码相似性检测技术是依靠各种相似性计算方法,度量待比较的两份二进制代码的相似程度,可分为基于文本的相似性检测技术、基于图同构的相似性检测技术、基于结构化签名的相似性检测技术和基于语义信息的相似性检测技术。基于文本的相似性检测技术可分为二进制字节相似性检测技术和反汇编文本相似性检测技术,两者均是直接对内容做比较,依赖指令集和编码方式。基于图同构的相似性检测技术核心是基于指令的相似性,比较的是汇编指令语义级信息的相似性,进而将问题转化为图同构问题,同样依赖指令集。基于结构化签名的相似性检测技术是根据函数签名进行匹配,同时在函数控制流图上进行基点传播。函数签名往往取函数控制流图的节点数,边数等,对函数控制流图的变化缺乏鲁棒性。基于语义信息的相似性检测技术是依靠各种二进制代码分析平台对语义信息进行提取和比较,需要分析员对二进制代码分析平台熟悉,实现较为困难。
二进制代码相似性检测技术不但可用于代码抄袭检测,还可用于补丁比对和二进制软件同源性检测等方面。随着代码相似性检测技术的不断发展,随之涌现大量的二进制代码相似性检测工具。2005年12月,iDefense公司发布IDA插件IDACompare;2006年11月,eEye发布开源的eEye Binary Diffing Suite(EBDS)套件;2007年9月,Sabre发布IDA插件Bindiff2。这些工具的出现和改进,使代码相似性检测技术得到越来越广泛的应用。
目前,缺少一种实现简单的,指令集无关的二进制代码相似性检测技术。
发明内容
本发明目的在于提供一种基于神经网络的指令集无关的二进制代码相似性检测方法。
本发明涉及的方法流程主要包括:对二进制文件进行逆向分析,提取函数的调用关系特征、字符串特征、栈空间特征、代码规模特征、路径序列特征、路径基本特征,度序列特征、度基本特征,图规模特征共9个方面24个特征。通过计算待比较的两个函数的每个特征的相似程度,获得调用关系相似度、字符串相似度、栈空间相似度、代码规模相似度、路径序列相似度、路径基本属性相似度,度序列相似度、度基本属性相似度和图规模相似度9个方面共24个相似度,作为神经网络分类器的输入向量,带入集成神经网络分类器中进行预测,获得两个函数整体相似度并进行排序。
本发明的技术创新点在于函数9个方面共24个特征的构造和基于集成神经网络分类器的相似程度预测方法。24个特征主要从函数之间调用关系、函数的基本属性和函数控制流图的图属性三个方面进行提取,较完整地反映了一个函数的典型特征。特别的是,24个特征的提取不依赖特定的指令集,可以对两个不同指令集的二进制代码进行特征提取和相似程度预测。采用集成多个神经网络对相似程度进行预测,实现简单,易于推广。
为实现上述目的,本发明采用如下技术方案:
一种基于神经网络的指令集无关的二进制代码相似性检测方法,主要包含以下步骤:
1)构造训练样本集。选择同一份源码,选择不同的编译器和不同的优化选项,针对不同的架构进行编译,获得二进制可执行文件。对二进制可执行文件进行逆向分析,提取每个函数的24个特征。基于特征,对每两个函数计算相似度共获得24个相似度作为神经网络的输入向量。如果两个函数名称相同,则标签为1,作为正样本,如果两个函数名称不同,则标签为0,作为负样本。
2)构造神经网络分类器和子训练样本集。建立若干初始神经网络。从初始样本集中有放回的抽取一定比例(如80%)的样本构造若干独立同分布的子训练样本集,作为每个神经网络的训练样本。
3)训练神经网络分类器。将对应的子训练样本集输入神经网络分类器进行训练,根据预测结果调整神经网络的参数直至预测结果符合要求,此时神经网络分类器训练完毕。
4)构造测试集。将已知的函数称为本地函数,将待检测的函数称为目标函数,根据需求构建本地函数库和目标函数库。对每个本地函数提取24个特征,构造过滤器。对每个目标函数提取24个特征。对每个本地函数,用其对应的过滤器对目标函数库进行过滤,构建该本地函数的候选集。计算每个本地函数与其对应候选集内每个目标函数的24个相似度值,作为测试样本。
5)将测试样本输入神经网络分类器中,用已经训练好的若干神经网络分类器进行预测得到若干预测值,取其加权平均作为整体相似度预测值并进行排序。
进一步地,步骤1)和4)中,24个特征是调用关系特征、字符串特征、栈空间特征、代码规模特征、路径序列特征、路径基本特征,度序列特征、度基本特征和图规模特征。其中调用关系特征由该函数被调用的函数个数、被该函数调用的函数个数和去重后的个数构成;字符串特征是由函数调用的字符串数量和字符串集合构成;栈空间特征是该函数的栈空间大小;代码规模特征由指令个数、跳转指令个数、代码量构成;路径基本特征由平均路径和图直径构成;路径序列特征是该函数所有基本块之间的路径长度的升序序列。度基本特征由图的熵、最大度和平均度构成;度序列特征由该函数所有基本块的入度升序序列、出度升序序列和度升序序列构成。图规模特征由CFG有向图的节点数、链路数、链路效率、图密度、聚类系数构成。
进一步地,步骤1)和4)中,24个相似度是由调用关系相似度、字符串相似度、栈空间相似度、代码规模相似度、路径序列相似度、路径基本属性相似度,度序列相似度、度基本属性相似度和图规模相似度构成。
本发明可以获得以下有益效果:
本发明在提取函数的24个特征时,主要从函数间的调用关系、函数的基本属性和函数控制流图的图属性三个方面进行提取,较完整地反映一个函数的典型特征。这24个特征的提取不依赖特定的指令集,因此本发明可以对两个不同指令集的二进制代码进行特征提取和相似程度预测。
本发明在构造、训练和测试神经网络时,训练样本集是由同一份源码,选择不同的编译器,不同的优化选项,针对不同的指令集进行编译获得的,较为完整地包含不同编译器、不同优化选项和不同指令集下的样本;采用的是若干神经网络集成的方法,对每个神经网络建立了独立同分布的子训练样本集进行训练;在计算预测结果时,采用的是若干神经网络预测值取加权平均的方法。这种集成分类器的方法,将提高预测结果的准确性和稳定性。
本发明在构造测试集时,采用过滤器,用于本地函数候选集的构造。过滤器的使用将特征相差巨大,明显不相似的目标函数快速排除,提高了检索效率。
本发明与现有的技术比,不依赖特定的指令集,可以实现不同指令集的二进制文件的相似度检测,准确率高,技术简单,易于推广。
附图说明
图1.函数特征提取流程示意图。
图2.神经网络模型结构示意图。
图3.训练集成分类器方法。
图4.候选集构造示意图。
图5.集成分类器预测方法。
图6.整体流程示意图。
具体实施方式
为使本发明的上述目的、特征和优点能够更加明显易懂,下面通过具体实施例和附图,对本发明做进一步说明。
本发明的一种基于神经网络的指令集无关的二进制相似代码检索方法,具体包括如下步骤:
1)构造训练集样本。选择同一份源码,选择不同的编译器,不同的优化选项,针对不同的架构进行编译,获得二进制可执行文件。对二进制可执行文件进行逆向分析,对每个函数提取9个方面的特征。这9个方面的特征分别是调用关系特征、字符串特征、栈空间特征、代码规模特征、路径序列特征、路径基本特征,度序列特征、度基本特征,图规模特征,字符串特征。图1是函数特征提取流程示意图,具体的函数特征提取方法如下:
a).对二进制文件进行逆向分析,获得函数基本属性、函数调用图和函数控制流图。
b).分析函数调用图,计算该函数被其他函数调用的次数callto和计算该函数调用其他函数的次数callfrom,以及去重后的被其他函数调用的次数callto2和去重后的该函数调用其他函数的次数callfrom2,构成调用关系特征Call=(callfrom,callto,callfrom2,callto2)。
c).分析函数基本属性,计算栈空间stack、跳转指令个数jump、指令个数inst,代码量code,调用的字符串数量strnum和调用的字符串集合strset。构成栈空间特征Stack=(stack)、字符串特征Str=(strnum,strset)和代码规模特征Code=(jump,inst,code)。
d).分析函数控制流图(CFG图),计算每个节点的出入度,构造CFG有向图邻接矩阵如下:
其中,其中,nt、nk表示CFG有向图的节点,xtk表示节点nt到节点nk在有向图中的边连接情况,o1~on表示出度,i1~in表示入度。
将函数控制流图转化为无向图,计算每个节点的度,构造CFG无向图邻接矩阵如下:
其中,其中,ytk表示节点nt到节点nk在无向图中的边连接情况。
e).对CFG有向图邻接矩阵和CFG无向图邻接矩阵进行度分析。基于CFG有向图邻接矩阵按公式(1)和(2)计算入度升序序列i=(i1,i2,…,it,…,in)、出度升序序列o=(o1,o2,…,ot,…on);基于CFG无向图邻接矩阵按公式(3)计算度升序序列d=(d1,d2,…,dt,…dn)。构造度序列特征degreeList=(i,o,d)。
基于度升序序列d,按公式(4)计算平均度aveDegree,按公式(5)计算最大度maxDegree,并计算度的概率序列P=(P0,P1,…PmaxDegree),其中Pk表示出入度为k的节点占所有节点的比例。基于度的概率序列P按公式(6)计算图的熵entropy,构造度的基本属性特征degreeBasic=(aveDegree,maxDegree,entropy)。
i t = Σ k = 1 n x k t - - - ( 1 )
o t = Σ k = 1 n x t k - - - ( 2 )
d t = Σ k = 1 n y t k - - - ( 3 )
a v e D e g r e e = Σ t = 1 n d t n - - - ( 4 )
maxDegree=max(d) (5)
e n t r o p y = - Σ k = 1 max D e g r e e P k log 2 ( P k ) - - - ( 6 )
f).对CFG无向图邻接矩阵进行路径分析,计算入口基本块到任意其他基本块的最小距离,可以采用Floyd算法、Dinkstra算法等,构造升序距离序列如下:
path=(minpath1,minpath2,…,minpathn-1)
用python实现的Floyd算法如下:
构造路径序列特征为pathList=(path)。按公式(7)计算图的平均路径长度avePath。按公式(8)计算图直径diameter。构造路径基本属性特征pathBasic=(avePath,diameter)。
avePath=mean(path) (7)
diameter=max{path} (8)
g).对CFG有向图邻接矩阵进行基本属性分析,计算节点数node,计算链路数edge。按公式(9)计算图的链路效率E(cfg),其中m表示有向CFG图的有向边数。按公式(10)计算图密度density,n表示有向CFG图的节点数。按公式(11)(12)计算图的聚类系数Cc(cfg),其中,c表示节点k的所有邻居节点构成的无向CFG图的子图边数,dk表示节点k的度。构造CFG图基本属性特征cfgBasic=(node,edge,E(cfg),density,Cc(cfg))。
E ( c f g ) = m - a v e P a t h m - - - ( 9 )
d e n s i t y = 2 m n ( n - 1 ) - - - ( 10 )
Cc k = 2 c d k ( d k - 1 ) - - - ( 11 )
C c ( c f g ) = Σ k = 1 n Cc k n - - - ( 12 )
按以上步骤操作,提取Call,Str,Stack,Code,degreeList,degreeBasic,pathList,pathBasic,cfgBasic9个方面共24个特征作为函数的特征。
基于以上9个方面共24个特征,对每两个函数计算每个特征的相似度作为神经网络的输入向量。这9个方面的相似度分别是:调用关系相似度、栈空间相似度、字符串相似度,代码规模相似度、路径序列相似度、路径基本属性相似度,度序列相似度、度基本属性相似度和图规模相似度,共计24个相似度。计算方法如下:
针对以下数值型特征:callfrom,callto,callfrom2,callto2,strnum,stack,jump,inst,code,aveDegree,maxDegree,entropy,avePath,diameter,node,edge,E(cfg),density,Cc(cfg),采用公式(13)进行相似度计算。
针对以下序列型特征:i,o,d,path,采用字符串编译距离算法进行计算。用python编译的字符串编译距离算法如下:
针对以下集合型特征:strset,采用Jaccard系数进行相似度计算。计算方法见公式(14)。
如果两个函数名称相同,则标签为1,作为正样本,如果两个函数名称不同,则标签为0,作为负样本。
2).构造神经网络分类器和训练样本集。建立若干初始神经网络,经验取值为10个神经网络。采用matlab神经网络工具箱实现,神经网络输入层的神经元个数为24个,代表以上计算所得的24个相似度。神经网络隐含层为1层,神经元个数经验取值为50。神经网络输出层的神经元个数为1个,代表输出的是整体相似度预测值。图2是1个神经网络结构示意图。训练样本采用自编译的、多平台、带符号表的函数集,根据匹配模式不同,可以采用对应匹配模式的训练样本集。从训练样本集中有放回的抽取80%的样本构造10个独立同分布的子训练样本集,作为每个神经网络的训练样本。
3).训练神经网络分类器。图3是训练集成分类器方法。将对应的子训练样本集输入神经网络分类器进行训练,根据预测结果,调整神经网络的参数直至预测结果符合要求,此时神经网络分类器训练完毕。
4).构造测试集。将已知的函数称为本地函数,将待检测的函数称为目标函数,根据需求构建本地函数库和目标函数库。图4是候选集构造示意图。对每个本地函数提取24个特征,构造过滤器。过滤器是基于专业经验,对本地函数的某一特征,计算与其相似的函数的特征经验范围。如果待检测函数的这一特征超过了该特征范围,则认为该待检测函数与该本地函数不相似。对每个目标函数提取24个特征。对每个本地函数,用其对应的过滤器对目标函数库进行过滤,构建该本地函数的候选集,计算该本地函数与其对应候选集内每个目标函数的8个相似度值,作为测试样本。
5).用神经网络分类器进行预测。图5是集成分类器预测方法示意图。将测试样本输入神经网络分类器中,获得预测值。
6).根据预测值进行相似度排序,输出相似度前100的函数。上述步骤4)~6)的整体流程如图6所示。
综上所述,本发明公开了一种基于神经网络的指令集无关的二进制相似代码检索方法。上面描述的应用场景及实施例,并非用于限定本发明,任何本领域技术人员在不脱离本发明的精神和范围内可作各种更动和润饰。因此本发明的保护范围视权利要求范围所界定。

Claims (6)

1.一种基于神经网络的指令集无关的二进制代码相似性检测方法,其特征在于,包括以下步骤:
1)选择同一份源码,选择不同的编译器和不同的优化选项,针对不同的架构进行编译,获得二进制可执行文件;
2)对二进制可执行文件进行逆向分析,提取每一个函数的调用关系特征、字符串特征、栈空间特征、代码规模特征、路径序列特征、路径基本特征,度序列特征、度基本特征,图规模特征共9个方面的特征;
3)基于步骤2)提取的9个方面的特征,采用相似度计算方法计算待比较函数的各特征的相似度;
4)将步骤3)提取的相似度作为神经网络的输入向量;如果两个函数名称相同,则标签作为正样本;如果两个函数名称不同,则标签作为负样本;
5)提取若干正样本和负样本以构造训练样本集,并初始化若干个神经网络,针对每个神经网络构造独立同分布的训练样本子集进行训练,根据预测结果调整参数直至预测结果符合要求,此时神经网络分类器训练完毕;
6)将已知的函数称为本地函数,将待检测的函数称为目标函数,根据需求构建本地函数库和目标函数库;对每个本地函数按步骤2)提取9个方面的特征,构造过滤器;对每个目标函数按步骤2)提取9个方面的特征;对每个本地函数,用其对应的过滤器对目标函数库进行过滤,构建该本地函数的候选集;按步骤3)计算每个本地函数与其对应候选集内每个目标函数的相似度值,作为测试样本;
7)将测试样本输入神经网络分类器中,将每个神经网络分类器输出的预测值取加权平均作为整体相似度预测值并进行排序。
2.如权利要求1所述的方法,其特征在于,所述9个方面的特征包括24个特征,具体如下:
a)4个调用关系特征:对二进制文件进行逆向分析,获得函数调用图,计算函数被其他函数调用的次数,该函数调用其他函数的次数,去重后的被其他函数调用的次数,以及去重后的该函数调用其他函数的次数,作为调用关系特征;
b)1个栈空间特征:对二进制文件进行逆向分析,获得函数的栈空间大小,作为栈空间特征;
c)2个字符串特征:统计函数调用的字符串个数和字符串集合,作为字符串特征;
d)3个代码规模特征:统计函数的指令个数、跳转指令个数和代码量,作为代码规模特征;
e)3个度序列特征:对二进制文件进行逆向分析,获得函数的控制流图,计算每个节点的出入度,构造CFG有向图邻接矩阵;将函数控制流图转化为无向图,计算每个节点的度,构造CFG无向图邻接矩阵;对CFG有向图邻接矩阵、CFG无向图邻接矩阵进行度分析;基于CFG有向图邻接矩阵计算入度升序序列、出度升序序列,基于CFG无向图邻接矩阵计算度升序序列,三者作为度序列特征;
f)3个度基本特征:基于度升序序列,计算最大度、平均度和度的概率序列,基于度的概率序列计算图的熵;将最大度、平均度和图的熵作为图基本特征;
g)1个路径序列特征:对CFG无向图邻接矩阵进行路径分析,计算入口节点到其他任意节点间的最小距离,构造路径序列,作为路径序列特征;
h)2个路径基本特征:由路径序列计算图的平均路径、图直径,作为路径基本特征;
i)5个图规模特征:对CFG有向图邻接矩阵进行基本属性分析,计算节点数、链路数、图密度、图聚类系数、链路效率,作为图规模特征。
3.如权利要求2所述的方法,其特征在于,通过Floyd算法或Dinkstra算法计算入口节点到其他任意节点间的最小距离,构造所述路径序列特征。
4.如权利要求2所述的方法,其特征在于,步骤3)基于9个方面共24个特征,对每两个函数计算每个特征的相似度作为神经网络的输入向量,这9个方面的相似度分别是:调用关系相似度、栈空间相似度、字符串相似度,代码规模相似度、路径序列相似度、路径基本属性相似度,度序列相似度、度基本属性相似度和图规模相似度,对应24个特征共计24个相似度。
5.如权利要求4所述的方法,其特征在于,步骤3)中,针对数值形式的特征,采用绝对值距离与最大值之差作为相似度;针对序列形式的特征,采用字符串编译距离作为相似度;针对集合形式的特征,采用Jaccard系数作为相似度。
6.如权利要求1所述的方法,其特征在于,步骤4)至步骤7)中,训练样本采用自编译的、多平台、带符号表的函数集;根据匹配模式不同,采用对应匹配模式的训练样本集训练集成神经网络,以提高准确率。
CN201610182075.5A 2016-03-28 2016-03-28 基于神经网络的指令集无关的二进制代码相似性检测方法 Active CN105868108B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN201610182075.5A CN105868108B (zh) 2016-03-28 2016-03-28 基于神经网络的指令集无关的二进制代码相似性检测方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN201610182075.5A CN105868108B (zh) 2016-03-28 2016-03-28 基于神经网络的指令集无关的二进制代码相似性检测方法

Publications (2)

Publication Number Publication Date
CN105868108A true CN105868108A (zh) 2016-08-17
CN105868108B CN105868108B (zh) 2018-09-07

Family

ID=56626086

Family Applications (1)

Application Number Title Priority Date Filing Date
CN201610182075.5A Active CN105868108B (zh) 2016-03-28 2016-03-28 基于神经网络的指令集无关的二进制代码相似性检测方法

Country Status (1)

Country Link
CN (1) CN105868108B (zh)

Cited By (20)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106528111A (zh) * 2016-10-25 2017-03-22 广东工业大学 一种数据结构作业程序相似性度量方法
CN107102861A (zh) * 2017-04-25 2017-08-29 中南大学 一种获取开源代码库中函数的向量的方法和系统
CN107357566A (zh) * 2017-06-06 2017-11-17 上海交通大学 多架构二进制相似代码检测系统及方法
CN107944278A (zh) * 2017-12-11 2018-04-20 北京奇虎科技有限公司 一种内核漏洞检测方法及装置
CN108446540A (zh) * 2018-03-19 2018-08-24 中山大学 基于源代码多标签图神经网络的程序代码抄袭类型检测方法与系统
CN108491718A (zh) * 2018-02-13 2018-09-04 北京兰云科技有限公司 一种实现信息分类的方法及装置
CN109063055A (zh) * 2018-07-19 2018-12-21 中国科学院信息工程研究所 同源二进制文件检索方法和装置
CN109740347A (zh) * 2018-11-23 2019-05-10 中国科学院信息工程研究所 一种针对智能设备固件的脆弱哈希函数的识别与破解方法
CN109901869A (zh) * 2019-01-25 2019-06-18 中国电子科技集团公司第三十研究所 一种基于词袋模型的计算机程序分类方法
CN109918128A (zh) * 2019-03-25 2019-06-21 湘潭大学 一种基于关系变量图的代码相似度检测方法及系统
CN109977987A (zh) * 2017-12-25 2019-07-05 达索系统公司 预测影响物理系统的事件
CN110083534A (zh) * 2019-04-19 2019-08-02 西安邮电大学 一种基于约减最短路径胎记的软件抄袭检测方法
CN110287702A (zh) * 2019-05-29 2019-09-27 清华大学 一种二进制漏洞克隆检测方法及装置
CN111459788A (zh) * 2019-01-18 2020-07-28 南京大学 一种基于支持向量机的测试程序抄袭检测方法
CN111639344A (zh) * 2020-07-31 2020-09-08 中国人民解放军国防科技大学 一种基于神经网络的漏洞检测方法及装置
CN112084146A (zh) * 2020-09-08 2020-12-15 国网上海市电力公司 基于多维特征的固件同源性检测方法
CN113010209A (zh) * 2020-10-19 2021-06-22 四川大学 一种抗编译差异的二进制代码相似性比较技术
CN113935032A (zh) * 2021-07-21 2022-01-14 北京天融信网络安全技术有限公司 一种恶意代码的同源分析方法、装置及可读存储介质
CN113946346A (zh) * 2021-09-30 2022-01-18 北京五八信息技术有限公司 一种数据处理方法、装置、电子设备及存储介质
CN115858002A (zh) * 2023-02-06 2023-03-28 湖南大学 基于图对比学习的二进制代码相似性检测方法及系统与存储介质

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102999615A (zh) * 2012-11-29 2013-03-27 合肥工业大学 基于径向基函数神经网络的多样化图像标注和检索方法
US20140237277A1 (en) * 2013-02-20 2014-08-21 Dominic S. Mallinson Hybrid performance scaling or speech recognition

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102999615A (zh) * 2012-11-29 2013-03-27 合肥工业大学 基于径向基函数神经网络的多样化图像标注和检索方法
US20140237277A1 (en) * 2013-02-20 2014-08-21 Dominic S. Mallinson Hybrid performance scaling or speech recognition

Non-Patent Citations (1)

* Cited by examiner, † Cited by third party
Title
惠国保等: "基于改进的图像局部区域相似度学习架构的图像特征匹配技术研究", 《计算机学报》 *

Cited By (30)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN106528111A (zh) * 2016-10-25 2017-03-22 广东工业大学 一种数据结构作业程序相似性度量方法
CN106528111B (zh) * 2016-10-25 2019-07-19 广东工业大学 一种数据结构作业程序相似性度量方法
CN107102861A (zh) * 2017-04-25 2017-08-29 中南大学 一种获取开源代码库中函数的向量的方法和系统
CN107102861B (zh) * 2017-04-25 2019-09-03 中南大学 一种获取开源代码库中函数的向量的方法和系统
CN107357566A (zh) * 2017-06-06 2017-11-17 上海交通大学 多架构二进制相似代码检测系统及方法
CN107944278A (zh) * 2017-12-11 2018-04-20 北京奇虎科技有限公司 一种内核漏洞检测方法及装置
CN109977987A (zh) * 2017-12-25 2019-07-05 达索系统公司 预测影响物理系统的事件
CN108491718A (zh) * 2018-02-13 2018-09-04 北京兰云科技有限公司 一种实现信息分类的方法及装置
CN108491718B (zh) * 2018-02-13 2022-03-04 北京兰云科技有限公司 一种实现信息分类的方法及装置
CN108446540B (zh) * 2018-03-19 2022-02-25 中山大学 基于源代码多标签图神经网络的程序代码抄袭类型检测方法与系统
CN108446540A (zh) * 2018-03-19 2018-08-24 中山大学 基于源代码多标签图神经网络的程序代码抄袭类型检测方法与系统
CN109063055A (zh) * 2018-07-19 2018-12-21 中国科学院信息工程研究所 同源二进制文件检索方法和装置
CN109740347A (zh) * 2018-11-23 2019-05-10 中国科学院信息工程研究所 一种针对智能设备固件的脆弱哈希函数的识别与破解方法
CN109740347B (zh) * 2018-11-23 2020-07-10 中国科学院信息工程研究所 一种针对智能设备固件的脆弱哈希函数的识别与破解方法
CN111459788A (zh) * 2019-01-18 2020-07-28 南京大学 一种基于支持向量机的测试程序抄袭检测方法
CN109901869A (zh) * 2019-01-25 2019-06-18 中国电子科技集团公司第三十研究所 一种基于词袋模型的计算机程序分类方法
CN109901869B (zh) * 2019-01-25 2022-03-18 中国电子科技集团公司第三十研究所 一种基于词袋模型的计算机程序分类方法
CN109918128B (zh) * 2019-03-25 2022-04-08 湘潭大学 一种基于关系变量图的代码相似度检测方法及系统
CN109918128A (zh) * 2019-03-25 2019-06-21 湘潭大学 一种基于关系变量图的代码相似度检测方法及系统
CN110083534A (zh) * 2019-04-19 2019-08-02 西安邮电大学 一种基于约减最短路径胎记的软件抄袭检测方法
CN110083534B (zh) * 2019-04-19 2023-03-31 西安邮电大学 一种基于约减最短路径胎记的软件抄袭检测方法
CN110287702A (zh) * 2019-05-29 2019-09-27 清华大学 一种二进制漏洞克隆检测方法及装置
CN110287702B (zh) * 2019-05-29 2020-08-11 清华大学 一种二进制漏洞克隆检测方法及装置
CN111639344A (zh) * 2020-07-31 2020-09-08 中国人民解放军国防科技大学 一种基于神经网络的漏洞检测方法及装置
CN112084146A (zh) * 2020-09-08 2020-12-15 国网上海市电力公司 基于多维特征的固件同源性检测方法
CN113010209A (zh) * 2020-10-19 2021-06-22 四川大学 一种抗编译差异的二进制代码相似性比较技术
CN113935032A (zh) * 2021-07-21 2022-01-14 北京天融信网络安全技术有限公司 一种恶意代码的同源分析方法、装置及可读存储介质
CN113946346A (zh) * 2021-09-30 2022-01-18 北京五八信息技术有限公司 一种数据处理方法、装置、电子设备及存储介质
CN115858002A (zh) * 2023-02-06 2023-03-28 湖南大学 基于图对比学习的二进制代码相似性检测方法及系统与存储介质
CN115858002B (zh) * 2023-02-06 2023-04-25 湖南大学 基于图对比学习的二进制代码相似性检测方法及系统与存储介质

Also Published As

Publication number Publication date
CN105868108B (zh) 2018-09-07

Similar Documents

Publication Publication Date Title
CN105868108A (zh) 基于神经网络的指令集无关的二进制代码相似性检测方法
CN111428044B (zh) 多模态获取监管识别结果的方法、装置、设备及存储介质
CN107516041B (zh) 基于深度神经网络的WebShell检测方法及其系统
Hickerson et al. msBayes: pipeline for testing comparative phylogeographic histories using hierarchical approximate Bayesian computation
CN110750640A (zh) 基于神经网络模型的文本数据分类方法、装置及存储介质
US10049032B2 (en) Methods for generating a negative test input data and devices thereof
CN108491228A (zh) 一种二进制漏洞代码克隆检测方法及系统
CN108509793A (zh) 一种基于用户行为日志数据的用户异常行为检测方法及装置
CN112579469A (zh) 一种源代码缺陷检测方法与装置
CN110555305A (zh) 基于深度学习的恶意应用溯源方法及相关装置
Dinh et al. Online Bayesian phylogenetic inference: theoretical foundations via sequential Monte Carlo
CN103150383A (zh) 一种短文本数据的事件演化分析方法
Oliveira et al. An efficient similarity-based approach for comparing XML documents
KR20190102451A (ko) 악성 어플리케이션 탐지 방법 및 그 장치
CN112115326B (zh) 一种以太坊智能合约的多标签分类和漏洞检测方法
CN115344863A (zh) 一种基于图神经网络的恶意软件快速检测方法
CN115455382A (zh) 一种二进制函数代码的语义比对方法及装置
CN115495755A (zh) 一种基于CodeBERT和R-GCN的源代码漏洞多分类检测的方法
Bateman et al. The The Supervised Learning Workshop: A New, Interactive Approach to Understanding Supervised Learning Algorithms
CN116432184A (zh) 基于语义分析和双向编码表征的恶意软件检测方法
Gajowniczek et al. ImbTreeAUC: An R package for building classification trees using the area under the ROC curve (AUC) on imbalanced datasets
Czajkowski et al. Steering the interpretability of decision trees using lasso regression-an evolutionary perspective
Sun et al. Bayesian network structure learning with improved genetic algorithm
CN114528015A (zh) 二进制可执行文件同源分析方法、计算机设备及存储介质
Bonomo‐Braberman et al. Linear‐time algorithms for eliminating claws in graphs

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
CB03 Change of inventor or designer information
CB03 Change of inventor or designer information

Inventor after: Shi Zhiqiang

Inventor after: Liu Zhongjin

Inventor after: Chang Qing

Inventor after: Chen Yu

Inventor after: Sun Limin

Inventor after: Zhu Hongsong

Inventor after: Wang Mengtao

Inventor after: He Yueying

Inventor before: Shi Zhiqiang

Inventor before: Liu Zhongjin

Inventor before: Chang Qing

Inventor before: Chen Yu

Inventor before: Sun Limin

Inventor before: Zhu Hongsong

Inventor before: Wang Mengtao

TA01 Transfer of patent application right
TA01 Transfer of patent application right

Effective date of registration: 20170607

Address after: 100093 Beijing city Haidian District minzhuang Road No. 89

Applicant after: Institute of Information Engineering, Gas

Applicant after: State Computer Network and Information Safety Management Center

Address before: 100093 Beijing city Haidian District minzhuang Road No. 89

Applicant before: Institute of Information Engineering, Gas

GR01 Patent grant
GR01 Patent grant