一种面向复杂网络恶意程序分类方法及系统与流程

文档序号:23615508发布日期:2021-01-12 10:24阅读:109来源:国知局
一种面向复杂网络恶意程序分类方法及系统与流程

本发明涉及网络安全技术领域,尤其涉及一种面向复杂网络恶意程序分类方法及系统。



背景技术:

在网络安全技术领域,涉及到网络恶意程序分类,是指对检测到恶意程序的类别归属进行分析和准确判断。其中,针对已知类别样本,可进一步采取更具针对性的威胁消除与拆解措施,分析同类别样本间的变化趋势,并更新相应的载荷签名与行为特征库;而针对未知类别样本,则在累积到一定数量后采取半自动或自动分析方法,提取其各层面的特性作为新类别的标识,并不断丰富恶意程序威胁情报库。

目前,针对网络恶意程序的分类方法主要采用了行为分析的技术路线,即从多角度刻画网络恶意程序的行为特点,分析和比对与已知样本的行为相似性与差异,进而做出判断。具体地,perdisci等人提出了一种基于网络行为的多层次的http协议恶意程序分类与家族签名提取方法,该方法通过较为通用的网络层统计行为特征进行初次聚类,再使用自http请求头中结构提取的行为特征进行二次细致聚类与类簇融合,最后提取类簇“中心点”特征作为家族签名并用于检测中。此外,还提出了一种面向多扫描器标签背景,基于图的恶意程序家族一致性判定方法。dietrich等人同样关注于不同恶意程序家族的分类与签名生成问题,其通过流量协议,包尺寸序列及http协议中独立字节数这三类行为特征来描述恶意程序的c&c(command&control)流量,定义不同c&c流量间的通用距离度量方式,运用层次聚类形成类簇,并依据各类簇中特征值分布评估类簇中各值权重,最后依训练所得类簇作为家族签名进行恶意程序c&c流量检测和家族分类。rafique等人提出了firma方法,首先归聚恶意程序所生成的行为相似流量,并提取类簇中满足其定义的条件的字符集作为恶意程序家族签名,最后签名经融合、聚类以及格式转换后即可用于实际检测与家族分类任务中。此外,还运用恶意程序家族的协议行为特征与载荷状态特征,采用进化算法实现了准确的恶意程序家族分类,并取得了比传统机器学习方法更好的效果。

由上述现有实现方案可发现,现有与网络恶意程序相关的行为画像模型,要么是专门针对恶意程序特定类型的网络活动与行为,如c&c信道活动、下载活动、攻击活动、或dns域名解析活动等,进行不同粒度和维度刻画,要么只是对恶意程序的整体或主要的网络行为特点进行较为粗糙而不全面的刻画,如简单统计上下行流量尺寸、间隔、协议标志位数目等。倘若基于面向特定活动的行为画像来刻画和分类当前行为复杂、长时间运行、且数量众多不断增长的先进网络恶意程序,则只能得到恶意程序部分角度上的网络行为特点,进而容易导致分类错误。例如,两个不同家族的网络恶意程序可能采用了相同的dga(domaingenerationalgorithm)域名生成模块和ddos(distributeddenialofservice)攻击流模块,进而在域名请求和ddos攻击活动上表现得较为相似。此时,若基于面向域名或ddos攻击的行为画像模型来进行此二家族恶意程序的分类,则较难以发现它们的区别并正确区分。与之类似,现有粗糙而不全面的通用行为画像模型,也同样无法细致入微地刻画此类恶意程序内在的行为特点,进而发现它们间的相似与差异性,并给出正确的类别判断。



技术实现要素:

本发明实施例提供一种面向复杂网络恶意程序分类方法及系统,用以解决现有技术中受限于检测程序类型,以及对恶意程序刻画得不够全面和深刻的缺陷。

第一方面,本发明实施例提供一种面向复杂网络恶意程序分类方法,包括:

获取网络恶意程序在预设时间内的完整网络流量,将所述完整网络流量划分为若干网络活动,对所述若干网络活动进行网络活动刻画,得到网络综合行为画像模型;

通过行为距离度量函数和预设聚类算法,将所述网络综合行为画像模型中获取的样本网络行为特点生成行为签名;

基于所述行为签名分别对已知恶意网络训练样本和未知测试样本进行整体相似度计算,得到未知网络恶意程序的类别归属。

进一步地,所述获取网络恶意程序在预设时间内的完整网络流量,将所述完整网络流量划分为若干网络活动,对所述若干网络活动进行网络活动刻画,得到网络综合行为画像模型,具体包括:

