CN101604365B - 确定计算机恶意程序样本家族数的系统和方法 - Google Patents

确定计算机恶意程序样本家族数的系统和方法 Download PDF

Info

Publication number
CN101604365B
CN101604365B CN2009100409987A CN200910040998A CN101604365B CN 101604365 B CN101604365 B CN 101604365B CN 2009100409987 A CN2009100409987 A CN 2009100409987A CN 200910040998 A CN200910040998 A CN 200910040998A CN 101604365 B CN101604365 B CN 101604365B
Authority
CN
China
Prior art keywords
sample
rogue program
family
distance
formula
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.)
Active
Application number
CN2009100409987A
Other languages
English (en)
Other versions
CN101604365A (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.)
Beijing Kingsoft Internet Security Software Co Ltd
Original Assignee
Zhuhai Kingsoft Software Co Ltd
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 Zhuhai Kingsoft Software Co Ltd filed Critical Zhuhai Kingsoft Software Co Ltd
Priority to CN2009100409987A priority Critical patent/CN101604365B/zh
Publication of CN101604365A publication Critical patent/CN101604365A/zh
Application granted granted Critical
Publication of CN101604365B publication Critical patent/CN101604365B/zh
Active legal-status Critical Current
Anticipated expiration legal-status Critical

Links

Images

Landscapes

  • Devices For Executing Special Programs (AREA)

Abstract

本发明涉及确定计算机恶意程序样本家族数的系统和方法。确定计算机恶意程序样本家族数的系统包括:恶意程序样本特征提取模块,其提取恶意程序样本的特征并计算每两个恶意程序样本间的距离,得到距离矩阵D。恶意程序样本距离计算模块,其计算恶意程序样本间的距离。家族间距离计算模块,其计算两个家族之间的距离。恶意程序样本聚类模块,其逐层对恶意程序样本进行聚类,并计算每层聚类结果的VNFS;VNFS计算模块,其计算每层分家族结果的VNFS。上述系统可通过比较各个层次的VNFS值,找到VNFS值最小层的分家族结果,即可得到最优家族个数。

Description

