论文部分内容阅读
互联网技术蓬勃发展的同时,恶意代码借助软件漏洞、网址链接、电子邮件等方式攻击计算机,给广大Windows系统用户造成巨大的损失,因此针对Windows系统的恶意代码检测技术的研究十分必要。传统的恶意代码检测技术容易产生误报和漏报,无法满足当前要求;另外,为躲避杀毒软件的查杀,不法分子利用加壳、多态等技术生成恶意代码变种。为了有效解决上述问题,本文将卷积神经网络模型用于恶意代码检测当中;同时将One-Hot与Word2vec二者结合起来对特征向量化工作进行优化,从而在模型检测阶段提高对恶意代码的检测效果。本文主要研究内容如下:1.恶意代码特征预处理:当前主要是通过提取样本程序的字节码、PE结构、汇编码来进行后续的恶意代码检测。而本文此次主要对动态行为进行提取,采用搭建Cuckoo沙箱的方式模拟运行环境,从而得到恶意代码的分析日志文件。特征预处理,是要从冗杂的日志文件中提取出能表现恶意代码动态行为的特征信息。本文的做法是,编写Python脚本提取日志文件中的API函数信息,包括函数种类、函数名,再将提取到的信息转化成API调用序列。2.特征向量化模型选择:对文本信息中每个API函数进行唯一编号,从而将每个恶意代码API调用序列转化为词编号序列,最后将词编号序列转化为特征向量的形式。本文将词向量模型One-Hot与Word2vec二者结合使用,以期达到更好的特征向量化效果,最后通过实验与常见的One-Hot模型和Word2vec模型对比检测效果。3.基于卷积神经网络的恶意代码检测:卷积神经网络广泛被应用于图像识别、计算机视觉等领域,近些年来在自然语言处理方面也有所突破。本文借鉴自然语言处理方法,将深度学习中具有良好分类性能的卷积神经网络CNN应用于恶意代码检测领域,并在参数上进行调整以及优化器上进行优化。本文利用Virus Share上的数据集共设计四组实验。通过实验表明,卷积神经网络模型经过One-Hot和CBOW组合的特征向量化处理后,其准确度可高达96%;另外选择最佳优化算法,其损失值在0.06上下,模型收敛程度高,模型达到优化。综上所述,本文在特征向量化方法上进行改进,还在优化算法选择以及其他参数调整上对模型进行优化,所提出的卷积神经网络CNN(One-Hot+CBOW)检测模型具有更好的检测效果。