基于预设二元组信息将若干网络流量划分至同一类网络活动,去除满足预设定义的网络活动,得到初始网络活动划分结果;

分别从数据整体、数据流、数据包、数据类型标记和活动时间比值对所述初始网络活动划分结果进行网络活动刻画,得到所述网络综合行为画像模型。

进一步地,所述基于预设二元组信息将若干网络流量划分至同一类网络活动,去除满足预设定义的网络活动,得到初始网络活动划分结果,具体包括:

将目的地址相同、目的端口相同、传输层协议不同的若干网络流量划分至所述同一类网络活动;

将所述同一类网络活动中仅包含单个数据包、单条数据流以及单向数据流的网络活动去除,得到所述初始网络活动划分结果。

进一步地,所述分别从数据整体、数据流、数据包、数据类型标记和活动时间比值对所述初始网络活动划分结果进行网络活动刻画,得到所述网络综合行为画像模型,具体包括:

从tcp数据整体维度和udp数据整体维度进行数值表示,得到数据整体刻画结果;其中,所述tcp数据整体维度包括上行tcp字节数、下行tcp字节数、上行tcp包数、下行tcp包数和所有tcp流数目与网络活动整体活跃时间比值,所述udp数据整体维度包括上行udp字节数、下行udp字节数、上行udp包数、下行udp包数和所有udp流数目与网络活动整体活跃时间比值;

从tcp数据流维度和udp数据流维度进行数值集合表示,得到数据流刻画结果;其中,所述tcp数据流维度包括tcp流尺寸序列、tcp流持续时间序列和tcp流间隔序列,所述udp数据流维度包括udp流尺寸序列、udp流持续时间序列和udp流间隔序列;

从tcp数据包维度和udp数据包维度进行离散分布表示,得到数据包刻画结果;其中,所述tcp数据包维度包括上行tcp数据包和下行tcp数据包,所述udp数据包维度包括上行udp数据包和下行udp数据包;

从网络活动中获取数据包类型信息,得到数据类型标记刻画结果;

计算网络活动活跃时间与样本执行时间的比值,得到活动时间比值刻画结果;

将所述数据整体刻画结果、所述数据流刻画结果、所述数据包刻画结果、所述数据类型标记刻画结果和所述活动时间比值刻画结果组合成所述网络综合行为画像模型。

进一步地,所述通过行为距离度量函数和预设聚类算法,将所述网络综合行为画像模型中获取的样本网络行为特点生成行为签名,具体包括:

分别获取任意两个网络活动对应的第一行为画像和第二行为画像;

获取数值间距离、数值集合间距离和离散分布间距离;

分别计算所述第一行为画像和所述第二行为画像之间的数据整体距离、数据流距离和数据包距离;其中,所述数据整体距离等于所述数值间距离,所述数据流距离等于所述第一行为画像至第二行为画像数值集合间距离与所述第二行为画像至第一行为画像数值集合间距离的均值,所述数据包距离等于所述离散分布间距离;

由所述数据整体距离、所述数据流距离和所述数据包,得到存储有样本所有网络活动对应行为画像间距离的矩阵;

采用所述预设聚类算法将所述行为画像间距离的矩阵中相似画像归为同一类簇,将所有类簇作为恶意样本的行为签名。

进一步地,所述基于所述行为签名分别对已知恶意网络训练样本和未知测试样本进行整体相似度计算,得到未知网络恶意程序的类别归属,具体包括:

分别获取所述未知测试样本对应的第一行为签名集,所述已知恶意网络训练样本集中任一恶意程序对应的第二行为签名集;

计算所述第一行为签名集和所述第二行为签名集之间的相似度量函数,判断所述未知测试样本是否属于所述已知恶意网络训练样本的类别。

进一步地,所述计算所述第一行为签名集和所述第二行为签名集之间的相似度量函数,得到所述类别归属,具体包括:

分别获取所述第一行为签名集中的第一行为签名,所述第一行为签名中的第一网络活动行为画像,所述第二行为签名集中的第二行为签名,所述第二行为签名中的第二网络活动行为画像;

基于所述第一网络活动行为画像和所述第二网络活动行为画像之间的距离,以及所述第一网络活动行为画像和所述第二网络活动行为画像之间的活动时间比值得到所述第一行为签名和所述第二行为签名之间的相似度;