确定计算机恶意程序样本家族数的系统和方法
技术领域
本发明涉及计算机反恶意程序类软件领域,尤其涉及一种确定计算机恶意程序样本家族数的系统和方法。
背景技术
目前,计算机反恶意程序软件对恶意程序文件处理的基本原理是:首先对可疑文件进行鉴定,判定其属于正常程序或者恶意程序;对确认为恶意程序的样本文件分家族,然后分析同家族恶意程序的特性,提取其“通杀”特征;剩余无法提取“通杀”特征的样本提取“自动”特征,生成相应的恶意程序特征库。根据所生成的恶意程序特征库,计算机反恶意程序软件扫描客户端计算机中的文件,并判断每个文件是否与特征库中的恶意程序特征相匹配,如果匹配则为恶意程序。这里,“同家族恶意程序”指传播途径、功能、内容或行为相同或相似的恶意程序集合;“通杀”特征指能够匹配同家族所有恶意程序的特征;“自动”特征指匹配单一恶意程序的二进制特征。通常,一个“通杀”特征能查杀的恶意程序要远高于一个“自动”特征所能匹配的恶意程序。
随着计算机技术的发展和软件的多样性,恶意代码的数量急剧增长,恶意代码的种类也呈现多样化发展的态势。但是,这些新出现的恶意代码并不是完全没有共性:有部分恶意程序是在原有代码基础上修改生成的,病毒作者根据原有恶意程序的源代码,为了绕过反恶意程序软件的查杀(即“免杀”),在其基础上做出了一定的修改;而且这些新生成的恶意程序之间也是具有共性的。如果能将恶意程序快速、准确地进行分类(分家族),将极大地提高计算机反恶意程序软件处理这些新恶意程序的效率,从而缩短对新恶意程序的处理时间,同时有利于提高每个特征的查杀能力,从而缩小恶意特征库的大小。
对于计算机反恶意程序软件厂商所收集的恶意程序样本集中到底有多少个家族,不同的反恶意程序软件给出的结果各不相同,要对恶意程序正确分类和处理,首先必须正确确定恶意程序家族数。因此,恶意程序家族数的确定成为计算机反恶意程序软件在计算机恶意程序处理领域中的重要内容。
近年来,数据挖掘技术的不断发展在一定程度上解决了人们处理海量数据的难题。数据挖掘就是从大量、不完全、有噪声、模糊和随机的应用数据中抽取隐含在其中人们事先不知道,但又是潜在有价值的信息和知识(模型或规则)的过程。聚类算法是数据挖掘领域研究最广泛的问题之一。聚类分析是把相似的目标归类的过程,其目的在于把目标对象划分为一系列有意义的组(或称类),使得每个组中的目标尽量“相似”或“接近”,而不同组的目标尽可能“相异”或“远离”。把数据挖掘技术中的聚类算法应用于计算机反恶意程序类软件中,可以把具有共性的同家族恶意程序分成一类,同时把差异较大的恶意程序区分开来。但对于给定的恶意样本集,到底该分成多少家族是聚类分析的关键问题之一。
发明内容
针对该问题,本发明提出基于数据挖掘技术的凝聚型层次聚类方法的VNFS聚类有效性指标来自动确定恶意程序家族数,同时最大可能地将同家族的恶意程序分成一个家族,而将差异较大的恶意程序区分开来。本发明的第一目的是提出一种确定计算机恶意程序样本家族数的系统。
本发明的第二目的是提供一种使用上述系统确定计算机恶意程序样本家族数的方法。
为了实现上述第一目的,本发明采用如下技术方案:
确定计算机恶意程序样本家族数的系统,其包括:
恶意程序样本特征提取模块,其提取恶意程序样本的特征并通过下述恶意程序样本距离计算模块计算每两个恶意程序样本间的距离,得到距离矩阵D。
恶意程序样本距离计算模块,其对不同的恶意程序样本特征采用不同的计算公式,计算恶意程序样本间的距离;
家族间距离计算模块,其计算两个家族之间的距离,计算公式为:
D KL = 1 N K N L Σ i ∈ C K Σ j ∈ C L d ( X i , Y j ) 公式(3);
在公式(3)中,DKL表示家族K与家族L间的距离,d(Xi,Yj)表示分别位于家族K与家族L的两个恶意程序Xi和Yj特征之间的距离,Xi和Yj分别表示第L族中的第i个样本和第K族中的第j个样本,CK表示家族K,NK表示家族K中恶意程序样本的个数,CL表示家族L,NL表示家族L中恶意程序样本的个数;
恶意程序样本聚类模块,逐层对恶意程序样本进行聚类,并根据下述VNFS计算模块计算每层聚类结果的聚类有效性指标VNFS;VNFS计算模块,其计算每层分家族结果的VNFS,计算公式为:
V NFS = scat ( c ) - sep ( c ) = Σ i = 1 c Σ k = 1 n i | | x ik - v i | | 2 - Σ i = 1 c | | v i - v ‾ | | 2 * ( n i - 1 ) 公式(4);
在公式(4)中,c代表家族数,ni是家族i包含的样本数,xik是家族i的第k个样本,是家族i的中心点,vi表示与该家族中所有样本点距离和最小的样本点,vi的计算公式为:
Figure GSB00000438429600041
公式(5);
在公式(5)中,xik表示家族i中的第k个样本,xij表示家族i中的第j个样本,(xik-xij)表示样本xik与样本xij的距离,nci表示家族i中的样本总数;
Figure GSB00000438429600042
是整个数据集的全局中心点,
Figure GSB00000438429600043
表示与全局所有样本点距离和最小的样本点,
Figure GSB00000438429600044
的计算公式为:
Figure GSB00000438429600045
公式(6);
在公式(6)中,xk表示全局的第k个样本,xj表示全局的第j个样本,n表示全局样本的总数。
为了实现上述第二目的,本发明采用如下技术方案:
使用上述系统确定计算机恶意程序样本家族数的方法,其包括如下步骤:
第一步、恶意程序样本数据处理:
根据恶意程序样本特征提取模块提取恶意程序样本的特征,初始时将每个恶意程序样本作为一个家族,并由恶意程序样本距离计算模块采用合适的距离度量方法来计算每两个恶意程序样本间的距离,得到距离矩阵D,矩阵D中的每个元素代表两两家族之间的距离;
第二步、对恶意程序样本进行聚类,并计算各个聚类结果的VNFS
当家族数大于用户设定值u时,循环以下操作:
①查找距离矩阵D,合并距离最近的两个家族C1和C2,得到包含|C1|+|C2|个样本的新家族C;
②家族间距离计算模块根据公式(3)计算新家族C到其他家族的距离;
③更新距离矩阵D,删除与C1和C2有关的距离,添加新家族C到其他家族的距离。
④VNFS计算模块根据公式(4)、(5)、(6)计算当前层分家族结果的VNFS
第三步、通过比较各个层次的VNFS值,找到VNFS值最小层的分家族结果,即可得到最优家族个数。
聚类是将物理或抽象对象的集合分成相似的对象类的过程。簇是数据对象的集合,这些对象与同一个簇中的对象彼此相似,而与其他簇中的对象相异。本发明中,恶意程序的一个“家族”可以被看成是一个“簇”。本发明中对样本对象的聚类过程,即对恶意程序的分家族过程采用的基本方法为:将每个恶意程序样本各自作为一个原子簇,然后对这些原子簇逐层进行聚合,直至满足一定的终止条件(用户设定的最小家族数u或者1)。该方法称为“凝聚型层次聚类”方法。而如何选择一个最佳的聚类数目,即对于给定的恶意样本集,到底该分成多少类本发明中采用聚类有效性指标VNFS进行评价,并最终得到最佳的分家族数量。
附图说明
图1为本发明确定计算机恶意程序样本家族数方法的流程简图。
具体实施方式
确定计算机恶意程序样本家族数的系统,其包括:
恶意程序样本特征提取模块,其提取恶意程序样本的特征并通过下述恶意程序样本距离计算模块计算每两个恶意程序样本间的距离,得到距离矩阵D。恶意程序样本的特征可以采用多种表征方式,如:基于N-Grams的字节内容,Windows API序列,指令频度等。
a)基于N-Grams的字节内容:N-Grams指的是可执行文件中的n个连续字节子的序列。例如,串“text”可以由以下N-Grams组成:
bi-grams:_T,TE,EX,XT,T_
tri-grams:_TE,TEX,EXT,XT_,T__
quad-grams:_TEX,TEXT,EXT_,XT__,T___
提取完N-Grams后,统计每个N-Grams出现的频度,并以此作为该恶意程序样本的特征表征。
b)Windows API序列:PE文件是微软Windows操作系统上的程序文件。Windows API序列是以PE文件对Win API函数调用的静态分析为基础,对样本提取其所调用的Win API函数序列作为特征。
c)指令频度:将恶意程序样本反汇编,过滤可识别的库代码,然后提取样本的汇编指令,统计每个指令出现的频度,构造指令频度向量来表征恶意程序样本。
除了适用于一般的恶意程序样本集,也适用于复杂的恶意程序样本集:
家族大小不一致:在一个数据集里不同家族包含的样本数差异较大,例如,家族Trojan.Win32.Genetik包含300样本,而家族Win32.Hack.PcClient仅包含40个样本。
形状不规则:数据集的空间分布可能构成各种形状。对于规则的球形,椭球形,大部分聚类有效性指标都能很好地描述聚类,正确确定家族数;但当聚类的形状不规则,很多聚类指标就失效了。本发明提出的VNFS聚类有效性指标能很好处理形状不规则的情况。
家族密度差异大:不同家族的样本在空间分布的密度不均匀的情况。
恶意程序样本距离计算模块,其对不同的恶意程序样本特征采用不同的计算公式,计算恶意程序样本间的距离。针对指令频度和N-Grams两种特征表征方式采用cosine距离度量;针对API序列特征表征方式采用Jaccard距离度量,来计算每两个恶意程序样本间的距离,得到距离矩阵D。给定N个恶意程序样本,其距离矩阵D就是一个非负实数作为元素的N×N(N为恶意程序样本总数)的对称矩阵,矩阵中的每个元素代表两两家族之间的距离。
●两个样本特征xi和xj的Cosine距离定义如下:
S ij = x i T x j | x i | | x j | 公式(1)
其中,分子表示两个样本特征向量的内积,分母表示两个样本特征向量长度的乘积。在公式(1)中,
Figure GSB00000438429600072
表示向量xi的转置,xi和xj分别表示第i个样本的特征向量和第j个样本的特征向量,Sij表示两个样本间的距离。例如,向量xi=[1,0,0,1],向量xj=[1,1,0,1],其Cosine距离为:
( 1 * 1 + 0 * 1 + 0 * 0 + 1 * 1 ) / ( ( 1 2 + 0 2 + 0 2 + 1 2 ) * 1 2 + 1 2 + 0 2 + 1 2 ) ) = 2 / ( 2 * 3 ) = 0.82 .
●两个样本特征xi和xj的Jaccard距离定义如下:
Jaccard = M 01 + M 10 M 01 + M 10 + M 11 公式(2)
其中,分子表示两个样本特征相异部分的长度,分母表示两个样本特征的总长度。在公式(2)中,M01表示向量xi维度为0而向量xj维度为1的维度和,M10向量xi维度为1而向量xj维度为0的维度和,M11表示向量xi和向量xj维度均为1的维度和,Jaccard表示两个样本间的距离。例如,向量xi=[1,0,0,1],向量xj=[1,1,0,1],其Jaccard距离为:(1+0)/(1+0+2)=0.33。
家族间距离计算模块,其计算两个家族之间的距离,计算公式为:
D KL = 1 N K N L Σ i ∈ C K Σ j ∈ C L d ( X i , Y j ) 公式(3);
在公式(3)中,DKL表示家族K与家族L间的距离,d(Xi,Yj)表示分别位于家族K与家族L的两个恶意程序Xi和Yj特征之间的距离,Xi和Yj分别表示家族L中的第i个样本和家族K中的第j个样本,CK表示家族K,NK表示家族K中恶意程序样本的个数,CL表示家族L,NL表示家族L中恶意程序样本的个数。
恶意程序样本聚类模块,采用逐层对恶意程序样本进行聚类,并根据VNFS计算模块计算每层聚类结果的VNFS
VNFS计算模块,其计算每层分家族结果的VNFS,计算公式为:
V NFS = scat ( c ) - sep ( c ) = Σ i = 1 c Σ k = 1 n i | | x ik - v i | | 2 - Σ i = 1 c | | v i - v ‾ | | 2 * ( n i - 1 ) 公式(4);
在公式(4)中,c代表家族数,ni是家族i包含的样本数,xik是家族i的第k个样本,vi是家族i的中心点,vi的计算公式为:
公式(5);
在公式(5)中,xik表示家族i中的第k个样本,xij表示家族i中的第j个样本,(xik-xij)表示样本xik与样本xij的距离,nci表示家族i中的样本总数;公式(5)的含义是,家族i的中心点vi是指距离家族内所有样本点的距离之和最小的样本点。
Figure GSB00000438429600091
是整个数据集的全局中心点,的计算公式为:
Figure GSB00000438429600093
公式(6);
在公式(6)中,xk表示全局的第k个样本,xj表示全局的第j个样本,n表示全局样本的总数。公式(6)的含义是,整个数据集的全局中心点
Figure GSB00000438429600094
是指距离全局所有样本点的距离之和最小的样本。
参见图1,为本发明方法的流程图,本发明计算机恶意程序样本家族数的方法具体包括如下步骤:
第一步、恶意程序样本数据处理:
根据恶意程序样本特征提取模块提取恶意程序样本的特征,初始时将每个恶意程序样本作为一个家族,并由恶意程序样本距离计算模块采用合适的距离度量方法来计算每两个恶意程序样本间的距离,得到距离矩阵D,矩阵D中的每个元素代表两两家族之间的距离(在初始时,矩阵D中的每个元素代表两两样本之间的距离)。本发明中根据不同的特征表征采用不同的聚类度量方法。针对指令频度和N-Grams采用cosine距离度量;针对API序列采用Jaccard距离度量,来计算每两个恶意程序样本间的距离,得到距离矩阵D。cosine距离度量公式为上述公式(1),Jaccard距离度量公式为上述公式(2)。
第二步、采用“凝聚型层次聚类”构造层次树对恶意程序样本进行聚类,并计算各层聚类结果的聚类有效性指标VNFS
当家族数大于用户设定值u(u大于或等于1,如果用户未设定该值u,则u值取1)时,循环以下操作:
①查找距离矩阵D,合并距离最近的两个家族C1和C2,得到包含|C1|+|C2|个样本的新家族C;
②家族间距离计算模块根据公式(3)计算新家族C到其他家族的距离;
③更新距离矩阵D,删除与C1和C2有关的距离,添加新家族C到其他家族的距离;
④VNFS计算模块根据公式(4)、(5)、(6)计算当前层分家族结果的VNFS
第三步、通过比较各个层次的VNFS值,找到VNFS值最小层的分家族结果,即可得到最优家族个数。
第四步、按照最优的归类结果,对每个样本标定家族编号。
上述第二步的过程实际是逐层合并距离最小的两个家族,直到所有的样本都在一个家族中,或者某个终止条件(达到用户设定的最小分家族数u)被满足,得到一棵或几棵树状图。对于每一层的合并结果,本发明采用聚类有效性指标VNFS来确定最佳恶意程序家族数,从而确定最佳分解点。随着新生成家族的逐层合并,应该合并成多少个家族是最合理的,需要有一个指标来衡量。这个指标应该使得在同一个家族的恶意程序具有高度的相似性,而不在同一个家族的恶意程序具有较大的差异性。这就要求家族内部尽可能的紧凑,而家族与家族之间的距离尽可能的远离。本发明中的VNFS聚类有效性指标正是在类内紧凑度与类间分离度之间找到一个平衡点,从而使聚类效果最佳。在上述公式(6)中,函数scat(c)用来衡量类内的紧凑度,值越小越紧凑。函数sep(c)用来衡量类间的分离度,值越大,分离得越好。本发明中聚类有效性指标VNFS创新之一是采用距离该家族中其它点距离和最小的点作为该家族的中心点,使之能很好的处理形状不规则的样本集;该指标的另一创新之处在于对sep(c)函数的定义,弥补了“紧凑度”和“分离度”度量差别上的缺陷。sep(c)函数必须或尽可能的做到对各种不同分类法,家族的不同大小不敏感,也就是说要归一到统一的共性上。很容易看到随着层次聚类算法往上构树过程的进行,家族内紧凑度越来越差,scat(c)的值从0开始逐渐递增。与传统指标的sep(c)不同,VNFS的sep(c)在初始时为0,然后迅速递增,达到一个峰值,再逐渐减小。对于家族和家族之间的距离,sep(c)比scat(c)更敏感,当合并两个不该合并的家族时,VNFS的值就会有重大的改变。因此,VNFS能在家族内紧凑度与家族间分离度之间找一个平衡点,从而获得最佳聚类效果。
以上实施例描述仅用以说明而非限制本发明的技术方案。不脱离本发明精神和范围的任何修改或局部替换,应涵盖在本发明的权利要求范围当中。

