【技术实现步骤摘要】
一种混合特征恶意软件检测方法及系统
[0001]本专利技术属于软件安全
,涉及在大规模软件检测环境下的恶意软件检测技术,具体为恶意软件的软件图谱和特征向量等特征提取技术、基于软件图谱和特征向量混合特征的深度学习模型构建技术以及基于混合特征的恶意软件检测技术。
技术介绍
[0002]随着物联网、云计算、大数据等技术的进一步发展,各种应用软件给人们生活提供便捷服务的同时,也带来了诸多安全问题,如木马以及蠕虫病毒,诱导用户进行点击,从而感染用户的系统文件、注册列表,危害用户的信息安全,同时给软件的开发厂商以及国家的财产安全造成巨大的危害,严重影响互联网的健康发展。目前,在恶意软件检测领域还存在两方面的不足:一是随着恶意软件数量的增多,现有安全审查机制的准确性和可扩展性较差,同时恶意软件检测技术受到存储资源、计算资源和网络资源的限制,在海量恶意软件行为检测的场景下,已有的恶意软件检测机制的效率较差;其次,随着恶意软件开发技术的发展,很多恶意软件通过代码混淆技术来躲避检测,导致已有的恶意软件检测方法精度下降,鲁棒性变差。
技术实现思路
[0003]本专利技术所要解决的技术问题是:
[0004]在传统的恶意软件检测场景中,单一特征的静态检测机制方法存在特征很容易被混淆处理或隐藏,从而导致恶意软件成功逃避检测,造成恶意软件系统的误检测的问题。为了避免现有技术的不足之处,本专利技术提供一种基于混合特征的恶意软件检测技术,借助特征降维的方式来大幅度提高海量恶意软件检测场景下的检测系统准确率。
[0 ...
【技术保护点】
【技术特征摘要】
1.一种基于软件图谱和特征向量的混合特征恶意软件检测方法,其特征在于步骤如下:S1:利用反编译技术获取恶意软件的源代码,并且利用二进制代码将其转化为恶意软件图谱;S2:从反编译的字节码文件中,提取API调用特征向量,并将其作为恶意软件的执行特征;S3:将恶意软件图谱和特征向量作为恶意软件分类模块的输入,将两个输入的全连接层连接在一起,并在两个输入端的新的全连接层后面加入一个softmax激活函数用于得出最终的分类结果。2.根据权利要求1所述基于软件图谱和特征向量的混合特征恶意软件检测方法,其特征在于:S1具体步骤如下:S11:打开逆向工具IDA
‑
Pro,点击导入按钮,将恶意软件上传至工具内,然后选择反编译按钮,利用逆向工具IDA
‑
Pro反编译恶意软件样本,获取恶意软件的源码文件;S12:按照RGBA通道顺序对byte文件做出分割,并将字节文件按照对应通道的位置一次输入至恶意软件检测模型中,利用神经网络结点计算特征值;依照byte文件中的位置,逐位读取二进制代码,在读取字节文件时,每读取一位,就将累计数+1,每读取八位,计算其总值;将四个通道上的值分别记录在R、G、B、A四个通道上,此计算每个通道上独立的特征值,按照RGB图像像素值的算法,经过计算最后得到恶意软件图谱。3.根据权利要求1所述基于软件图谱和特征向量的混合特征恶意软件检测方法,其特征在于:S2具体步骤如下:S21:标记无关指令以及代码,对无关的序列进行裁剪,在源代码阶段直接删除这类语句,只保留最核心的恶意软件函数调用语句;对核心代码做出分类和标记,不同的调用函数采用不同的数字标记;将每一个API调用函数作为唯一的结点去标识不同的调用过程,边则表示API的调用顺序,生成恶意软件调用流程图;S22:将每个恶意软件样本由加权有向图来表示,有向图中的每个节点对应一个在恶意软件样本中观察到的唯一API调用函数;图的每个边对应于两个不同API调用函数之间的关系;利用两个节点之间的边缘权重表示恶意软件的调用频率,生成API调用矩阵;S23:对每个API调用函数用特定的整数表示,不同的API函数所对应的整数是不同的;然后对整个API数据集进行One
‑
hot编码,并将所有One
‑
hot编码的API向量作为输入数据训练Skip
‑
gram模型;最后将训练完成后的权重矩阵ω取出,用API序列的One
‑
hot向量乘以权重矩阵,以此来得到该序列的特征向量。4.根据权利要求3所述基于软件图谱和特征向量的混合特征恶意软件检测方法,其特征在于:S23具体步骤如下:S231:采用one
‑
hot编码,每个序列形成V*1的向量,对于整张词汇表而言就是V*V的矩阵;S232:根据索引映射,将其中的每一个对应的API序列映射到d维的向量空间,结果这样的映...
【专利技术属性】
技术研发人员:姚烨,朱怡安,郭巍,李联,钟冬,段俊花,
申请(专利权)人:西北工业大学,
类型:发明
国别省市:
还没有人留言评论。发表了对其他浏览者有用的留言会获得科技券。