获取所述第一行为签名与所述第二行为签名集中所有行为签名的相似度的最大值,设定所述最大值不小于预设阈值;

计算所述第一行为签名集中所有行为签名与所述第二行为签名集中所有行为签名的相似度的最大值之和,根据所述最大值之和,及当前测试样本在不同训练样本行为签名集上的最大相似度来标注出所述类别归属。

第二方面,本发明实施例还提供一种面向复杂网络恶意程序分类系统,包括:

刻画模块,用于获取网络恶意程序在预设时间内的完整网络流量,将所述完整网络流量划分为若干网络活动,对所述若干网络活动进行网络活动刻画,得到网络综合行为画像模型;

签名模块,用于通过行为距离度量函数和预设聚类算法,将所述网络综合行为画像模型中获取的样本网络行为特点生成行为签名;

判断模块,用于基于所述行为签名分别对已知恶意网络训练样本和未知测试样本进行整体相似度计算,得到未知网络恶意程序的类别归属。

第三方面,本发明实施例还提供一种电子设备,包括存储器、处理器及存储在存储器上并可在处理器上运行的计算机程序,所述处理器执行所述程序时实现如上述任一种所述面向复杂网络恶意程序分类方法的步骤。

第四方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现如上述任一种所述面向复杂网络恶意程序分类方法的步骤。

本发明实施例提供的面向复杂网络恶意程序分类方法及系统,通过对网络恶意程序进行综合行为画像分类,细致全面地刻画复杂网络恶意程序的行为特点,进而做出正确的类别归属判断,且该分类方法不针对特定网络活动、协议及格式,适用性强。

附图说明

为了更清楚地说明本发明实施例或现有技术中的技术方案,下面将对实施例或现有技术描述中所需要使用的附图作一简单地介绍,显而易见地,下面描述中的附图是本发明的一些实施例,对于本领域普通技术人员来讲,在不付出创造性劳动的前提下,还可以根据这些附图获得其他的附图。

图1是本发明实施例提供的一种面向复杂网络恶意程序分类方法的流程示意图;

图2是本发明实施例提供的网络恶意程序分类整体流程图;

图3是本发明实施例提供的家族判别标准下的分类准确度表现对比图;

图4是本发明实施例提供的场景判别标准下的分类准确度表现对比图;

图5是本发明实施例提供的一种面向复杂网络恶意程序分类系统的结构示意图;

图6是本发明实施例提供的一种电子设备的结构示意图。

具体实施方式

为使本发明实施例的目的、技术方案和优点更加清楚,下面将结合本发明实施例中的附图,对本发明实施例中的技术方案进行清楚、完整地描述,显然,所描述的实施例是本发明一部分实施例,而不是全部的实施例。基于本发明中的实施例,本领域普通技术人员在没有作出创造性劳动前提下所获得的所有其他实施例,都属于本发明保护的范围。

本申请实施例中的术语“第一”、“第二”仅用于描述目的,而不能理解为指示或暗示相对重要性或者隐含指明所指示的技术特征的数量。由此,限定有“第一”、“第二”的特征可以明示或者隐含地包括至少一个该特征。本申请的描述中,术语“包括”和“具有”以及它们任何变形,意图在于覆盖不排他的包含。例如包含了一系列部件或单元的系统、产品或设备没有限定于已列出的部件或单元,而是可选地还包括没有列出的部件或单元,或可选地还包括对于这些产品或设备固有的其它部件或单元。本申请的描述中,“多个”的含义是至少两个,例如两个,三个等,除非另有明确具体的限定。

针对现有技术中现有网络恶意程序分类方法,在应对当前复杂网络恶意程序时存在的局限性,本发明实施例提出了一种新的针对网络恶意程序的分类方法,首先提出一种新的综合行为画像模型,能够从多个层面细致而全面地刻画恶意程序每个网络活动,此外,还提出了配合该行为画像模型的具体恶意程序分类方法,该方法通过聚类方法挖掘恶意程序主要的网络行为特点,并通过样本间行为相似度来最终决定未知复杂网络恶意程序的类别归属。

图1是本发明实施例提供的一种面向复杂网络恶意程序分类方法的流程示意图,如图1所示,包括:

s1,获取网络恶意程序在预设时间内的完整网络流量,将所述完整网络流量划分为若干网络活动,对所述若干网络活动进行网络活动刻画,得到网络综合行为画像模型;

s2,通过行为距离度量函数和预设聚类算法,将所述网络综合行为画像模型中获取的样本网络行为特点生成行为签名;