Claims (8)

1.确定计算机恶意程序样本家族数的系统,
其特征在于,包括:
恶意程序样本特征提取模块,其提取恶意程序样本的特征并通过下述恶意程序样本距离计算模块计算每两个恶意程序样本间的距离,得到距离矩阵D;
恶意程序样本距离计算模块,其对不同的恶意程序样本特征采用不同的计算公式,计算恶意程序样本间的距离;
家族间距离计算模块,其计算两个家族之间的距离,计算公式为:
D KL = 1 N K N L Σ i ∈ C K Σ j ∈ C L d ( X i , Y j ) 公式(3);
在公式(3)中,DKL表示家族K与家族L间的距离,d(Xi,Yj)表示分别位于家族K与家族L的两个恶意程序Xi和Yj特征之间的距离,Xi和Yj分别表示第L族中的第i个样本和第K族中的第j个样本,CK表示家族K,NK表示家族K中恶意程序样本的个数,CL表示家族L,NL表示家族L中恶意程序样本的个数;
恶意程序样本聚类模块,逐层对恶意程序样本进行聚类,并根据下述VNFS计算模块计算每层聚类结果的聚类有效性指标VNFS
VNFS计算模块,其计算每层分家族结果的VNFS,计算公式为:
V NFS = scat ( c ) - sep ( c ) = Σ i = 1 c Σ k = 1 n i | | x ik - v i | | 2 - Σ i = 1 c | | v i - v ‾ | | 2 * ( n i - 1 ) 公式(4);
在公式(4)中,c代表家族数,ni是家族i包含的样本数,xik是家族i的第k个样本,是家族i的中心点,vi表示与该家族中所有样本点距离和最小的样本点,vi的计算公式为:
Figure FSB00000438429500021
公式(5);
在公式(5)中,xik表示家族i中的第k个样本,xij表示家族i中的第j个样本,(xik-xij)表示样本xik与样本xij的距离,nci表示家族i中的样本总数;
Figure FSB00000438429500022
是整个数据集的全局中心点,
Figure FSB00000438429500023
表示与全局所有样本点距离和最小的样本点,
Figure FSB00000438429500024
的计算公式为:
Figure FSB00000438429500025
公式(6);
在公式(6)中,xk表示全局的第k个样本,xj表示全局的第j个样本,n表示全局样本的总数。
2.根据权利要求1所述的确定计算机恶意程序样本家族数的系统,其特征在于,
恶意程序样本特征提取模块所提取恶意程序样本的特征为N-Grams或者指令频度;
恶意程序样本距离计算模块采用cosine距离度量,度量公式为:
S ij = x i T x j | x i | | x j | 公式(1);
在公式(1)中,
Figure FSB00000438429500027
表示xi的转制,xi和xj分别表示第i个样本的特征向量和第j个样本的特征向量,Sij表示两个样本间的距离。
3.根据权利要求1所述的确定计算机恶意程序样本家族数的系统,其特征在于,
恶意程序样本特征提取模块所提取恶意程序样本的特征为API序列;
恶意程序样本距离计算模块采用Jaccard距离度量,度量公式为:
Jaccard = M 01 + M 10 M 01 + M 10 + M 11 公式(2);
在公式(2)中,M01表示向量xi维度为0而向量xj维度为1的维度和,M10向量xi维度为1而向量x维度为0的维度和,M11表示向量xi和向量xj维度均为1的维度和,Jaccard表示两个样本间的距离。
4.使用权利要求1所述确定计算机恶意程序样本家族数的系统确定计算机恶意程序样本家族数的方法,其特征在于,包括如下步骤:
第一步、恶意程序样本数据处理:
根据恶意程序样本特征提取模块提取恶意程序样本的特征,初始时将每个恶意程序样本作为一个家族,并由恶意程序样本距离计算模块采用合适的距离度量方法来计算每两个恶意程序样本间的距离,得到距离矩阵D,矩阵D中的每个元素代表两两家族之间的距离;
第二步、对恶意程序样本进行聚类,并计算各个聚类结果的VNFS
当家族数大于用户设定值u时,循环以下操作:
①查找距离矩阵D,合并距离最近的两个家族C1和C2,得到包含|C1|+|C2|个样本的新家族C;
②家族间距离计算模块根据公式(3)计算新家族C到其他家族的距离;
③更新距离矩阵D,删除与C1和C2有关的距离,添加新家族C到其他家族的距离;
④vNFS计算模块根据公式(4)、(5)、(6)计算当前层分家族结果的vNFS
第三步、通过比较各个层次的VNFS值,找到VNFS值最小层的分家族结果,得到最优家族个数。
5.根据权利要求4所述确定计算机恶意程序样本家族数的方法,其特征在于,还包括
第四步、按照最优的归类结果,对每个样本标定家族编号。
6.根据权利要求5所述确定计算机恶意程序样本家族数的方法,其特征在于,
第一步中,恶意程序样本特征提取模块所提取恶意程序样本的特征为N-Grams或者指令频度;
恶意程序样本距离计算模块采用cosine距离度量,度量公式为:
S ij = x i T x j | x i | | x j | 公式(1);
在公式(1)中,
Figure FSB00000438429500042
表示xi的转制,xi和xj分别表示第i个样本的特征向量和第j个样本的特征向量,Sij表示两个样本间的距离。
7.根据权利要求5所述确定计算机恶意程序样本家族数的方法,其特征在于,
第一步中,
恶意程序样本特征提取模块所提取恶意程序样本的特征为API序列;
恶意程序样本距离计算模块采用Jaccard距离度量,度量公式为:
Jaccard = M 01 + M 10 M 01 + M 10 + M 11 公式(2);
在公式(2)中,M01表示向量xi维度为0而向量xj维度为1的维度和,M10向量xi维度为1而向量xj维度为0的维度和,M11表示向量xi和向量xj维度均为1的维度和,Jaccard表示两个样本间的距离。
8.根据权利要求4-7中任意一项所述确定计算机恶意程序样本家族数的方法,其特征在于,
当用户未设定u值时,u值为1。
CN2009100409987A 2009-07-10 2009-07-10 确定计算机恶意程序样本家族数的系统和方法 Active CN101604365B (zh)

