【技术实现步骤摘要】
一种获取代码分类模型的方法、装置、介质及电子设备
[0001]本申请涉及软件代码分类领域,具体而言本申请实施例涉及一种获取代码分类模型的方法、装置、介质及电子设备。
技术介绍
[0002]恶意代码的不断增长,给安全人员带来了极大困扰。但是很多新型的恶意代码都是已有恶意代码的变种,这些代码往往具有内在的关联性、相似性。具体表现为具有高度相似的结构,相同的函数调用顺序,或者来自于同一个团队编写等等。因此判断未知的恶意代码是否是某些已知恶意代码家族的变体,与已知的恶意代码家族是否具有同源性的关系,可以发现大部分的恶意代码,同时可以对与已知家族具有同源性关系的未知恶意代码有更好的了解和判断。
[0003]相同家族的恶意代码具有极大的相似性,不同家族的恶意代码之间具有差异性,这就为采用模型的方法对恶意软件家族进行同源性判断提供了可能。目前关于恶意软件家族同源性分析已有的识别算法大致可以分为以下三种。基于相似性匹配的恶意代码家族同源性判别方法。将恶意代码家族同源性判别问题转换成计算两个恶意代码之间相似性的问题,相似性越高,则两个恶意代码源自同一个家族的可能性就越大;基于聚类方法的恶意代码家族同源性判别方法。通常是利用聚类算法操作相似性值获取待测样本与已知样本之间的同源关系;基于机器学习、深度学习方法的恶意代码家族同源性判别方法。将恶意代码家族同源性判别问题转换成恶意代码家族分类模型构建的问题,可以采用机器学习、深度学习的方法对恶意代码家族进行分类识别。
[0004]基于相似性匹配和聚类算法的思路都需要计算特征之间 ...
【技术保护点】
【技术特征摘要】
1.一种获取代码分类模型的方法,其特征在于,所述方法包括:对样本集中各可执行代码样本进行预处理,得到与所述各可执行代码样本对应的灰度图像;根据所述灰度图像和卷积神经网络模型获取特征数据;根据所述特征数据对开集识别模型进行训练得到目标开集识别模型,其中,所述开集识别模型可识别未知类型的可执行代码。2.如权利要求1所述的方法,其特征在于,所述样本集包括训练集和测试集,其中,所述对样本集中各可执行代码样本进行预处理得到与所述各可执行代码样本对应的灰度图像,包括:将所述训练集和所述测试集中每个可执行代码样本转换成以汇编指令子序列为句子组成的文档,其中,所述汇编指令子序列用于表征多个汇编指令在相应可执行代码样本中的前后顺序关系;根据所述文档得到与所述每个可执行代码样本对应的所述灰度图像。3.如权利要求2所述的方法,其特征在于,所述将所述训练集和所述测试集中每个可执行代码样本转换成以汇编指令子序列为句子组成的文档,包括:对所述训练集和所述测试集中的每个可执行恶意代码样本进行反汇编处理,得到与所述每个可执行恶意代码样本对应的汇编文件;从每个汇编文件提取程序段中的汇编指令得到与所述每个汇编文件对应的汇编指令序列;利用滑动窗口方法从与所述训练集对应的所有汇编指令序列中获取所述汇编指令子序列。4.如权利要求2所述的方法,其特征在于,所述利用滑动窗口方法从与所述训练集对应的所有汇编指令序列中获取所述汇编指令子序列,包括:将滑动窗口在与所述训练集对应的所有汇编指令序列中滑动,得到n个初始汇编指令子序列c1,c2,c3,...,c
n
;对所述n个初始汇编指令子序列进行筛选得到所述汇编指令子序列。5.如权利要求4所述的方法,其特征在于,所述训练集共包括K个可执行恶意代码样本;其中,所述对所述n个初始汇编指令子序列进行筛选得到所述汇编指令子序列,包括:通过统计任意一个初始汇编指令子序列是否在所述K个可执行恶意代码样本的各样本中出现,来确定所述任一一个初始汇编指令子序列是否属于所述汇编指令子序列。6.如权利要求5所述的方法,其特征在于,所述通过统计任意一个初始汇编指令子序列是否在所述K个可执行恶意代码样本的各样本中出现,来确定所述任一一个初始汇编指令子序列是否属于所述汇编指令子序列,包括:若确认所述任意一个初始汇编指令子序列在所述K个可执行恶意代码样本中的总出现次数大于第一数值且小于第二数值,则将所述任意一个初始汇编指令子序列作为一个所述汇编指令子序列,其中,若所述任一一个初始汇编指令子序列在一个可执行恶意代码样本中出现次数大于或等于1则记录出现次数为1,所述第二数值大于所述第一数值。
7.如权利要求3所述的方法,其特征在于,所述滑动窗口方法采用n
‑
gram方法。8.如权利要求2所述的方法,其特征在于,所述根据所述文档得到与所述每个可执行恶意代码样本对应的所述灰度图像,包括:利用句嵌入模型将每个所述文档包括的所述汇编指令子序列转换成向量;根据所述向量得到与每个所述文档对应的所述灰度图像。9.如权利要求1所述的方法,其特征在于,所述根据所述灰度图像和卷积神经网络模型获取特征数据,包括:将与所述训练集中每个可执行恶意代码样本对应的灰度图像逐一输入到初始卷积神经网络,并对所述初始卷积神经网络进行训练;获取所述初始卷积神经网络提供的类别输出结果与对应可执行恶意代码样本的类别标签的对比结果,并依据所述对比结果调整所述初始卷积神经网络的参数,直到分类准确率达到预先设定阈值,结束训练得到所述卷积神经网络模型;提取所述卷积神经网络模型中全连接层的输出作为所述特征数据。10.如权利要求9所述的方法,其特征在于,...
【专利技术属性】
技术研发人员:刘亚倩,
申请(专利权)人:北京天融信科技有限公司北京天融信软件有限公司,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。