s3,基于所述行为签名分别对已知恶意网络训练样本和未知测试样本进行整体相似度计算,得到未知网络恶意程序的类别归属。

具体地,本发明实施例所提出的网络恶意程序分类方法的整体流程如图2所示,主要由三个具体步骤组成,包括:网络活动刻画,行为签名生成,以及恶意程序家族判断。

在网络活动刻画步骤中,网络恶意程序在一定时间内的完整网络流量被划分为不同的网络活动,并通过本发明实施例所提出的综合行为画像模型进行分别刻画;在行为签名生成步骤中,则通过聚类方法以及行为距离度量函数,从众多的网络活动行为画像中挖掘出样本主要的网络行为特点作为签名;最后,类别未知的测试样本行为签名将与类别已知的训练样本行为签名进行整体相似度计算,并基于相似度来决定未知复杂网络恶意程序的类别归属。

本发明实施例通过对网络恶意程序进行综合行为画像分类,细致全面地刻画复杂网络恶意程序的行为特点,进而做出正确的类别归属判断,且该分类方法不针对特定网络活动、协议及格式,适用性强。

基于上述实施例,该方法中步骤s1具体包括:

基于预设二元组信息将若干网络流量划分至同一类网络活动,去除满足预设定义的网络活动,得到初始网络活动划分结果;

分别从数据整体、数据流、数据包、数据类型标记和活动时间比值对所述初始网络活动划分结果进行网络活动刻画,得到所述网络综合行为画像模型。

其中,所述基于预设二元组信息将若干网络流量划分至同一类网络活动,去除满足预设定义的网络活动,得到初始网络活动划分结果,具体包括:

将目的地址相同、目的端口相同、传输层协议不同的若干网络流量划分至所述同一类网络活动;

将所述同一类网络活动中仅包含单个数据包、单条数据流以及单向数据流的网络活动去除,得到所述初始网络活动划分结果。

其中,所述分别从数据整体、数据流、数据包、数据类型标记和活动时间比值对所述初始网络活动划分结果进行网络活动刻画,得到所述网络综合行为画像模型,具体包括:

从tcp数据整体维度和udp数据整体维度进行数值表示,得到数据整体刻画结果;其中,所述tcp数据整体维度包括上行tcp字节数、下行tcp字节数、上行tcp包数、下行tcp包数和所有tcp流数目与网络活动整体活跃时间比值,所述udp数据整体维度包括上行udp字节数、下行udp字节数、上行udp包数、下行udp包数和所有udp流数目与网络活动整体活跃时间比值;

从tcp数据流维度和udp数据流维度进行数值集合表示,得到数据流刻画结果;其中,所述tcp数据流维度包括tcp流尺寸序列、tcp流持续时间序列和tcp流间隔序列,所述udp数据流维度包括udp流尺寸序列、udp流持续时间序列和udp流间隔序列;

从tcp数据包维度和udp数据包维度进行离散分布表示,得到数据包刻画结果;其中,所述tcp数据包维度包括上行tcp数据包和下行tcp数据包,所述udp数据包维度包括上行udp数据包和下行udp数据包;

从网络活动中获取数据包类型信息,得到数据类型标记刻画结果;

计算网络活动活跃时间与样本执行时间的比值,得到活动时间比值刻画结果;

将所述数据整体刻画结果、所述数据流刻画结果、所述数据包刻画结果、所述数据类型标记刻画结果和所述活动时间比值刻画结果组合成所述网络综合行为画像模型。

具体地,由于恶意程序在较长运行时间内产生的众多网络流量对应了多种多样的网络活动,因此不应将所有流量表现出的特征直接视为样本的行为特点,其要么会因为仅使用少量特征而造成不全面而粗糙的刻画,要么会造成生成的行为模型过于繁琐复杂、且充斥着零散或噪声行为。

可以理解的是,本发明实施例采取的策略是先对样本的单个网络活动进行细粒度而全面的刻画,进而在单个画像的基础上挖掘出样本的主要行为特点。在将原始流量还原为具体的网络活动时,基于相同三元组信息,如目的地址、目的端口和传输层协议进行还原。此外,为了减少刻画的活动数目,减少后续步骤的运算开销,本发明实施例进一步将拥有相同目的地址和端口,但传输层协议不同的流量归纳至同一活动,即仅基于目的地址和目的端口的二元组信息划分。对于初步的划分结果,本发明实施例将仅包含单个包,单条流以及单向流的活动滤去。这些特定的网络活动缺乏交互以及相对持久的通信数据,难以代表一个有意义的网络活动。为了细致而全面地刻画一个完整的网络活动act,将其表示为:

act=(act_bh,flows_bh,pkt_bh,act_label,act_we)

其中,act_bh,flows_bh,和pkt_bh分别代表了此网络活动在数据整体、数据流以及数据包三个层面的行为特点。

act_bh由10个数值形式的统计行为特征所组成(f1,f2...,f10),前五个特征代表了此网络活动中上行tcp字节数、下行tcp字节数、上行tcp包数、下行tcp包数以及所有的tcp流数目分别除以此网络活动的整体活跃时间;第六至第十个则是对此网络活动中udp流量按相同方式进行计算得出的。网络活动的整体活跃时间被定义为其包含的各流持续时间和减去相重叠的部分。本发明实施例通过将tcp与udp流量的相关统计值除以活动整体活跃时间来消除不同样本执行时间不一致所可能导致的行为差异。

flows_bh则由六个数值集形式的行为特征所组成(f11,f12...,f16),其中f11,f12,f13包含了此网络活动所包含tcp流量的流尺寸序列、流持续时间序列以及流间隔序列所能表现出的行为特征,另外三个特征则同样是针对udp流的上述三个相关数值序列的行为刻画。为了刻画一个数值序列所包含的行为特点,传统的方法是直接提取该数值序列的均值,但此方法并不适用于对流量相关的数值序列进行刻画,其原因是通常在一个具体的网络活动中,不同的tcp/udp流对应了不同的子任务,从而会表现出行为上的差异,例如在一个获取网页资源的网络活动中,样本可能会通过一条快速而短暂的流来获取网页框架,进而通过数条持久且相对缓慢的流来获取网页上的多媒体资源。因此,使用单个均值来刻画这些流的尺寸序列或是持续时间序列是不妥当的。因此本发明实施例采用了聚类方法,即将一个流量相关的数值序列归聚为多个类簇,进而将各类簇的中心值组成的集合作为对此序列的刻画,具体选用了x-means算法来对各数值序列进行聚类处理。

pkt_bh则是通过四个分布形式的行为特征(f17,f18,f19,f20)对此网络活动中所有的上行tcp数据包,下行tcp数据包,上行udp数据包,以及下行udp数据包的行为进行刻画。以所有的上行tcp数据包为例,本发明实施例计算这些数据包落在六个尺寸范围(0-64字节、64-128字节、128-256字节、256-512字节、512-1024字节以及大于1024字节)内的比例,并将这六个比例组成离散分布f17,其他三个特征的计算方式与该特征相同。

对于另外两个特征,若此网络活动中只包含tcp数据包,本发明实施例将act_label设为“tcp”,只包含udp数据包则将其设为“udp”,并在存在两类数据包的情况下将其设为“mix”。最后,为了度量各网络活动对于样本整体在时间方面的重要程度,将act_we设为此网络活动活跃时间与样本执行时间的比值。

本发明实施例所提出的综合行为画像模型,相比其他方法中提出的行为画像,具备更细致、更全面且更普适的恶意程序网络行为刻画能力,能够更好更充分地学习到复杂网络恶意程序的行为特点,进而取得相比现有方法与画像更为优秀的恶意程序分类能力。

基于上述任一实施例,该方法中步骤s2具体包括:

分别获取任意两个网络活动对应的第一行为画像和第二行为画像;

获取数值间距离、数值集合间距离和离散分布间距离;

分别计算所述第一行为画像和所述第二行为画像之间的数据整体距离、数据流距离和数据包距离;其中,所述数据整体距离等于所述数值间距离,所述数据流距离等于所述第一行为画像至第二行为画像数值集合间距离与所述第二行为画像至第一行为画像数值集合间距离的均值,所述数据包距离等于所述离散分布间距离;

由所述数据整体距离、所述数据流距离和所述数据包,得到存储有样本所有网络活动对应行为画像间距离的矩阵;

采用所述预设聚类算法将所述行为画像间距离的矩阵中相似画像归为同一类簇,将所有类簇作为恶意样本的行为签名。