Priority Applications (1)

Application Number Priority Date Filing Date Title
CN2009100409987A CN101604365B (zh) 2009-07-10 2009-07-10 确定计算机恶意程序样本家族数的系统和方法

Applications Claiming Priority (1)

Application Number Priority Date Filing Date Title
CN2009100409987A CN101604365B (zh) 2009-07-10 2009-07-10 确定计算机恶意程序样本家族数的系统和方法

Publications (2)

Publication Number Publication Date
CN101604365A CN101604365A (zh) 2009-12-16
CN101604365B true CN101604365B (zh) 2011-08-17

Family

ID=41470092

Family Applications (1)

Application Number Title Priority Date Filing Date
CN2009100409987A Active CN101604365B (zh) 2009-07-10 2009-07-10 确定计算机恶意程序样本家族数的系统和方法

Country Status (1)

Country Link
CN (1) CN101604365B (zh)

Families Citing this family (5)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN102930206B (zh) * 2011-08-09 2015-02-25 腾讯科技(深圳)有限公司 病毒文件的聚类划分处理方法和装置
CN103679012A (zh) * 2012-09-03 2014-03-26 腾讯科技(深圳)有限公司 一种可移植可执行文件的聚类方法和装置
CN104462288B (zh) * 2014-11-27 2017-10-17 华为技术有限公司 一种路径相似度分析方法以及系统
CN105205397B (zh) * 2015-10-13 2018-10-16 北京奇安信科技有限公司 恶意程序样本分类方法及装置
CN106960153B (zh) * 2016-01-12 2021-01-29 阿里巴巴集团控股有限公司 病毒的类型识别方法及装置

Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1737722A (zh) * 2005-08-03 2006-02-22 珠海金山软件股份有限公司 一种检测和防御计算机恶意程序的系统和方法
CN101154258A (zh) * 2007-08-14 2008-04-02 电子科技大学 恶意程序动态行为自动化分析系统与方法

