【技术实现步骤摘要】
一种恶意软件家族分类模型生成方法、装置
[0001]本专利技术涉及信息安全
,具体涉及一种恶意软件家族分类模型生成方法、装置。
技术介绍
[0002]Android是由Google公司以及开放手机联盟于2007年领导以及开发的一种基于Linux的自由及开放源代码的操作系统,具有很好的开源性和流行性,被广泛使用于移动设备,也正因如此其成为97%的恶意软件攻击目标。有研究表明,安卓恶意软件具有明显的家族特性,来自相同家族的恶意软件其恶意行为非常相似,因此研究恶意软件分类问题能够帮助安卓安全分析员更高效地分析安卓恶意软件,从而规避其恶意行为。
[0003]目前最流行的恶意家族分类方法大多基于机器学习,对每个家族中的安卓恶意软件进行特征提取为向量,然后再用SVM、RF等分类器进行有监督学习。
技术实现思路
[0004]专利技术人发现,恶意软件家族分类模型通常是根据在一定时段采集的封闭数据集设计的,恶意软件家族的分类往往是固定的。但随着技术的发展,在封闭数据上训练的模型难以适用于新捕获的恶意样本。而且,为了使恶意软件家族分类模型能够分类新家族样本,又要使其不遗忘原始家族的分类知识,现有技术一般是将新样本和原始样本融合进行重新训练。但是随着新家族的不断增多,计算开销将越来越大,非常消耗资源,难以在实际情况下使用。有鉴于此,实有必要提出一种新的恶意软件分类方法,使其能够在分类原始家族的同时,吸纳新家族的知识,同时保证可控的计算开销。
[0005]本专利技术公开了一种恶意软件家族分类模型生成方法 ...
【技术保护点】
【技术特征摘要】 【专利技术属性】
1.一种恶意软件家族分类模型生成方法,其特征在于,包括以下步骤:提取原始恶意软件家族中各样本的特征向量;利用提取的各样本的特征向量训练一个分类模型;利用提取的各样本的特征向量确定原始恶意软件家族中的代表样本;利用确定的代表样本与新出现的恶意软件样本构建新的训练样本;利用训练样本更新所述分类模型得到新的恶意软件家族分类模型。2.如权利要求1所述恶意软件家族分类模型生成方法,其特征在于,提取原始恶意软件家族中各样本的特征向量包括以下步骤:对原始恶意软件家族中各样本的APK文件进行反编译,提取出函数调用关系,构建函数调用图;提取出每个函数的操作码序列作为函数的节点特征;利用所述函数调用图、各函数的节点特征,得到具有节点属性的图特征;按预设规则将所述图特征变换为低维特征向量。3.如权利要求1所述恶意软件家族分类模型生成方法,其特征在于,提取原始恶意软件家族中各样本的特征向量包括以下步骤:对原始恶意软件家族中各样本的APK文件进行反编译,提取出预设敏感API相关的函数调用关系,生成敏感函数调用图;提取出每个预设敏感API相关的函数的代码片段,并且抽取出操作码序列作为函数的节点特征;利用所述敏感函数调用图、各函数的节点特征,得到具有节点属性的图特征;将所述具有节点属性的图特征输入一预设网络模型,将所述图特征变换为低维特征向量。4.如权利要求3所述恶意软件家族分类模型生成方法,其特征在于,所述预设网络模型为:为:其中,f
graph
为图特征向量,A为表示敏感函数调用图的邻接矩阵,X为各函数的节点特征向量,ReLU是激活函数,H
ij
∈H
outout
表示的度矩阵,W是可训练权重,I是单位矩阵,R
n
为n维实数。5.如权利要求1所述恶意软件家族分类模型生成方法,其特征在于,用提取的各样本的特征向量训练一个分类模型具体包括:获取各样本的真实家族标签y
*
;通过优化f(x)的参数使得E{l[y
*
,f(x)]最小化得到分类模型F0;其中,f(x)表示模型预测的输出,l是标签平滑损失函数以表示真实样本和输出标签之前的差距,E表示期望。6.如权利要求1所述恶意软件家族分类模型生成方法,其特征在于,利用提取的各样本的特征向量确定原始恶意软件家族中的代表样本具体包括以下步骤:
计算各原始恶意软件家族的每个样本与同一家族其他样本的距离之和,将得到的最小的距离和作为各原始恶意软件家族样本的紧致度;计算每个原始恶意软件家族的样本与同一家族其他样本的距离和,然后与得到的该原始恶意软件家族的紧致度进行差运算,得到各样本的偏离程度,将偏离程度小的样本作为代表样本。7.如权利要求1所述恶意软件家族分类模型生成方法,其特征在于,利用训练样本更新所述分类模型得到新的恶意软件家族分类模型具体包括:按如下优化损失函数L更新原始分类器,得到新的恶意软件家族分类模型,其中,L=(1
‑
ρ)L
技术研发人员:袁巍,高翠莹,刘明月,黄高准,李珩,
申请(专利权)人:华中科技大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。