CN113378165A - 一种基于Jaccard系数的恶意样本相似性判定方法 - Google Patents
一种基于Jaccard系数的恶意样本相似性判定方法 Download PDFInfo
- Publication number
- CN113378165A CN113378165A CN202110711130.6A CN202110711130A CN113378165A CN 113378165 A CN113378165 A CN 113378165A CN 202110711130 A CN202110711130 A CN 202110711130A CN 113378165 A CN113378165 A CN 113378165A
- Authority
- CN
- China
- Prior art keywords
- character string
- sample
- malicious
- vectors
- malicious sample
- 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
Links
Images
Classifications
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F21/00—Security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F21/50—Monitoring users, programs or devices to maintain the integrity of platforms, e.g. of processors, firmware or operating systems
- G06F21/55—Detecting local intrusion or implementing counter-measures
- G06F21/56—Computer malware detection or handling, e.g. anti-virus arrangements
- G06F21/562—Static detection
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F18/00—Pattern recognition
- G06F18/20—Analysing
- G06F18/22—Matching criteria, e.g. proximity measures
-
- G—PHYSICS
- G06—COMPUTING; CALCULATING OR COUNTING
- G06F—ELECTRIC DIGITAL DATA PROCESSING
- G06F2221/00—Indexing scheme relating to security arrangements for protecting computers, components thereof, programs or data against unauthorised activity
- G06F2221/03—Indexing scheme relating to G06F21/50, monitoring users, programs or devices to maintain the integrity of platforms
- G06F2221/033—Test or assess software
Landscapes
- Engineering & Computer Science (AREA)
- Theoretical Computer Science (AREA)
- Computer Security & Cryptography (AREA)
- General Engineering & Computer Science (AREA)
- Data Mining & Analysis (AREA)
- Physics & Mathematics (AREA)
- Software Systems (AREA)
- Computer Hardware Design (AREA)
- General Physics & Mathematics (AREA)
- Life Sciences & Earth Sciences (AREA)
- Bioinformatics & Computational Biology (AREA)
- Bioinformatics & Cheminformatics (AREA)
- Evolutionary Computation (AREA)
- Health & Medical Sciences (AREA)
- Evolutionary Biology (AREA)
- Artificial Intelligence (AREA)
- General Health & Medical Sciences (AREA)
- Virology (AREA)
- Computer Vision & Pattern Recognition (AREA)
- Information Retrieval, Db Structures And Fs Structures Therefor (AREA)
Abstract
本发明公开了一种基于Jaccard系数的恶意样本相似性判定方法,其具体包括:利用String命令对恶意样本Ⅰ和恶意样本Ⅱ分别进行解析并提取恶意样本字符串,将提取到的恶意样本字符串分别转化为样本字符串集合A和B;计算出样本字符串集合A和B之间的Jaccard系数;设定一个阈值,若计算得到的Jaccard系数值大于阈值,则判定恶意样本Ⅰ和恶意样本Ⅱ之间具有较强的相似性;对于具有较强的相似性的恶意样本Ⅰ和恶意样本Ⅱ,利用空间谱函数,找到恶意样本所在的字符串。本发明提供了一种新型的恶意样本相似性判定方法,无需进行恶意样本特征提取等复杂操作,可以提高恶意样本相似性判定的效率。
Description
技术领域
本发明属于网络安全技术领域,具体涉及一种基于Jaccard系数的恶意样本相似性判定方法。
背景技术
通常情况下,不同的计算机网络恶意样本之间一般具有不同的功能特点,其各自内部结构由所具有的功能特点决定,因此可以通过提取恶意样本自身所具有的特征完成对恶意样本之间相似性的判断。目前,针对判断恶意样本之间是否具有相似性的技术方案,主要以构建机器学习算法模型为主,通过提取恶意样本特征完成相关的检测判断。在利用机器学习算法检测模型的技术方案中,需要对每种恶意样本进行特征提取,经过预处理并转化为相应的特征向量值之后,将其输入到机器学习算法模型中,根据输出的准确率、精确率等指标,综合得出恶意样本之间是否具有相似性等结论。对于利用机器学习算法进行检测的技术方案,不仅需要对数据进行预处理,还需要不断地进行调参处理并尽可能地优化检测模型,实施过程较为复杂,无法迅速获得稳定、可靠的结果。
另外,不法分子为了防止自己制作得恶意代码被检测,会对恶意代码样本中一些常用的字符串打乱顺序,从而防止其被检测出,如将Symbol修改为lbsymo。在恶意样本分析过程中,经常会遇到一些毫无意义的连续的可显乱码字符串,进一步分析会发现该乱码也是恶意代码样本的一种变形。如何对乱序字符串的恶意样本进行检测和定位,也是目前迫切需要解决的问题。
发明内容
针对现有的基于机器学习算法的计算机网络恶意样本检测方法所存在的实施过程较为复杂,无法迅速获得稳定、可靠的结果的问题,同时为了实现乱序字符串的恶意样本定位,本发明公开了一种基于Jaccard系数的恶意样本相似性判定方法,该方法操作过程简单、易于实现,主要利用Jaccard系数原理对提取到的样本字符串集合进行同源分析比较,根据分析得到的样本字符串集合之间交集与并集的结果,计算出样本字符串集合之间的Jaccard系数。如果Jaccard系数越大,则代表两个恶意样本之间具有较强的相似性。在此基础上,对于乱序字符串的恶意样本的检测和定义,本发明从样本代码的统计特性出发,利用两个恶意样本字符串序列构建其空间谱,通过空间谱估计方法对乱序字符串的恶意样本进行定位。
Jaccard系数用于比较有限样本集之间的相似性与差异性。其中,Jaccard系数值越大,其相应的样本相似度越高。在给定两个集合A和B中,Jaccard系数即为A与B交集的大小与A与B并集的大小的比值,Jaccard系数的计算公式为:
其中,J(A,B)∈[0,1],当集合A,B都为空时,J(A,B)定义为1。
本发明公开了一种基于Jaccard系数的恶意样本相似性判定方法,该方法无需直接提取恶意样本相关特征及其它属性特点,只需将恶意样本内容通过String命令解析成样本字符串集合后,利用Jaccard系数原理分别完成对样本字符串集合之间Jaccard系数的计算,将计算结果取平均值后,完成最终的相似性判定并逆向推导出恶意样本之间的相似性。
本发明公开了一种基于Jaccard系数的恶意样本相似性判定方法,其具体包括:
S1,利用String命令对恶意样本Ⅰ和恶意样本Ⅱ分别进行解析并提取恶意样本字符串,将提取到的恶意样本字符串分别转化为样本字符串集合A和B;
S2,计算出样本字符串集合A和B之间的Jaccard系数;Jaccard系数用于比较有限样本集之间的相似性与差异性,字符串集合A和字符串集合B之间的Jaccard系数的计算公式为:
其中,|·|表示计算集合中元素的个数,J(A,B)∈[0,1],当集合A,B都为空时,定义J(A,B)取值为1。
S3,依据步骤S2所计算得到的Jaccard系数值,设定一个判定阈值μ,若计算得到的Jaccard系数值大于μ,则判定恶意样本Ⅰ和恶意样本Ⅱ之间具有较强的相似性;若计算得到的Jaccard系数值小于μ,则判定两个恶意样本之间没有较强的相似性。
S4,对于具有较强的相似性的恶意样本Ⅰ和恶意样本Ⅱ,将其对应的字符串集合A和字符串集合B中的每个字符串分别转化为数字,如可使用atof函数将字符串转换为双精度浮点型数字,得到两个字符串数值向量a和b,将两个字符串数值向量a和b分别均分为N段字符串子向量,即得到:
a=[a1,a2,…,aN],b=[b1,b2,…,bN],
以字符串子向量为基本元素,计算两个字符串数值向量a和b的互相关矩阵R,即得到:
R=aTb,
其中,互相关矩阵R的第i行、第j列的元素rij=aibj T,ai表示字符串数值向量a的第i个字符串子向量,i=1,2,…,N,bj表示字符串数值向量b的第j个字符串子向量,j=1,2,…,N。对互相关矩阵R进行特征分解,得到N个特征向量和特征值,根据特征值大小对特征向量进行筛选,例如,筛选出接近于1的特征值所对应的特征向量,或设定一个阈值μ0,筛选出大于μ0的特征值所对应的特征向量,阈值μ0大于0.5,筛选出的M个特征向量所构成的特征矩阵E记为:
E=[v1,v2,…,vM],
其中,vk表示第k个特征向量,k=1,2,…,M,特征向量均为列向量;利用字符串子向量构建空间谱函数P(),字符串数值向量a的第i个字符串子向量和字符串数值向量b的第j个字符串子向量所对应的空间谱函数P(i,j)的计算公式为:
P(i,j)=aiEEHbj T,
对字符串集合A和字符串集合B中的所有字符串子向量的两两组合,计其对应的空间谱函数,找到空间谱函数取值最大时对应的字符串子向量的序号组合,确定该序号组合在字符串集合A和字符串集合B中对应的字符串子向量,再将该字符串子向量对应到字符串集合A和字符串集合B中相应的字符串,即为恶意样本所在的字符串。
与现有技术相比,本发明的有益效果在于:本发明提供一种新型的恶意样本相似性判定方法,无需进行恶意样本特征提取等复杂操作,可以提高恶意样本相似性判定的效率。
附图说明
图1为恶意样本字符串集合构建流程图。
具体实施方式
为了更好的了解本发明内容,这里给出一个实施例。图1为恶意样本字符串集合构建流程图。
本实例以选取两个恶意样本进行相似性判定为例进行说明,具体的实施过程如下:
本发明公开了一种基于Jaccard系数的恶意样本相似性判定方法,其具体包括:
S1,利用String命令对恶意样本Ⅰ和恶意样本Ⅱ分别进行解析并提取恶意样本字符串,将提取到的恶意样本字符串分别转化为样本字符串集合A和B;
步骤S1具体包括:
S11,利用String命令对恶意样本Ⅰ进行解析并提取出恶意样本字符串,建立对应的样本字符串集合A,将解析出来的恶意样本字符串逐个添加到样本字符串集合A中;
S12,利用String命令对恶意样本Ⅱ进行解析并提取出恶意样本字符串,建立对应的样本字符串集合B,将解析出来的恶意样本字符串逐个添加到样本字符串集合B中;
S2,计算出样本字符串集合A和B之间的Jaccard系数;Jaccard系数用于比较有限样本集之间的相似性与差异性,字符串集合A和字符串集合B之间的Jaccard系数的计算公式为:
其中,|·|表示计算集合中元素的个数,J(A,B)∈[0,1],当集合A,B都为空时,定义J(A,B)取值为1。
S3,依据步骤S2所计算得到的Jaccard系数值,设定一个判定阈值μ,若计算得到的Jaccard系数值大于μ,则判定恶意样本Ⅰ和恶意样本Ⅱ之间具有较强的相似性;若计算得到的Jaccard系数值小于μ,则判定两个恶意样本之间没有较强的相似性。
S4,对于具有较强的相似性的恶意样本Ⅰ和恶意样本Ⅱ,将其对应的字符串集合A和字符串集合B中的每个字符串分别转化为数字,如可使用atof函数将字符串转换为双精度浮点型数字,得到两个字符串数值向量a和b,将两个字符串数值向量a和b分别均分为N段字符串子向量,即得到:
a=[a1,a2,…,aN],b=[b1,b2,…,bN],
以字符串子向量为基本元素,计算两个字符串数值向量a和b的互相关矩阵R,即得到:
R=aTb,
其中,互相关矩阵R的第i行第j列的元素rij=aibj T,ai表示字符串数值向量a的第i个字符串子向量,i=1,2,…,N,bj表示字符串数值向量b的第j个字符串子向量,j=1,2,…,N。对互相关矩阵R进行特征分解,得到N个特征向量和特征值,根据特征值大小对特征向量进行筛选,例如,筛选出接近于1的特征值所对应的特征向量,或设定一个阈值μ0,筛选出大于μ0的特征值所对应的特征向量,阈值μ0大于0.5,筛选出的特征向量所构成的特征矩阵E记为:
E=[v1,v2,…,vM],
其中,vk表示第k个特征向量,k=1,2,…,M,特征向量均为列向量;利用字符串子向量构建空间谱函数P(),字符串数值向量a的第i个字符串子向量和字符串数值向量b的第j个字符串子向量所对应的空间谱函数P(i,j)的计算公式为:
P(i,j)=aiEEHbj T,
对字符串集合A和字符串集合B中的所有字符串子向量的两两组合,计其对应的空间谱函数,找到空间谱函数取值最大时对应的字符串子向量的序号组合,确定该序号组合在字符串集合A和字符串集合B中对应的字符串子向量,再将该字符串子向量对应到字符串集合A和字符串集合B中相应的字符串,即为恶意样本所在的字符串。
以上所述仅为本申请的实施例而已,并不用于限制本申请。对于本领域技术人员来说,本申请可以有各种更改和变化。凡在本申请的精神和原理之内所作的任何修改、等同替换、改进等,均应包含在本申请的权利要求范围之内。
Claims (3)
1.一种基于Jaccard系数的恶意样本相似性判定方法,其特征在于,其具体包括:
S1,利用String命令对恶意样本Ⅰ和恶意样本Ⅱ分别进行解析并提取恶意样本字符串,将提取到的恶意样本字符串分别转化为样本字符串集合A和B;
S2,计算出样本字符串集合A和B之间的Jaccard系数;Jaccard系数用于比较有限样本集之间的相似性与差异性,字符串集合A和字符串集合B之间的Jaccard系数的计算公式为:
其中,|·|表示计算集合中元素的个数,J(A,B)∈[0,1],当集合A,B都为空时,定义J(A,B)取值为1;
S3,依据步骤S2所计算得到的Jaccard系数值,设定一个判定阈值μ,若计算得到的Jaccard系数值大于μ,则判定恶意样本Ⅰ和恶意样本Ⅱ之间具有较强的相似性;若计算得到的Jaccard系数值小于μ,则判定两个恶意样本之间没有较强的相似性;
S4,对于具有较强的相似性的恶意样本Ⅰ和恶意样本Ⅱ,将其对应的字符串集合A和字符串集合B中的每个字符串分别转化为数字,得到两个字符串数值向量a和b,将两个字符串数值向量a和b分别均分为N段字符串子向量,即得到:
a=[a1,a2,…,aN],b=[b1,b2,…,bN],
以字符串子向量为基本元素,计算两个字符串数值向量a和b的互相关矩阵R,即得到:
R=aTb,
其中,互相关矩阵R的第i行、第j列的元素rij=aibj T,ai表示字符串数值向量a的第i个字符串子向量,i=1,2,…,N,bj表示字符串数值向量b的第j个字符串子向量,j=1,2,…,N;对互相关矩阵R进行特征分解,得到N个特征向量和特征值,根据特征值大小对特征向量进行筛选,筛选出的M个特征向量所构成的特征矩阵E记为:
E=[v1,v2,…,vM],
其中,vk表示第k个特征向量,k=1,2,…,M,特征向量均为列向量;利用字符串子向量构建空间谱函数P(),字符串数值向量a的第i个字符串子向量和字符串数值向量b的第j个字符串子向量所对应的空间谱函数P(i,j)的计算公式为:
P(i,j)=aiEEHbj T,
对字符串集合A和字符串集合B中的所有字符串子向量的两两组合,计其对应的空间谱函数,找到空间谱函数取值最大时对应的字符串子向量的序号组合,确定该序号组合在字符串集合A和字符串集合B中对应的字符串子向量,再将该字符串子向量对应到字符串集合A和字符串集合B中相应的字符串,即为恶意样本所在的字符串。
2.如权利要求1所述的基于Jaccard系数的恶意样本相似性判定方法,其特征在于,所述的步骤S1具体包括:
S11,利用String命令对恶意样本Ⅰ进行解析并提取出恶意样本字符串,建立对应的样本字符串集合A,将解析出来的恶意样本字符串逐个添加到样本字符串集合A中;
S12,利用String命令对恶意样本Ⅱ进行解析并提取出恶意样本字符串,建立对应的样本字符串集合B,将解析出来的恶意样本字符串逐个添加到样本字符串集合B中。
3.如权利要求1所述的基于Jaccard系数的恶意样本相似性判定方法,其特征在于,所述的根据特征值大小对特征向量进行筛选,其具体是,筛选出接近于1的特征值所对应的特征向量,或设定一个阈值μ0,筛选出大于μ0的特征值所对应的特征向量,阈值μ0大于0.5。
Priority Applications (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110711130.6A CN113378165B (zh) | 2021-06-25 | 2021-06-25 | 一种基于Jaccard系数的恶意样本相似性判定方法 |
Applications Claiming Priority (1)
Application Number | Priority Date | Filing Date | Title |
---|---|---|---|
CN202110711130.6A CN113378165B (zh) | 2021-06-25 | 2021-06-25 | 一种基于Jaccard系数的恶意样本相似性判定方法 |
Publications (2)
Publication Number | Publication Date |
---|---|
CN113378165A true CN113378165A (zh) | 2021-09-10 |
CN113378165B CN113378165B (zh) | 2021-11-05 |
Family
ID=77579101
Family Applications (1)
Application Number | Title | Priority Date | Filing Date |
---|---|---|---|
CN202110711130.6A Active CN113378165B (zh) | 2021-06-25 | 2021-06-25 | 一种基于Jaccard系数的恶意样本相似性判定方法 |
Country Status (1)
Country | Link |
---|---|
CN (1) | CN113378165B (zh) |
Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
CN105245495A (zh) * | 2015-08-27 | 2016-01-13 | 哈尔滨工程大学 | 一种基于相似性匹配恶意shellcode快速检测方法 |
US20160269424A1 (en) * | 2015-03-13 | 2016-09-15 | Microsoft Technology Licensing, Llc | Large Scale Malicious Process Detection |
CN106709345A (zh) * | 2015-11-17 | 2017-05-24 | 武汉安天信息技术有限责任公司 | 基于深度学习方法推断恶意代码规则的方法、***及设备 |
CN107679403A (zh) * | 2017-10-11 | 2018-02-09 | 北京理工大学 | 一种基于序列比对算法的勒索软件变种检测方法 |
CN107908963A (zh) * | 2018-01-08 | 2018-04-13 | 北京工业大学 | 一种自动化检测恶意代码核心特征方法 |
US10437996B1 (en) * | 2017-07-24 | 2019-10-08 | EMC IP Holding Company LLC | Classifying software modules utilizing similarity-based queries |
CN110610084A (zh) * | 2018-06-15 | 2019-12-24 | 武汉安天信息技术有限责任公司 | 基于Dex文件的样本恶意性判定方法及相关装置 |
CN112948828A (zh) * | 2021-01-25 | 2021-06-11 | 厦门服云信息科技有限公司 | 一种二进制程序恶意代码检测方法、终端设备及存储介质 |
-
2021
- 2021-06-25 CN CN202110711130.6A patent/CN113378165B/zh active Active
Patent Citations (8)
Publication number | Priority date | Publication date | Assignee | Title |
---|---|---|---|---|
US20160269424A1 (en) * | 2015-03-13 | 2016-09-15 | Microsoft Technology Licensing, Llc | Large Scale Malicious Process Detection |
CN105245495A (zh) * | 2015-08-27 | 2016-01-13 | 哈尔滨工程大学 | 一种基于相似性匹配恶意shellcode快速检测方法 |
CN106709345A (zh) * | 2015-11-17 | 2017-05-24 | 武汉安天信息技术有限责任公司 | 基于深度学习方法推断恶意代码规则的方法、***及设备 |
US10437996B1 (en) * | 2017-07-24 | 2019-10-08 | EMC IP Holding Company LLC | Classifying software modules utilizing similarity-based queries |
CN107679403A (zh) * | 2017-10-11 | 2018-02-09 | 北京理工大学 | 一种基于序列比对算法的勒索软件变种检测方法 |
CN107908963A (zh) * | 2018-01-08 | 2018-04-13 | 北京工业大学 | 一种自动化检测恶意代码核心特征方法 |
CN110610084A (zh) * | 2018-06-15 | 2019-12-24 | 武汉安天信息技术有限责任公司 | 基于Dex文件的样本恶意性判定方法及相关装置 |
CN112948828A (zh) * | 2021-01-25 | 2021-06-11 | 厦门服云信息科技有限公司 | 一种二进制程序恶意代码检测方法、终端设备及存储介质 |
Non-Patent Citations (3)
Title |
---|
李莹珠: "基于云计算的恶意代码检测技术研究", 《中国优秀博硕士学位论文全文数据库(硕士)》 * |
郭宏宇,冷冰,邓永晖: "基于改进型循环神经网络的恶意代码分类检测", 《信息技术》 * |
霍跃: "基于函数相似度的恶意软件研究", 《中国优秀博硕学位论文全文数据库(硕士) 信息科技辑》 * |
Also Published As
Publication number | Publication date |
---|---|
CN113378165B (zh) | 2021-11-05 |
Similar Documents
Publication | Publication Date | Title |
---|---|---|
CN110287983B (zh) | 基于最大相关熵深度神经网络单分类器异常检测方法 | |
Quack et al. | Efficient mining of frequent and distinctive feature configurations | |
CN111027069B (zh) | 恶意软件家族检测方法、存储介质和计算设备 | |
CN116523320B (zh) | 基于互联网大数据的知识产权风险智能分析方法 | |
Sun et al. | Fast anomaly detection in multiple multi-dimensional data streams | |
CN111368920A (zh) | 基于量子孪生神经网络的二分类方法及其人脸识别方法 | |
KR20190072652A (ko) | 정보 처리 장치 및 정보 처리 방법 | |
CN109190698B (zh) | 一种网络数字虚拟资产的分类识别***及方法 | |
CN110659682A (zh) | 一种基于MCWD-KSMOTE-AdaBoost-DenseNet算法的数据分类方法 | |
CN113516228A (zh) | 一种基于深度神经网络的网络异常检测方法 | |
Juvonen et al. | Adaptive framework for network traffic classification using dimensionality reduction and clustering | |
CN116204831A (zh) | 一种基于神经网络的道地性分析方法 | |
CN113378165B (zh) | 一种基于Jaccard系数的恶意样本相似性判定方法 | |
CN111105041B (zh) | 一种用于智慧数据碰撞的机器学习方法及装置 | |
CN111797395A (zh) | 恶意代码可视化及变种检测方法、装置、设备及存储介质 | |
CN110990383A (zh) | 一种基于工业大数据集的相似度计算方法 | |
CN111797997A (zh) | 网络入侵检测方法、模型构建方法、装置及电子设备 | |
CN111426657A (zh) | 一种溶解性有机物三维荧光谱图的识别比对方法 | |
CN114141316A (zh) | 一种基于谱图分析的有机物生物毒性预测方法及*** | |
CN110135155B (zh) | 一种基于模糊K近邻的Windows恶意软件识别方法 | |
CN112163217A (zh) | 恶意软件变种识别方法、装置、设备及计算机存储介质 | |
KR101907443B1 (ko) | 구성 요소 기반 악성 파일 유사성 분석 장치 및 방법 | |
CN117746997B (zh) | 一种基于多模态先验信息的顺式调控模体识别方法 | |
CN113688229B (zh) | 一种文本推荐方法、***、存储介质和设备 | |
Greau-Hamard et al. | Performance analysis and comparison of sequence identification algorithms in iot context |
Legal Events
Date | Code | Title | Description |
---|---|---|---|
PB01 | Publication | ||
PB01 | Publication | ||
SE01 | Entry into force of request for substantive examination | ||
SE01 | Entry into force of request for substantive examination | ||
GR01 | Patent grant | ||
GR01 | Patent grant |