Patent Citations (2)

* Cited by examiner, † Cited by third party
Publication number Priority date Publication date Assignee Title
CN1737722A (zh) * 2005-08-03 2006-02-22 珠海金山软件股份有限公司 一种检测和防御计算机恶意程序的系统和方法
CN101154258A (zh) * 2007-08-14 2008-04-02 电子科技大学 恶意程序动态行为自动化分析系统与方法

Also Published As

Publication number Publication date
CN101604365A (zh) 2009-12-16

Similar Documents

Publication Publication Date Title
Fournier-Viger et al. VMSP: Efficient vertical mining of maximal sequential patterns
Tian et al. Function length as a tool for malware classification
Janssens et al. A hybrid mapping of information science
Yan et al. Graph indexing: a frequent structure-based approach
Chen et al. Towards graph containment search and indexing
Nishi et al. Scalable code clone detection and search based on adaptive prefix filtering
Dutta et al. QROCK: A quick version of the ROCK algorithm for clustering of categorical data
Schenker et al. Clustering of web documents using a graph model
Wang et al. Clan: An algorithm for mining closed cliques from large dense graph databases
CN101604365B (zh) 确定计算机恶意程序样本家族数的系统和方法
JP2010509691A (ja) コプロセッサを使った高性能のデータメタタグ付けおよびデータ索引付けの方法およびシステム
Tao et al. Nearest keyword search in xml documents
CN108170467B (zh) 约束限定聚类和信息度量软件胎记特征选择方法、计算机
Oliveira et al. An efficient similarity-based approach for comparing XML documents
Bifet et al. Mining adaptively frequent closed unlabeled rooted trees in data streams
Chevalier et al. Structural analysis and visualization of c++ code evolution using syntax trees
Chang et al. MB3-Miner: Efficient mining eMBedded subTREEs using tree model guided candidate generation
CN111737694B (zh) 一种基于行为树的恶意软件同源性分析方法
Chehreghani et al. OInduced: an efficient algorithm for mining induced patterns from rooted ordered trees
CN105653567A (zh) 一种文本序列数据中快速查找特征字符串的方法
CN115982390A (zh) 一种产业链构建和迭代扩充开发方法
Zhang et al. Effective and fast near duplicate detection via signature-based compression metrics
Lin et al. Efficient updating of sequential patterns with transaction insertion
Kruit et al. Extracting N-ary facts from wikipedia table clusters
Spiegel et al. TuG synopses for approximate query answering