具体地,在上述实施例基础上,需要进一步获取该样本所能表现出的整体网络行为特点,以作为各样本的网络行为签名。为此,本发明实施例通过聚类方法将所有网络活动行为画像归聚为不同类簇,并将各类簇分别表示为该样本的一个主要行为特点。聚类操作的要点是如何量化地评估不同活动对应行为画像间的差异,由于本发明实施例所提出的画像模型包括了数值、数值集合以及离散分布这三种不同类型的行为特征,本发明实施例需要先定义同一类型行为特征间的距离。设a和b是两个数值,c和d是两个数值集合,且e=(e1,e2,...,ek)和f=(f1,f2,...,fk)是两个相同长度的离散分布,定义如下三公式来分别度量数值间、数值集合间、以及离散分布间的距离:

其中,dis_distri即是hellinger(海林格)距离。

此处,设x和y是两个网络活动对应的行为画像,本发明进一步定义dis_acitivity函数来度量它们的距离:

其中,disact(x.fi,y.fi)即为dis_value(x.fi,y.fi)(1≤i≤10),

disflow(x.fi,y.fi)则定义为dis_collect(x.fi,y.fi)和

dis_collect(y.fi,x.fi)(11≤i≤16)的均值,dispkt(x.fi,y.fi)则等价于dis_distri(x.fi,y.fi)(17≤i≤20)。通过上述距离函数,本发明实施例可以获取一个网络恶意程序所包含的各网络活动行为画像间的距离矩阵。最后,本发明实施例采用dbscan聚类算法来将相似的画像归聚至同一类簇中,并将最后生成的每个类簇视为此样本的一个网络行为签名。

基于上述任一实施例,该方法中步骤s3具体包括:

分别获取所述未知测试样本对应的第一行为签名集,所述已知恶意网络训练样本集中任一恶意程序对应的第二行为签名集;

计算所述第一行为签名集和所述第二行为签名集之间的相似度量函数,判断所述未知测试样本是否属于所述已知恶意网络训练样本的类别。

进一步地,所述计算所述第一行为签名集和所述第二行为签名集之间的相似度量函数,得到所述类别归属,具体包括:

分别获取所述第一行为签名集中的第一行为签名,所述第一行为签名中的第一网络活动行为画像,所述第二行为签名集中的第二行为签名,所述第二行为签名中的第二网络活动行为画像;

基于所述第一网络活动行为画像和所述第二网络活动行为画像之间的距离,以及所述第一网络活动行为画像和所述第二网络活动行为画像之间的活动时间比值得到所述第一行为签名和所述第二行为签名之间的相似度;

获取所述第一行为签名与所述第二行为签名集中所有行为签名的相似度的最大值,设定所述最大值不小于预设阈值;

计算所述第一行为签名集中所有行为签名与所述第二行为签名集中所有行为签名的相似度的最大值之和,根据所述最大值之和,及当前测试样本在不同训练样本行为签名集上的最大相似度来标注出所述类别归属。

具体地,对测试恶意程序的类别判断过程,则是基于测试恶意程序与已知家族的训练恶意程序的相似度来判断,两个恶意程序间的相似度又由它们各自的行为签名集间的相似度来决定。设u与v分别是两个恶意程序,m和n则是它们各自的行为签名集,本发明实施例将它们间的相似度量函数定义为:

其中m与n分别是m和n中的两个具体的行为签名,j与k则分别是m和n中的一个网络活动行为画像。上述恶意程序间相似性度量函数背后的思路是,u对v的相似度,将由其行为签名集m中的每个行为签名m与v的行为签名集n间的相似度的和给出,且m与n间的相似度又进一步由m与n中所有行为签名各自的相似度的最大值给出。此最大相似度值被设定为应当大于一个指定阈值max_threshold,以防止样本间的相似性通过大量低相似性的行为签名累加而出。最后,两个行为签名间的相似性则由它们所包含的最相似的一对网络活动行为画像决定,其计算过程不仅涉及了两画像间的距离,还考虑了它们的act_we属性。基于此,本发明实施例可以计算测试恶意程序对每个训练恶意程序的相似度,进而将其标注为与其最相似的训练恶意程序类别。

基于上述任一实施例,本发明实施例采用了如下数据及方法进行了充分的实验评估:

