一种基于PE病毒转图和CNN的病毒识别方法
2018-07-13吕臻,张宇
软件 2018年6期
吕 臻,张 宇
(1. 浙江省嘉兴市公安局科技信息通信处,浙江 嘉兴 314001;2. 贵州省遵义市公安局科技信息通信处,贵州 遵义 563000)
0 引言
随着矛与盾的升级,病毒检测和病毒变形的对抗越来越激烈。检测方式由最初的md5匹配,到简单的特征检测,再到具有启发能力的机器学习检测。然而病毒的变形方式也越来越多样化,从修改 md5到切片免杀再到多态变形[2]。
如何有效的识别病毒并把病毒家族化,对于未知样本的聚类,家族识别是我们需要面对的挑战。
1 病毒转图的基本思路
一个二进制病毒可以转化为一个灰度图[3],转换为灰度图之后,我们就把病毒识别的问题转换为了图片识别分类问题。深度学习中的CNN正好是解决图片分类问题的好方法[4]。传统的特征提取检测引擎,特征提取的代价很高,往往无法高效的检测新增样本和样本的变种[5]。传统的机器学习的方法,也同样存在特征提取的问题,特征的好坏往往是主导检测效果的主要原因[6]。
CNN神经网络却很好的解决了上述问题,特征自动提取,所以特征的通用性和鲁棒性更好。
在这个过程中,我们依然有一些困难。比如:训练样本种类样本数量差距较大、计算量较大,需要更多的训练样本。
2 相关工作
在之前的研究中很多人已经开始了二进制文件转图的工作[3],一般是通过整体文件转化为图片,然后根据家族进行分类。 我们这里的方法,是取了文件256个字节的入口点代码作为图片像素。依然可以有效的区分病毒家族。……
登录APP查看全文