Legal Events

Date Code Title Description
C06 Publication
PB01 Publication
C10 Entry into substantive examination
SE01 Entry into force of request for substantive examination
C14 Grant of patent or utility model
GR01 Patent grant
ASS Succession or assignment of patent right

Owner name: KINGSOFT CORPORATION LIMITED

Free format text: FORMER OWNER: ZHUHAI KINGSOFT SOFTWARE CO., LTD.

Effective date: 20140901

C41 Transfer of patent application or patent right or utility model
COR Change of bibliographic data

Free format text: CORRECT: ADDRESS; FROM: 519015 ZHUHAI, GUANGDONG PROVINCE TO: 100085 SHIJINGSHAN, BEIJING

TR01 Transfer of patent right

Effective date of registration: 20140901

Address after: Kingsoft No. 33 building, 100085 Beijing city Shijingshan District Xiaoying Road

Patentee after: BEIJING KINGSOFT INTERNET SECURITY SOFTWARE Co.,Ltd.

Address before: Jinshan computer Building No. 8 Jingshan Hill Road, Lane 519015 Zhuhai Jida Lianshan Guangdong city of Zhuhai Province

Patentee before: Zhuhai Kingsoft Software Co.,Ltd.

EE01 Entry into force of recordation of patent licensing contract

Application publication date: 20091216

Assignee: Zhuhai Kingsoft Software Co.,Ltd.

Assignor: BEIJING KINGSOFT INTERNET SECURITY SOFTWARE Co.,Ltd.

Contract record no.: 2014990000778

Denomination of invention: System and method for confirming number of computer rogue program sample families

Granted publication date: 20110817

License type: Common License

Record date: 20140926

LICC Enforcement, change and cancellation of record of contracts on the licence for exploitation of a patent or utility model