基于多个包含复杂网络恶意程序的公共数据集进行了评估实验,具体选用了ctu-13,stratosphere以及peerrush文献中所用数据集中行为丰富多变的众多网络恶意程序场景,所组成的评估数据集信息如下表所示。为了对测试恶意程序的类别判断结果进行评估,本发明实施例首先定义了两种判别方式:基于家族和基于场景。家族方式是判断测试恶意程序经预测给出的类别标签中,其恶意程序家族属性是否与该样本的真实家族属性一致。场景方式则是判断测试恶意程序经预测给出的类别标签中,其恶意程序场景属性是否与该样本的真实场景一致。进而本发明定义家族分类准确度(accuracy)为在家族判别方式下,分类正确的测试恶意程序占全部测试恶意程序的比例,场景分类准确度同理。在两种判别方式中,家族方式更为宽松和常见,测试数据集中不同场景中的网络恶意程序有可能属于同一家族。然而,同一家族下,不同场景的恶意程序样本仍可能会因为代码、环境乃至攻击者的变化而表现出细微的行为差异。为了进一步评估本发明像及分类方法区分此细微网络行为差异的能力,本发明实施例定义了更加严格的场景判别方式,表1为网络恶意程序分类方法所用评估数据信息。

表1

通过实验评估显示,具有如下优点:

(1)本发明实施例所提出的综合行为画像模型,可针对不同类型的恶意程序网络活动,从三个不同的层面,配合不同类型的特征来对各活动进行细粒度而又全面综合的行为刻画。并且,该行为画像模型与载荷内容无关,适用性强,可用于分析不同类型的网络恶意程序。

(2)相应的分类方法具备优秀的分类性能表现,如图3和图4显示了在评估数据上,两种不同的判别方式下,在准确度(accuracy)上的性能表现。从结果可看出,家族分类与场景分类准确度的最佳值分别为1.000和0.923。即在广泛为各种分类方法与装置所使用的家族准确度上,本发明实施例取得了100%正确的分类性能表现。在本发明实施例自定义的更加严格,更加适用于复杂网络恶意程序的场景准确度上,依旧取得了大于0.9的分类性能表现。此外,本发明实施例同样基于综合了精确率与召回率的f-measure度量对不同判别方式下的方法分类结果进行评估。对于具体某恶意程序类别cati,将该类别作为正样本,其他所有非该类别恶意程序作为负样本,进而获取针对类别cati的精确率prei与召回率recalli,并计算该类别的f-measure值为fmscorei。在获取某判别标准下,各类别结果的f-measure值后,则通过如下公式计算整体的f-measure值,其中|cati|为cati在当前判别标准下,所包含的恶意程序数目。

(3)本发明实施例提出的恶意程序行为画像,相比其他恶意程序行为画像,能够更好更细致地捕获复杂网络恶意程序的行为特点,进而为本发明实施例的分类方法带来更好的分类性能表现。为进行对比,选取了其他三种同样用于恶意程序分类的行为画像(bc、co、和mal),和本发明实施例在同条件下进行了对比。如表2(在准确度(accuracy)上的对比结果)和表3(在f-measure值上的对比结果)显示了在不同判别标准和度量方式上的对比结果。可以看出,bc模型的最佳家族与场景分类准确度为0.923和0.692,最佳家族与场景分类f-measure值则为0.905和0.594。co模型的最佳家族与场景分类准确度则为0.807和0.653,最佳家族与场景分类f-measure值则为0.843和0.665。它们的性能表现均差于本发明的最佳结果:最佳家族与场景分类准确度为1.000和0.923,最佳f-measure值为1.000和0.906。而mal模型的最佳家族与场景分类准确度均为0.923,最佳家族与场景分类f-measure值则均为0.897。除场景分类准确度外,mal模型性能均落后于本发明的分类性能表现。

表2

表3

下面对本发明实施例提供的网络恶意程序分类系统进行描述,下文描述的网络恶意程序分类系统与上文描述的网络恶意程序分类方法可相互对应参照。

图5是本发明实施例提供的一种面向复杂网络恶意程序分类系统的结构示意图,如图5所示,包括:刻画模块51、签名模块52和判断模块53;其中:

刻画模块51用于获取网络恶意程序在预设时间内的完整网络流量,将所述完整网络流量划分为若干网络活动,对所述若干网络活动进行网络活动刻画,得到网络综合行为画像模型;签名模块52用于通过行为距离度量函数和预设聚类算法,将所述网络综合行为画像模型中获取的样本网络行为特点生成行为签名;判断模块53用于基于所述行为签名分别对已知恶意网络训练样本和未知测试样本进行整体相似度计算,得到未知网络恶意程序的类别归属。

本发明实施例通过对网络恶意程序进行综合行为画像分类,细致全面地刻画复杂网络恶意程序的行为特点,进而做出正确的类别归属判断,且该分类方法不针对特定网络活动、协议及格式,适用性强。

图6示例了一种电子设备的实体结构示意图,如图6所示,该电子设备可以包括:处理器(processor)610、通信接口(communicationinterface)620、存储器(memory)630和通信总线(bus)640,其中,处理器610,通信接口620,存储器630通过通信总线640完成相互间的通信。处理器610可以调用存储器630中的逻辑指令,以执行网络恶意程序分类方法,该方法包括:获取网络恶意程序在预设时间内的完整网络流量,将所述完整网络流量划分为若干网络活动,对所述若干网络活动进行网络活动刻画,得到网络综合行为画像模型;通过行为距离度量函数和预设聚类算法,将所述网络综合行为画像模型中获取的样本网络行为特点生成行为签名;基于所述行为签名分别对已知网络训练样本和未知测试样本进行整体相似度计算,得到未知网络恶意程序的类别归属。

此外,上述的存储器630中的逻辑指令可以通过软件功能单元的形式实现并作为独立的产品销售或使用时,可以存储在一个计算机可读取存储介质中。基于这样的理解,本发明的技术方案本质上或者说对现有技术做出贡献的部分或者该技术方案的部分可以以软件产品的形式体现出来,该计算机软件产品存储在一个存储介质中,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行本发明各个实施例所述方法的全部或部分步骤。而前述的存储介质包括:u盘、移动硬盘、只读存储器(rom,read-onlymemory)、随机存取存储器(ram,randomaccessmemory)、磁碟或者光盘等各种可以存储程序代码的介质。

另一方面,本发明实施例还提供一种计算机程序产品,所述计算机程序产品包括存储在非暂态计算机可读存储介质上的计算机程序,所述计算机程序包括程序指令,当所述程序指令被计算机执行时,计算机能够执行上述各方法实施例所提供的网络恶意程序分类方法,该方法包括:获取网络恶意程序在预设时间内的完整网络流量,将所述完整网络流量划分为若干网络活动,对所述若干网络活动进行网络活动刻画,得到网络综合行为画像模型;通过行为距离度量函数和预设聚类算法,将所述网络综合行为画像模型中获取的样本网络行为特点生成行为签名;基于所述行为签名分别对已知恶意网络训练样本和未知测试样本进行整体相似度计算,得到未知网络恶意程序的类别归属。

又一方面,本发明实施例还提供一种非暂态计算机可读存储介质,其上存储有计算机程序,该计算机程序被处理器执行时实现以执行上述各实施例提供的网络恶意程序分类方法,该方法包括:获取网络恶意程序在预设时间内的完整网络流量,将所述完整网络流量划分为若干网络活动,对所述若干网络活动进行网络活动刻画,得到网络综合行为画像模型;通过行为距离度量函数和预设聚类算法,将所述网络综合行为画像模型中获取的样本网络行为特点生成行为签名;基于所述行为签名分别对已知恶意网络训练样本和未知测试样本进行整体相似度计算,得到未知网络恶意程序的类别归属。

以上所描述的装置实施例仅仅是示意性的,其中所述作为分离部件说明的单元可以是或者也可以不是物理上分开的,作为单元显示的部件可以是或者也可以不是物理单元,即可以位于一个地方,或者也可以分布到多个网络单元上。可以根据实际的需要选择其中的部分或者全部模块来实现本实施例方案的目的。本领域普通技术人员在不付出创造性的劳动的情况下,即可以理解并实施。

通过以上的实施方式的描述,本领域的技术人员可以清楚地了解到各实施方式可借助软件加必需的通用硬件平台的方式来实现,当然也可以通过硬件。基于这样的理解,上述技术方案本质上或者说对现有技术做出贡献的部分可以以软件产品的形式体现出来,该计算机软件产品可以存储在计算机可读存储介质中,如rom/ram、磁碟、光盘等,包括若干指令用以使得一台计算机设备(可以是个人计算机,服务器,或者网络设备等)执行各个实施例或者实施例的某些部分所述的方法。

最后应说明的是:以上实施例仅用以说明本发明的技术方案,而非对其限制;尽管参照前述实施例对本发明进行了详细的说明,本领域的普通技术人员应当理解:其依然可以对前述各实施例所记载的技术方案进行修改,或者对其中部分技术特征进行等同替换;而这些修改或者替换,并不使相应技术方案的本质脱离本发明各实施例技术方案的精神和范围。

当前第1页1 2 
网友询问留言 已有0条留言
  • 还没有人留言评论。精彩留言会获得点赞!
1